У меня возникла проблема с запуском программы при запуске в 32-разрядной и 8-разрядной версии Windows 8, но она отлично работает на 8 и 8.1 64-битных и другой ОС.Запуск программы при запуске с Windows 8 и 8.1
Я устанавливаю последнюю версию нашего программного обеспечения и устанавливаю новый ключ реестра HKLM \ Software \ Microsoft \ Windows \ CurrentVersion \ Run, который содержит путь к исполняемому файлу ("C: \ Program Files ..... .Exe").
Программа не запускается или отображается в диспетчере задач при попытке запуска/запуска. Другие программы в папке запуска запускаются и запускаются, плюс я тестировал, добавляя notepad.exe, и он был открыт нормально.
Если я запускаю путь из командной строки, он открывается и начинается нормально. Я могу создать пакетный файл, и командный файл будет запущен при запуске, но он все равно не будет запускать EXE из этого командного файла. Если я создам оболочку EXE, которая начнет процесс с этого пути, он запустит EXE, а затем также запустит EXE в пути.
У кого-нибудь есть идеи по поводу того, почему он не будет запускать EXE с пути?
function MethodName(hMSI)
NUMBER nOptions, nType, nSize;
STRING strPath;
begin
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
nOptions = REGDB_OPTIONS;
nType = REGDB_STRING;
REGDB_OPTIONS = REGDB_OPTIONS | REGDB_OPTION_WOW64_64KEY;
if (RegDBGetKeyValueEx("SOFTWARE\\Temp", "PathLocation", nType, strPath, nSize) < 0) then
RegDBGetKeyValueEx("SOFTWARE\\Wow6432Node\\Temp", "PathLocation", nType, strPath, nSize);
endif;
if (SYSINFO.bIsWow64) then
RegDBSetKeyValueEx("SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Run", "RunKey", nType, strPath, nSize);
else
RegDBSetKeyValueEx("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", "RunKey", nType, strPath, nSize);
endif;
REGDB_OPTIONS = nOptions;
end;
ОАК влияет на это? Вам нужно запустить его как администратор или сделать что-то вроде вуду? – Jason
UAC не влияет на это, он не начинается с включения или выключения. – JTMoney1996
Вы изучали модификацию [HKCU \ Microsoft \ Windows \ CurrentVersion \ Run] (http://www.akadia.com/services/windows_registry.html) вместо HKLM? – Jason