Существует ли в Adobe эквивалент файла Java deployment.properties?

Как говорится в заголовке, существует ли эквивалент Adobe для файла Java deployment.properties?

Я пишу приложение С# для проверки установки приложения в нашей сети. В тройку лучших в списке моего босса входят Java, Flash и Reader. Мне нужно иметь возможность узнать, какие версии каждого приложения установлены на машине для отчетов, которые я собираюсь генерировать (заставить пользователя обновлять/и т. д.).

Я знаю, что могу проверить номер версии и подтвердить возможность доступа IE к моей JRE, проверив "\Sun\Java\Deployment\deployment.properties". Какой файл я бы проверил, чтобы подтвердить то же самое для Adobe Reader и Flash?

Заранее благодарим за любую оказанную помощь или ссылки на дополнительную информацию.

изменить: мне нужно сделать это из браузера.


person toosweetnitemare    schedule 22.01.2013    source источник
comment
Возможный дубликат для stackoverflow.com/questions/5039636/   -  person codeghost    schedule 23.01.2013
comment
@codeghost, я не думаю, что это дубликат. Один из них, на который вы ссылаетесь, предназначен для ключа реестра для флеш-плеера. Я ищу файл, содержащий эту информацию. Я хотел бы использовать раздел реестра, но это выходит за рамки моего проекта. У меня будет только доступ к файлам, но не доступ к реестру. Мой вопрос относится к файлам. Спасибо хоть!   -  person toosweetnitemare    schedule 24.01.2013
comment
Я имел в виду ответ, который создает экземпляр объекта на С# и запрашивает его версию, думая, что это сработает для вас.   -  person codeghost    schedule 24.01.2013
comment
@codeghost спасибо. В настоящее время это не соответствует моим требованиям и масштабам.   -  person toosweetnitemare    schedule 24.01.2013


Ответы (1)


Это не очень чистое решение, но, поскольку единственный «официальный» способ — это проверить его в реестрах Windows, возможно, это поможет:

Мы знаем, что файлы прошивки находятся в (каталоге Windows)\system32\Macromed\Flash (или SysWow64\Macromed\Flash в 64-битных системах).

Каждый раз, когда флэш-память обновляется, она отслеживает прогресс в файлах журнала. В зависимости от версии прошивки у вас будет либо a) install.log (очень старые версии flash), либо b) FlashInstall.log

a) Если вы просматриваете файл, вы видите различные целые элементы, и один тип выглядит следующим образом: WriteRegStr: "HKEY_CURRENT_USER\SOFTWARE\Macromedia\FlashPlayer" "FlashPlayerVersion"="10.0.45.2".

Теперь вы можете просто просмотреть этот файл снизу вверх и сопоставить строку "FlashPlayerVersion"=, чтобы получить самую последнюю версию.

Однако это касается действительно старых версий flash, и файл install.log никогда не удалялся из этого каталога, поэтому убедитесь, что вы также проверили FlashInstall.log!

b) Используйте аналогичный подход, за исключением того, что новые журналы установки не сохраняют информацию "WriteRegStr". Теперь вы можете вместо этого искать само имя файла dll, например, мое последнее обновление создало журнал установки 0009 [I] 00000014 C:\WINDOWS\system32\Macromed\Flash\NPSWF32_11_5_502_146.dll, что означает, что моя версия флэш-памяти — 11.5.502.146.

Еще один вариант –

  • проверьте дату создания основных файлов плагина и сравните с датами выпуска версий (довольно ненадежно, если кому-то каким-то образом удастся установить более старую версию)
  • проверьте фактическое свойство файла NPSWF[..version..].dll. Вы можете увидеть все полные и точные сведения о версии на вкладке «Версия». Я не знаю, как получить доступ к свойствам правой кнопки мыши-> из скрипта, поэтому вам придется выяснить это самостоятельно, если вы решите использовать этот вариант.
  • спроси у единорогов
person user151496    schedule 26.01.2013
comment
Благодарю за ваш ответ. Мои извинения за задержку с моим ответом, но я неправильно указал адрес электронной почты и не получил обновление, на которое вы ответили в эти выходные. Я собираюсь попробовать и использовать ваше решение сегодня. После некоторого тестирования я отвечу с моими результатами и пойду оттуда. Спасибо! - person toosweetnitemare; 28.01.2013
comment
Я только что попробовал этот метод, и примерно на 10 машинах у меня установлены flash, reader и java для целей тестирования, и ни один из них не имеет значений в реестре HKEY_CURRENT_USER\SOFTWARE\Macromedia\FlashPlayer. Я что-то упустил или это значение установлено вручную? - person toosweetnitemare; 28.01.2013
comment
попробуйте HKEY_LOCAL_MACHINE. Кроме того, если вы решили использовать мой вариант 1.a, вы, вероятно, захотите выбрать вариант 1.b, этот файл журнала предназначен для более новых версий flash. также2: эти решения не имеют прямого отношения к реестру, потому что вы говорите, что у вас нет к нему доступа... если у вас есть доступ к реестру, используйте реестр, конечно - person user151496; 29.01.2013
comment
Смогу ли я использовать реестр, если мне придется выбрать другой маршрут? скажем через браузер? На данный момент я ищу любое решение, которое может дать мне пару номеров версий, чтобы мы могли автоматически отправлять обновления на эти машины, когда пользователь регистрируется. - person toosweetnitemare; 29.01.2013
comment
я не уверен, что вы спрашиваете, я действительно не знаю конфигурацию вашего рабочего места. доступ к реестру через браузер должен быть строго запрещен из соображений безопасности. но если вы ищете способ получить к нему доступ через незащищенный IE, вот руководство, в котором используются некоторые активные сценарии technet.microsoft.com/en-us/library/ee156602.aspx. если вам нужна помощь с доступом к реестру, возможно, вам следует задать другой вопрос - person user151496; 31.01.2013
comment
В основном я пытался расширить ваше предложение сверху. Я не уверен, что этот метод будет работать с ограничениями, которые у меня есть. В основном я настраиваю домашнюю страницу интрасети, чтобы проверить, какие версии программ для чтения, флэш-памяти и Java JRE используют люди. Я успешно протестировал java, используя файл, который я упомянул в своем посте, но я не могу повторить успех ни с чем Adobe. - person toosweetnitemare; 31.01.2013