Текущий архив: 2002.10.14;
Скачать: CL | DM;
Вниз
У меня ZipMagic стоит Найти похожие ветки
← →
AL2002 (2002-09-18 13:41) [0]Вещь хорошая, но когда запускаю здоровую прогу из архива, комп подвисает. Иногда надолго.
Мне интересно, можно ZipMagicу задать низкий приоритет?
Чтобы он комп не тормозил. В настройках ЗМ такого нету. А программно можно?
← →
Юрий Зотов (2002-09-18 15:21) [1]1. ToolHelp32 + OpenProcess + SetPriorityClass.
2. Или написать свою запускалку - CreateProcess + SetPriorityClass. Это точно работает, использовалось не раз.
3. Под NT приоритет регулируется просто мышкой. А сжатые папки можно делать средствами самой системы.
4. ZipMagic - вещь не безглючная. Например, приводит к глюкам при работе с ярлыками. Раньше я использовал ZipFolder, теперь мне вполне хватает и Windows Commander.
5. В XP встроенная поддержка ZIP"ов.
← →
Polevi (2002-09-18 16:47) [2]мое личное мнение - лучше не использовать ето
← →
Pumpkin (2002-09-19 13:17) [3]Выкинь его на хрен. Он мне несколько зипов порушил.
← →
AL2002 (2002-09-19 15:44) [4]>2. Или написать свою запускалку - CreateProcess +
>SetPriorityClass. Это точно работает, использовалось не раз.
А пример какой-нить можно где-то взять?
← →
Smiths (2002-09-19 17:10) [5]
> AL2002 © (19.09.02 15:44)
> >2. Или написать свою запускалку - CreateProcess +
> >SetPriorityClass. Это точно работает, использовалось не
> раз.
> А пример какой-нить можно где-то взять?
А у самого мозгов катастрофически не хватает что ли???
← →
AL2002 (2002-09-19 17:37) [6]>А у самого мозгов катастрофически не хватает что ли???
Если бы хватало, не просил бы.
← →
Smiths (2002-09-19 17:58) [7]Ясно. Вопросов больше не имею.
← →
evgeg (2002-09-19 18:04) [8]Используй WinRar. Знает все форматы и сжимает в своем формате лучше, чем любой другой архиватор. Не глючит и не вешает систему. Может работать в фоновом режиме. Удобно вызывается из контексного меню.
← →
Wolf226 (2002-09-19 18:15) [9]Zip folder рушит архивы когда места на диске не остается, а ты пытаешься туда что-то пихнуть.
← →
AL2002 (2002-09-19 18:26) [10]>Smiths (19.09.02 17:58)
>Ясно. Вопросов больше не имею.
Ну если твои тебе на череп давят, то чего пример не дашь?
← →
Smiths (2002-09-19 18:32) [11]Хочешь на слабО взять? :)
← →
AL2002 (2002-09-19 18:38) [12]>Smiths (19.09.02 18:32)
>Хочешь на слабО взять? :)
Так ты пример дашь или фак на лицо?
← →
CrazyAngel (2002-09-19 18:40) [13]смотри help по CreateProcess
И еще в FAQ там что-то было , подробнее не могу- дельфи под рукой нет а так не помню :)
← →
Smiths (2002-09-19 18:48) [14]
> AL2002 © (19.09.02 18:38)
> >Smiths (19.09.02 18:32)
> >Хочешь на слабО взять? :)
> Так ты пример дашь или фак на лицо?
Задал на поисковике строку "Delphi CreateProcess SetPriorityClass". Получил МОРЕ ссылок. Для всего ЭТОГО нужно много мозгов???
← →
AL2002 (2002-09-19 18:52) [15]>CrazyAngel © (19.09.02 18:40)
По Ctrl+Alt+Del он есть Zm32.
По хелпу:
BOOL CreateProcess(
LPCTSTR lpApplicationName, // pointer to name of executable module
LPTSTR , // pointer to command line string
LPSECURITY_ATTRIBUTES lpProcessAttributes, // pointer to process security attributes
LPSECURITY_ATTRIBUTES lpThreadAttributes, // pointer to thread security attributes
BOOL bInheritHandles, // handle inheritance flag
DWORD dwCreationFlags, // creation flags
LPVOID lpEnvironment, // pointer to new environment block
LPCTSTR lpCurrentDirectory, // pointer to current directory name
LPSTARTUPINFO lpStartupInfo, // pointer to STARTUPINFO
LPPROCESS_INFORMATION lpProcessInformation // pointer to PROCESS_INFORMATION
);
Долго ж я раздуплять это буду!..
Пример мне! Пример нужен.
lpApplicationName lpCommandLine — это всё, что я понимаю.
А остальные флаги?
← →
AL2002 (2002-09-19 19:15) [16]>Smiths (19.09.02 18:48)
Тоже вариант.
CreateProcess(NULL, "program.exe", NULL, NULL, FALSE, NORMAL_PRIORITY_CLASS, NULL, NULL, &si, &pi) ?
Смит, ты жлоб.
От тебя, наверное, снега зимой не допросишься.
← →
AL2002 (2002-09-19 20:49) [17]Var
SI: TStartupInfo;
PI: TProcessInformation;
begin
CreateProcess(NiL, PChar(Edit1.Text), Nil, Nil, FALSE, IDLE_PRIORITY_CLASS, Nil, Nil, si, pi);
end;
И нифига не происходит.
← →
Smiths (2002-09-19 20:55) [18]Ет ты сам с собой разговариваешь? :)
← →
AL2002 (2002-09-19 21:15) [19]>Smiths (19.09.02 20:55)
>Ет ты сам с собой разговариваешь? :)
Смит, ты не просто жлоб, ты подлый, к тому же.
Приятно тебе наблюдать, как человек мучается?
Ты чего, гад, не сказал про si? Ей же надо свойства определить.
И всё равно Zm32 (зип мэджик) не запускается.
Приложения (уф!) запускаются, а ЗМ32 — нет.
Может, потому что консольное?
← →
Юрий Зотов (2002-09-20 01:19) [20]var
SI: TStartupInfo;
PI: TProcessInformation;
begin
ZeroMemory(@SI, SizeOf(SI));
SI.cb := SizeOf(SI);
if Win32Check(CreateProcess(nil, PChar(Edit1.Text), nil, nil, False, 0, nil, nil, SI, PI)) then
begin
CloseHandle(PI.hThread);
CloseHandle(PI.hProcess);
end
end;
1. В Edit1 программу указывать вместе с путем к ней.
2. Win32Check можно убрать. Нужно только для диагностики ошибок.
3. Запускаться должно, но может быть невидимо.
← →
AL2002 (2002-09-20 09:58) [21]>Юрий Зотов © (20.09.02 01:19)
Запускается. Только что NORMAL_PRIORITY_CLASS, что IDLE_PRIORITY_CLASS — не действует.
Всё равно идут подвисоны. 8(
Наверное, проги сами задают себе приоритет. 8(
И ещё. Наверное, ЗМ32 — это только прога для управления (включения/выключения фолдеров). Остальное в дллке/ах, наверное.
Потому что я когда даже убиваю процесс, зиповые папки всё равно есть. И работают.
← →
Юрий Зотов (2002-09-20 10:14) [22]> Всё равно идут подвисоны.
Может быть связано с глюками программы.
> Наверное, проги сами задают себе приоритет.
Могут. Поэтому его надо ставить вызовом SetPriorityClass ПОСЛЕ CreateProcess, а не в самом CreateProcess.
> Остальное в дллке/ах, наверное.
Скорее всего. Похоже, ZipMagic - это Com-сервер.
← →
AL2002 (2002-09-20 10:21) [23]>SetPriorityClass ПОСЛЕ CreateProcess
Это по хендлу. А как узнать хендл?
Я нарыл только SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS)
GetCurrentProcess — это ж не то.
← →
Юрий Зотов (2002-09-20 10:40) [24]А на что у Вас TProcessInformation? Хэндл уже в нем, готовый.
← →
AL2002 (2002-09-20 10:50) [25]SetPriorityClass(PI, IDLE_PRIORITY_CLASS)?
← →
Юрий Зотов (2002-09-20 13:01) [26]RTFM.
F1.
PI.hProcess.
← →
Гуляющий просто так (2002-09-20 13:55) [27]попал ты с этим Zip Magic`ом...
я как-то себе его поставил, удалить по нормальному не удалось, пришлось систему переставлять :(((
2 Юрий Зотов
да, похоже COM-сервер...
← →
AL2002 (2002-09-20 13:58) [28]>Гуляющий просто так (20.09.02 13:55)
Я его просто переписал с другого компа. Без инсталляции.
Даже записей в реестре нет.
Достаточно просто не запускать.
>Юрий Зотов © (20.09.02 13:01)
>RTFM.
>F1.
>PI.hProcess.
Что за RTFM?
Страницы: 1 вся ветка
Текущий архив: 2002.10.14;
Скачать: CL | DM;
Память: 0.5 MB
Время: 0.007 c