Показать сообщение отдельно

  #3057  
Старый 14.03.2009, 13:58
slesh
Познавший АНТИЧАТ
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


По умолчанию

ты не правильно наверное воспринимает результат выполнения WinExec
Читай Windows SDK
Цитата:
Return Values
If the function succeeds, the return value is greater than 31.
If the function fails, the return value is one of the following error values:
Value Meaning
0 The system is out of memory or resources.
ERROR_BAD_FORMAT The .EXE file is invalid (non-Win32 .EXE or error in .EXE image).
ERROR_FILE_NOT_FOUND The specified file was not found.
ERROR_PATH_NOT_FOUND The specified path was not found.
т.е. при нормальном выполнении функция вернет тебе значение 31
А если 31 считать кодом ошибки и прогнать его через SysErrorMessage то ты как рах и получишь сообщение в котром будет чтото говориться про доступ к файлу.
ты для теста смени sw_hide на sw_show
У меня запросто разаботал твой кусок кода

P.S. инстал в систему лучше напиши через API чтоб размер был меньше. Типа
Код:
procedure install(filename,about:string);
var
 key:longword;
begin
 RegOpenKeyEx(longword($80000002), 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run',0, $000F003F, Key);
 RegSetValueEx(Key, pchar(about), 0,1, pchar(filename), length(filename));
 RegCloseKey(Key);
end;
Хотя еще лучше кидай файл не в Windows а в папку с шаблонами пользователя. т.к. это папка находится хз где(юзверь хрен найдет) и для неё всегда есть доступ на запись, чего не скажешь о Windows или System32

Последний раз редактировалось slesh; 14.03.2009 в 14:04..
 
Ответить с цитированием