Я пишу Perl-скрипт, чтобы проверить, установлен ли Visual C ++ Redistributable 2010 x64 в системе.
Я столкнулся с двумя способами в соответствии с https://blogs.msdn.microsoft.com/astebner/2010/05/05/mailbag-how-to-detect-the-presence-of-the-visual-c-2010-redistributable-package/
Чтобы прочитатьреестр для соответствующей записи.или использовать MsiQueryProductStateA
Использование Win32::TieRegistry
невозможно без параметра для каждой настройки.
, но использование use Win32::API
является опцией
Попытка использования MsiQueryProductStateA
с Win32::API
use Win32::API;
$function = Win32::API::More->Import(
'msi', 'INSTALLSTATE MsiQueryProductStateA(LPCSTR szProduct)'
);
Предполагается получить некоторое допустимое возвращаемое значение, но с ошибкой
Win32::API::parse_prototype: WARNING unknown output parameter type 'INSTALLSTATE' at C:\Program Files\HP\HP BTO Software\nonOV\Perl\a\lib/5.26.2/MSWin32-x64-multi-thread/Win32/API.pm line 600. 4294967294
Может кто-нибудь, пожалуйста, пролить свет на то, как использовать / импортировать возвращаемый тип какну и как этим пользоваться?
Заранее спасибо