| Разработчик | Nishimura Masataka |
| ОС | |
| Текущая версия | |
| Лицензия | Freeware |
| Сайт | |
| | |
Содержание |
EzDownload - бесплатная программа для загрузки файлов по HTTP с докачкой. Есть возможность приостановки, продолжения, паузы и остановки процесса скачивания.
Прежде, чем начинать делать что-то по инструкции, дочитать до конца. А соображающие могут себе позволить пройти мимо и заниматься своими делами =)
При запуске некоторых программ, предназначенных для версий WindowsCE ниже 3.0, наблюдается странный эффект - верхний бар с кнопкой пуск перемещается жить в нижнюю строку, и перемещать форму приложения можно только по горизонтали. Как вариант - программа предназначена для более высокой версии ОС и вылетает мессагебокс следующего содержания "Cannot find '<имя_приложения>' (or one of its components). Make sure the path and filename are correct and all the required libraries are available.". Вероятно, следует учесть, что версия ОС может быть ограничена не спроста (но попытаться понизить можно) ;)
Информация о том, что это лечится путём смены значения минимальной версии системы для запуска этой программы (которое находится в заголовке приложения), а также патч на дэлфи были выданы добрым дядькой АЕ. За инструкцию как это сделать непосредственно на покете (либо на компьютере с минимальным набором инструментов) спасибо мне =)
Инструкция для покета. Посему покетные бесплатные инструменты: PEInfo 0.933 (© SK) и SKHexEd 1.0.50 (© SK Software). Последний бесплатен для русскоязычных пользователей и не обязателен для процедуры. Больной: [b]EzDownloader[/b] 1.15.
При перестройке бара вниз для вызова была доступна кнопка наэкранной клавиатуры. После исправления наэкранка будет доступна в случае несвёрнутого какого-либо другого приложения (с доступным меню), либо по хард кнопке. Кнопка сворачивания перестаёт отображаться до первого нажатия на неё вслепую (чуть левее кнопки закрытия). И общий эффект - любой пациент после подобной операции будет отказываться запускаться на PPC2k (т.к. минимальную версию поднимаем до PPC2k2).
Program FixWinCEVersion;
{$APPTYPE Console}
Uses Windows;
Procedure Help;
begin
Writeln('Executable file WinCE version fix');
Writeln('Command Line format:');
Writeln('FixWinCEVersion <ExeFileNameToFix>');
Halt(1);
end;
Procedure Error( Message: String );
begin
Writeln;
Writeln('Error: ',Message);
Writeln('Program aborted.');
Halt(2);
end;
Var
F : File;
PEHeader : TImageNtHeaders;
DOSHeader : TImageDosHeader;
nr : LongInt;
begin
If ParamCount<>1 then Help;
Write('Patching WinCE version of "'+ParamStr(1)+'": ');
{$I-}
AssignFile(F, ParamStr(1)); ReSet(F,1);
If IOResult<>0 then Error('Error opening file "'+ParamStr(1)+'"');
BlockRead( F, DOSHeader, sizeof(DOSHeader), nr );
If nr<>sizeof(DOSHeader) then Error('Error loading DOS header');
Seek(F, DOSHeader._lfanew );
BlockRead( F, PEHeader, sizeof(PEHeader), nr );
If nr<>sizeof(PEHeader) then Error('Error loading PE header');
PEHeader.OptionalHeader.MajorSubsystemVersion := 3;
PEHeader.OptionalHeader.MinorSubsystemVersion := 0;
Seek(F, DOSHeader._lfanew );
BlockWrite( F, PEHeader, sizeof(PEHeader), nr );
If nr<>sizeof(PEHeader) then Error('Error saving PE header');
Writeln('Ok.');
CloseFile(F);
end.