Подскажите пожалуйста как можно добавить программу в автозапуск на fasm? То есть чтобы программа запускалась вместе с Windows? я пытался сделать так: Код (Text): ... Mname db 'архив.exe',0 Prd db 'Software\Microsoft\Windows\CurrentVersion\Run',0 nBufferLength dw ? lpBuffer db ? hkey dd ? Ntemp dd ? ... invoke GetCurrentDirectory,\ ;получаем путь до себя nBufferLength,\ lpBuffer invoke lstrcat,lpBuffer,Mname ;прибавляем к пути своё собственное имя invoke RegCreateKeyEx,HKEY_LOCAL_MACHINE,Prd,0,0,0,KEY_WRITE,0,hkey,Ntemp ;открываем ключ реестра invoke RegSetValueEx,hkey,lpBuffer,0,REG_SZ,sizkey ;придаём ему значение ввиде пути к главному файлу invoke RegCloseKey,hkey ;закрываем ключ ... компилится но почему-то не работает...
Заменил и всёравно не работает. А кто-нибудь знает, есть ли какой-нибудь другой способ, без использования реестра?
Код (Text): LONG WINAPI RegSetValueEx( __in HKEY hKey, __in_opt LPCTSTR lpValueName, __reserved DWORD Reserved, __in DWORD dwType, __in const BYTE *lpData, __in DWORD cbData ); 6 параметров.
Вот как удалось решить проблему: Код (Text): format pe gui 4.0 entry start include 'win32a.inc' section '.data' data readable AutoKey db 'Software\Microsoft\Windows\CurrentVersion\Run',0 ValueName db 'Program',0 hkey dd ? szFile db 0 start: invoke GetModuleFileName , 0 ,szFile , 256 invoke RegCreateKeyEx, HKEY_CURRENT_USER,AutoKey,NULL,NULL,NULL,KEY_ALL_ACCESS,NULL,hkey,NULL invoke lstrlen,szFile invoke RegSetValueEx,[hkey],ValueName,NULL,REG_SZ,szFile,eax invoke RegCloseKey,[hkey] invoke ExitProcess,0 section '.idata' import readable library kernel32,'kernel32.dll',\ advapi32,'advapi32.dll' include 'api/kernel32.inc' include 'api/advapi32.inc'