Люди, подскажите, пожалуйста, как можно написать программу на c++, bat или java, которая будет сначала определять разрядность системы, а потом уже запускать приложение?
К примеру тот же самый инсталлятор фреймворка
Помогите, пожалуйста, буду очень благодарен
Любой язык - [решено] Программа для запуска определённого приложения, после определения разрядности ОС
-
nikolas2418
Re: Любой язык - [решено] Программа для запуска определённого приложения, после определения разрядности ОС
c++ detect|determine x64 system - Поиск в Google
. «cmd/bat» или «java» подставите в запрос сами.Вы скажите — Вам для каких целей сие потребно?
-
Iska
Re: Любой язык - [решено] Программа для запуска определённого приложения, после определения разрядности ОС
Iska, Вам же написали:
Цитата nikolas2418:
К примеру тот же самый инсталлятор фреймворка
,
что в переводе транслятора буквально значит: определение версии с целью установки соответсвующих дистрибутивов. И к гуглу, к слову, бегать вовсе не обязательно, достаточно иметь в арсенале WinSDK, а там в заголовочных файлах ли, через WindDbg ли, легко отыскивается апишная функция IsWow64Process. В итоге проверка является ли система 64-битной в Си будет выглядеть так:
Скрытый текст
[spoiler]Код: [/spoiler]
Если через командный сценарий, то вариантов много. wmic, systeminfo, проверка бита рантайм библиотеки, извлечение данных из файла префетча и дыр и пыр, - все зависит от того, насколько глубоко человек знаком с устройством системы.
Цитата nikolas2418:
К примеру тот же самый инсталлятор фреймворка
,
что в переводе транслятора буквально значит: определение версии с целью установки соответсвующих дистрибутивов. И к гуглу, к слову, бегать вовсе не обязательно, достаточно иметь в арсенале WinSDK, а там в заголовочных файлах ли, через WindDbg ли, легко отыскивается апишная функция IsWow64Process. В итоге проверка является ли система 64-битной в Си будет выглядеть так:
Скрытый текст
[spoiler]Код: [/spoiler]
Код: Выделить всё
#include
#include
BOOL Is64BitWindows() {
#if defined(_WIN64)
return TRUE;
#elif defined(_WIN32)
BOOL bit = FALSE;
return IsWow64Process(GetCurrentProcess(), &bit) && bit;
#else
return FALSE;
#endif
}
int main(void) {
//sizeof(void *) == 8 ? "64-bit" : "32-bit";
printf("%s\n", Is64BitWindows() ? "64-bit" : "32-bit");
return 0;
}Если через командный сценарий, то вариантов много. wmic, systeminfo, проверка бита рантайм библиотеки, извлечение данных из файла префетча и дыр и пыр, - все зависит от того, насколько глубоко человек знаком с устройством системы.
-
Iska
Re: Любой язык - [решено] Программа для запуска определённого приложения, после определения разрядности ОС
Цитата greg zakharov:
Iska, Вам же написали:
greg zakharov, я это называю «рация на бронепоезде».
Iska, Вам же написали:
Любой язык - [решено] Программа для запуска определённого приложения, после определения разрядности ОС
greg zakharov, я это называю «рация на бронепоезде».
-
nikolas2418