Подскажите, как из скрипта определить битность системы (32 бит/64 бит)? Т.е. не битность самого АкелПад, а Виндовс?
Posted: Mon Mar 05, 2012 4:53 pm
by FeyFre
DV
Как вариант, взять переменную окружения. То ли processor_architecture то ли ещё что-то в этом роде. Только вот я не скажу что там можно увидеть, ибо 64 не имею.
Опять обновил RunMe.js, однако.
Добавлена поддержка NSIS (итого теперь поддерживаются: js, c, cpp, awk, nsi), а также обработка исключения WshShell.Run() при невозможности выполнить команду.
Вопрос вдогонку: возможно ли для AkelPad.Exec() подобным образом узнать, что команда не была выполнена - например, из-за отсутствия указанного файла? При этом, в случае успешного запуска, не хочется, чтобы AkelPad.Exec() блокировал весь скрипт, дожидаясь окончания работы запущенной команды.
Posted: Tue Mar 06, 2012 3:02 pm
by FeyFre
DV, без доработки AkelPad.Exec() точно не сделать. Придется самому oSys.Call("kernel32::CreateProcess"+_TCHAR,...) юзать.
Posted: Tue Mar 06, 2012 3:48 pm
by Instructor
DV wrote:Подскажите, как из скрипта определить битность системы (32 бит/64 бит)? Т.е. не битность самого АкелПад, а Виндовс?
WScript.Echo(IsWindows64());
function IsWindows64()
{
var oSys=AkelPad.SystemFunction();
var lpBool;
var bResult=0;
if (_X64) return 1;
if (!AkelPad.IsOldWindows())
{
if (lpBool=AkelPad.MemAlloc(4 /*sizeof(BOOL)*/))
{
if (oSys.Call("kernel32::IsWow64Process", oSys.Call("kernel32::GetCurrentProcess"), lpBool))
bResult=AkelPad.MemRead(lpBool, 3 /*DT_DWORD*/);
AkelPad.MemFree(lpBool);
}
}
return bResult;
}
Added:
- menu (F1),
- copy to clipboard:
- files list in directory (Ctrl+C),
- streams list in file (Alt+C),
- run command line,
- show/hide Quick view (Ctrl+Q),
- sorting files/streams list by clicking on the header.
Posted: Wed Mar 14, 2012 6:02 am
by Infocatcher
Идея скрипта.
Вызываем скрипт, кликаем по вкладке какого-нибудь другого документа, и скрипт выравнивает эти два MDI-окна горизонтально или вертикально.
Это реализуемо?