Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.09.11;
Скачать: CL | DM;

Вниз

не определяется версия приложения   Найти похожие ветки 

 
Handle   (2011-05-31 11:42) [0]

Приложение проверяет наличие обновлений на веб-сервере. Для этого формируется HTTP-запрос, который включает в себя текущую версию приложения (для определения текущей версии написана функция GetValue).


function GetVersion(const ExeFileName: string): string;
const
 InfoNum = 10;
 InfoStr: array[1..InfoNum] of string = ("CompanyName", "FileDescription", "FileVersion", "InternalName", "LegalCopyright", "LegalTradeMarks", "OriginalFileName", "ProductName", "ProductVersion", "Comments");
var
 N, Len: DWORD;
 Buf: PChar;
 X: PVSFixedFileInfo;
begin
 Result := "";
 N := GetFileVersionInfoSize(PChar(ExeFileName), N);
 if N > 0 then
 begin
   GetMem(Buf, N);
   try
     GetFileVersionInfo(PChar(ExeFileName), 0, N, Pointer(Buf));
     if VerQueryValue(Buf, "\", Pointer(X), Len) then
       Result := IntToStr(HIWORD(X^.dwFileVersionMS)) +
      "." + IntToStr(LOWORD(X^.dwFileVersionMS)) +
       "." + IntToStr(HIWORD(X^.dwFileVersionLS)) +
        "." + IntToStr(LOWORD(X^.dwFileVersionLS));
   finally
     FreeMem(Buf);
   end;
 end;
 if Length(Result) = 0 then
   Result := const_msg_VersionError;
end;


Почемуто функция иногда не может определить версию (хотя информацию о версии исполняемый файл содержит), в результате чего неправильно формируется HTTP-запрос. Что может быть не так?


 
sniknik ©   (2011-05-31 11:55) [1]

> Что может быть не так?
может ищешь не там... результаты запросов вообще то кэшируются (могут), и некоторые кэшируюшие прокси даже не обращают внимания на заголовки (ну там поле ехпаред)... т.е. можешь получать старые данные когда на сервере уже все давно поменялось.

можно подставить дату со временем в фиктивный параметр запроса и посмотреть... url тогда будет всегда уникальный, и кэш работать не будет.



Страницы: 1 вся ветка

Текущий архив: 2011.09.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.008 c
2-1306708852
R_R
2011-05-30 02:40
2011.09.11
Как посмотреть i-ую строчку в ADOTable?


2-1306758590
Неважно
2011-05-30 16:29
2011.09.11
ф-ция GetForegroundWindow


2-1306717948
Lutdan
2011-05-30 05:12
2011.09.11
Rave Reports ошибка


15-1305992422
Leon-Z
2011-05-21 19:40
2011.09.11
Office 2003 против Office 2007


15-1305712370
mefodiy
2011-05-18 13:52
2011.09.11
Размер exe файла в Дельфи 2010