Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.05.2012, 09:14   #1
googl
Форумчанин
 
Регистрация: 05.06.2010
Сообщений: 154
По умолчанию Проверка установленных версий программы

Доброго времени суток. Я уже раньше задавал подобный вопрос, но исчерпывающий ответ так и не выяснил. Чуть изменилась суть: есть программа ANSYS. Путь к папке с этой программой можно получить из переменной окружений вида %ANSYS120_DIR%. Что делаю я, чтобы найти актуальную установленную версию программы:

беру цикл от 100 до 200
в цикле в версию подставляю version:='ANSYS'+inntostr(i)+'_DIR'
и проверяю наличие исполняющего фала. Если файл наден, в переменную versionactual:=version;
Таким образом я получаю переменную окружения для самой последней версии.
Правильный ли такой подход?
Спасибо
googl вне форума Ответить с цитированием
Старый 15.05.2012, 09:25   #2
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

можно контрольную сумму (exe) считать и хранить где то
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 15.05.2012, 09:29   #3
googl
Форумчанин
 
Регистрация: 05.06.2010
Сообщений: 154
По умолчанию

Цитата:
Сообщение от BARNEY Посмотреть сообщение
можно контрольную сумму (exe) считать и хранить где то
я извиняюсь, для чего?
googl вне форума Ответить с цитированием
Старый 15.05.2012, 09:40   #4
Valio
Сливочное масло
Участник клуба
 
Аватар для Valio
 
Регистрация: 01.01.2011
Сообщений: 1,149
По умолчанию

Ещё как вариант это осуществить поиск exe файла по всем дискам. И дальше обрабатывать результат.

Где гарантия, что %ANSYS120_DIR% будет создана?
Сливочное масло Valio - компиляция как по маслу
Valio вне форума Ответить с цитированием
Старый 15.05.2012, 09:43   #5
googl
Форумчанин
 
Регистрация: 05.06.2010
Сообщений: 154
По умолчанию

Цитата:
Сообщение от Valio Посмотреть сообщение
Ещё как вариант это осуществить поиск exe файла по всем дискам. И дальше обрабатывать результат.

Где гарантия, что %ANSYS120_DIR% будет создана?

ну а толку что я его найду? я ни суммы не проверю, ни работоспособность. а переменные окружения будут созданы при правильной установке. установка неправильная? значит программа неработоспособная. моя программа не будет с ней работать.
googl вне форума Ответить с цитированием
Старый 15.05.2012, 09:53   #6
Valio
Сливочное масло
Участник клуба
 
Аватар для Valio
 
Регистрация: 01.01.2011
Сообщений: 1,149
По умолчанию

Цитата:
Сообщение от googl Посмотреть сообщение
ну а толку что я его найду? я ни суммы не проверю, ни работоспособность. а переменные окружения будут созданы при правильной установке. установка неправильная? значит программа неработоспособная. моя программа не будет с ней работать.
Хочешь сказать, что наличие переменной окружения даёт 100% гарантию того, что программа работоспособна?

Почему сумму нельзя проверить?
Сливочное масло Valio - компиляция как по маслу
Valio вне форума Ответить с цитированием
Старый 15.05.2012, 10:14   #7
googl
Форумчанин
 
Регистрация: 05.06.2010
Сообщений: 154
По умолчанию

Цитата:
Сообщение от Valio Посмотреть сообщение
Хочешь сказать, что наличие переменной окружения даёт 100% гарантию того, что программа работоспособна?

Почему сумму нельзя проверить?
я же не знаю какая версия будет установлена. я вот и ищу. не факт же, что для всех версий сумма одинаковая будет. я же в цикле перебираю возможные варианты. и потом, я буду в ANSYS отправлять расчет.
googl вне форума Ответить с цитированием
Старый 15.05.2012, 10:18   #8
3D Hunter
Сумрачная тень
Форумчанин
 
Аватар для 3D Hunter
 
Регистрация: 05.03.2009
Сообщений: 689
По умолчанию

Записывайте номер версии в реестр и считывайте оттуда. А еще, кажется, есть юнит ADAVersionInfo.pas, с помощью которого можно посмотреть версию самого себя экзешника.
"ковыряю изнутри" (с)
3D Hunter вне форума Ответить с цитированием
Старый 15.05.2012, 10:24   #9
googl
Форумчанин
 
Регистрация: 05.06.2010
Сообщений: 154
По умолчанию

Цитата:
Сообщение от 3D Hunter Посмотреть сообщение
Записывайте номер версии в реестр и считывайте оттуда. А еще, кажется, есть юнит ADAVersionInfo.pas, с помощью которого можно посмотреть версию самого себя экзешника.
так. мы теряем суть задачи: мне нужно работать с ANSYS из делфи. для этого мне нужно сначала определить установлен ли он. для 10 версии и ниже в реестре есть ветка, где и путь можно глянуть и версию. для версий старше по-другому. решил брать путь и одновременно искать установлена ли программа путем использования переменных окружения. суть задачи найти последнюю установленную версию и вытащить путь к exe. Путь к exe уникальный. мне нужен лишь путь к установленной программе. еще раз:
суть не определить версию или что-то еще, а найти последнюю версию установленной программы (если их, допустим 2,3 и т.д. установлено) и вытащить путь к папке


я привел свое решение этой задачи и спрашиваю: правильный ли такой подход?
googl вне форума Ответить с цитированием
Старый 15.05.2012, 10:25   #10
Valio
Сливочное масло
Участник клуба
 
Аватар для Valio
 
Регистрация: 01.01.2011
Сообщений: 1,149
По умолчанию

Что за бред, причём тут суммы?

Как ты можешь не знать если ты при поиске получаешь все exe файлы этой программы? Какойбы версии она не была. И потом уже имея exe узнать и сумму и версию.
Сливочное масло Valio - компиляция как по маслу
Valio вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Чистка системы об установленных флешках и следов выхода в интернет iukash Свободное общение 11 18.04.2012 14:40
реализовать подсчет установленных в регистре А битов gelroy Помощь студентам 0 28.03.2012 13:49
Получение информации о дисках установленных в компьютере diamn3452 Общие вопросы C/C++ 3 19.03.2012 19:05
Excel 2003 - изменение параметров, установленных по умолчанию Электрик Microsoft Office Excel 15 27.06.2011 07:24
проверка программы PradoSV Общие вопросы C/C++ 0 14.12.2009 21:26