Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2009.04.19;
Скачать: [xml.tar.bz2];

Вниз

Почему такой код в Висте не работает а в XP работает?   Найти похожие ветки 

 
vopros   (2008-04-15 14:36) [0]

FileName := "expreg.reg"; //заполнить именем файла (расширение указывать)

 Key := "HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles\";
if
  ShellExecute(Handle, "open", "regedit.exe",
 PChar(Format("/e "%s" "%s"", [FileName, Key])),
 "", SW_SHOWDEFAULT)  ;<= 32
 then //если ошибка, то возвращаемый код <=32
RaiseLastWin32Error();
 Application.terminate;
end;


Или подскажите плиз, как егов Висте сделать работоспособным?


 
tesseract ©   (2008-04-15 14:53) [1]


> Или подскажите плиз, как егов Висте сделать работоспособным?


Виста вообще по другому работает.


 
vopros   (2008-04-15 15:36) [2]

Как определить в висте откуда программа запустилась.
То бишь файл создаеться...но создаеться в учетке пользователя из под которой она запустилась..


 
lapslap   (2008-04-15 15:36) [3]

regedit под вистой требует для запуска админские привилегии, и при включеном уаке, если ваше приложение не под админом, код невыполнится :)

выход: добавьте хороший манифест.


 
Anatoly Podgoretsky ©   (2008-04-15 15:45) [4]

> vopros  (15.04.2008 14:36:00)  [0]

Как по твоему для чего у тебя тут RaiseLastWin32Error стоит, для красоты?
Будь добр озвучить ошибку.


 
tesseract ©   (2008-04-15 16:34) [5]


> Как определить в висте откуда программа запустилась.


Твоя ? Так же как и обычно - Apllication.Exename или ParamStr(0).


 
В.В. Дельфин   (2008-04-18 07:59) [6]

To lapslap

>Что такое манифест?
>Что такое манифест, и какую роль он играет в выборе версии 6.0 >библиотеки comctl32.dll для моего приложения? Манифест - XML документ >который должен быть подлинкован в ресурсы вашего приложения. Обычно >ресурсы используются для хранения таких вещей как картинки, иконки и >курсоры мыши.

Как манифест повлияет на выполнение Regedit? Или я пардон ошибаюсь?


 
Плохиш ©   (2008-04-18 12:33) [7]


> if
>   ShellExecute(Handle, "open", "regedit.exe",
>  PChar(Format("/e "%s" "%s"", [FileName, Key])),
>  "", SW_SHOWDEFAULT)  ;<= 32
>  then //если ошибка, то возвращаемый код <=32

А на каком языке ви пытаетесь кодить?


 
Игорь Шевченко ©   (2008-04-18 16:30) [8]


> RaiseLastWin32Error();
>  Application.terminate;


какая-то из двух строчек явно лишняя


 
zensan ©   (2008-04-19 23:43) [9]

Virube User Access Control i vse dela... v User Accounts..


 
Eraser ©   (2008-04-20 01:11) [10]

вообще, если у регедита манифест, терубющий админские привелегии, то данный код (если в нем нет глупых ошибок) должен вызвать диалог поднятия привелегий.
вообще тут все подробно
http://www.codeproject.com/KB/vista-security/UAC__The_Definitive_Guide.aspx

но повторюсь - должно работать просто через ShellExecute.



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2009.04.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.048 c
15-1235165401
Юрий
2009-02-21 00:30
2009.04.19
С днем рождения ! 21 февраля 2009 суббота


2-1235812626
Strate
2009-02-28 12:17
2009.04.19
Интересное поведение компонента TTrayIcon (D2009)


3-1219225831
AlexeyK
2008-08-20 13:50
2009.04.19
При сохранении созданой записи она исчезает


1-1211299976
nicestep
2008-05-20 20:12
2009.04.19
Параллельный порт. Асинхронная запись/чтение


2-1236229299
Abcdef123
2009-03-05 08:01
2009.04.19
На что заменить TStringGrid?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский