GetFileVersion for MSI

  • Print

Indigo Rose products feature the MSI.GetFileVersion() Lua action to retrieve the Version and Language from PE files (*.exe and *.dll). However, if you may want to know these strings of a MSI package (*.msi), you can use this Lua code below:

 
info = {};
nPackageHandle = MSI.OpenPackage("setup.msi");
error = Application.GetLastError();
if (error ~= 0) then
    Dialog.Message("Error", _tblErrorMessages[error], MB_OK, MB_ICONEXCLAMATION);
else
    info.Version = MSI.GetProductProperty(nPackageHandle, "ProductVersion");
    info.Language = MSI.GetProductProperty(nPackageHandle, "ProductLanguage");
  -- display the Version and Language strings in the debug window
    Debug.ShowWindow();
    Debug.Print("MSI Version: " .. info.Version .. "\r\n");
    Debug.Print("MSI Language: " .. info.Language .. "\r\n");
end
 
 

Add a comment (For questions, please use the contact form!)

Security code
Refresh

Our Plugins & Examples Feed

  • POP3 Actions plugin released

    A new, free actions plugin was released today. With it, the developer can check POP3...

  • Reminder: Update Serial Number Validation and/or Subscription Validation

    Next week IPInfoDB's API 2.0 will stop working. If you use an older version than...

Subscribe now!

Advertisement