Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Сrack

Ветеран


Сообщения: 1255
Благодарности: 436

Профиль | Цитировать


Цитата Maai:
Есть третий вариант. Версия установленной программы новее. »
Если новее, то должна быть зеленая галочка, либо это второй вариант.
Если версия правильная, такого вида "*.*.*.*" или "*,*,*,*" где *-цифра, то старее или новее определяется правильно.
Принцип такой:
Сравниваются сначала MajorVersion, если они одинаковые, то сравниваются MinorVersion, если и они одинаковые, сравниваются Release, если и он одинаковый, сравнивается Build.
То есть сравниваются все цифры разделенные точкой (или запятой) с лева направо, не надо забывать про точки, они имеют большое значение. Версия 5.2 старее чем 5.102, конечно если вы не забыли поставить точку, или не отбросили два нуля.

Старее < Новее
5.0 < 5.1
5.10 < 5.102
5.2 < 5.102
0.8 < 0.88
1.666 < 2.0


Цитата Maai:
При указании вместо GUID пути к файлу все работает и правильно отображается (ясно, что для одной разрядности). »
В большинстве случаев программы устанавливаются в Program Files, в большинстве случаев программы 32-битные, проверять можно и на x86 и на x64 по пути
%ProgramFiles%\XnView\xnview.exe
Если на х64 ОС ставится х64 приложение, а на х86 ставится х86, то проверять можно по пути
%SystemDrive%\Program Files\CCleaner\CCleaner.exe

Цитата Maai:
Но тут при настройке очень не хватает кнопки браузера для простого указания пути к этому файлу, если он есть. »
Все таки основной, и более правильный метод проверки через GUID. Проверка по наличию файла сделана для тех редких случаев, когда приложение не прописывается в реестре, в моем случае это портативные приложения, DirectX и т.п.
Устанавливаются (точнее копируются) они не в раздвоенную "Program Files" а определенное место, тут проблема с разрядностью сразу пропадает.
Исходя из этого, кнопки нет.

Последний раз редактировалось Сrack, 01-12-2013 в 22:53.


Отправлено: 22:34, 01-12-2013 | #396