Я хочу иметь список всего установленного на компьютере программного обеспечения Microsoft. думаю этот выполнит свою работу, но проблема в том, что мне нужны серийные номера установленных приложений Microsoft.
Есть ли для этого какой-либо OS SDK или сторонний инструмент?
Поскольку вы отметили этот C #, я буду исходить из предположения, что вы действительно хотите создать свою собственную программу для получения этой информации. Вполне возможно (и на самом деле довольно просто) создать собственную программу, которая перечисляет все установленное на компьютере программное обеспечение и извлекает ключ продукта, если это применимо.
У большинства издателей программного обеспечения есть свои способы кодирования серийного номера продукта где-нибудь в системе (обычно скрытого в реестре), поэтому одним из недостатков развертывания вашей собственной программы является то, что вам нужно поддерживать несколько различных алгоритмов для декодирования различных ключей продукта. .
В последний раз я искал алгоритм для декодирования ключей продукта Microsoft для моей собственной программы некоторое время назад, но мне было очень трудно найти любой алгоритмы в Интернете. В конце концов я наткнулся на Magical Jelly Bean Keyfinder, который перечислял Пит, и его исходный код, который был на SourceForge (похоже, этот проект с тех пор превратился в Зачарованный брелок). Он запрограммирован на Паскале, и я, конечно, не программист на Паскале, но мне удалось преобразовать его на C # за полдня (включая обычные прерывания из-за $DayJob
) без каких-либо реальных проблем.
Мы обнаружили одну вещь, которую я назову очень важной, и это актуально, если вы запускаете собственное программное обеспечение или даже если вы используете какое-то другое программное обеспечение для поиска ключей. Если программное обеспечение предварительно установлено на компьютере (например, OEM Windows), возвращаемый ключ продукта является ключом продукта OEM, а НЕ фактическим ключом продукта. Ваш установочный носитель НЕ ПРИНИМАЕТ этот ключ продукта, поскольку он получен из другого канала распространения.
Если вы думаете, что запуск программы на всех ваших компьютерах экономит ваше время, поскольку вам не нужно вручную записывать ключи продукта, я думаю, вы будете разочарованы. Как я уже сказал, каждый издатель программного обеспечения делает это по-своему, и стандарта нет. Когда дело доходит до переустановки программного обеспечения после сбоя компьютера, есть все шансы, что программа не расшифрует ключ продукта для одной части программного обеспечения, и он всегда будет наиболее важным.
На самом деле нет замены специализированному программному обеспечению, в которое вы вручную вводите информацию о лицензии и которое отслеживает использование для вас.
Попробуй это список. Я лично использовал элемент номер 1 в этом списке, Magical Jelly Bean Keyfinder, и он соответствовал моим потребностям. Мне нужно было получить ключи от Office и Windows для компьютера, который потерял информацию. Вы можете проверить этот список и посмотреть, соответствует ли какой-либо из них вашим потребностям или даже есть ли исходный код, чтобы вы могли изменить его в соответствии со своими потребностями. Удачи.
РЕДАКТИРОВАТЬ
Прямая ссылка для Волшебный мармелад.
Лично я использую бесплатное программное обеспечение MSKeyViewer Plus, и, похоже, он очень хорошо подходит для моих нужд. Надеюсь это поможет.