[DllImport("Msi.dll", SetLastError = true)]
static extern uint MsiExtractPatchXMLData(
String szPatchPath,
uint dwReserved,
[Out] StringBuilder szXMLData,
ref uint pcchXMLData
);
Declare Function MsiExtractPatchXMLData Lib "msi.dll" (TODO) As TODO
None.
Do you know one? Please contribute it!
None.
Please add some!
uint pcchXMLData = 1024 * 1024;
StringBuilder szXMLData = new StringBuilder((int)pcchXMLData);
string strXmlPathData;
uint rv = MsiExtractPatchXMLData(
_UpdateInfo.LocalFileName,
0,
szXMLData,
ref pcchXMLData
);
if (0==rv)
{
// success
}
///
private string TranslateMsiError(int msiError)
{
switch (msiError)
{
case 5 : return Resources.MsiErrorAccessDenied ;
case 1610: return Resources.MsiErrorBadConfiguration ;
case 1627: return Resources.MsiErrorFunctionFailed ;
case 87: return Resources.MsiErrorInvalidParameter ;
case 234: return Resources.MsiErrorMoreData ;
case 0: return Resources.MsiErrorSuccess ;
case 1605: return Resources.MsiErrorUnknownProduct ;
case 1608: return Resources.MsiErrorUnknownProperty ;
case 1647: return Resources.MsiErrorUnknownPatch ;
default:
break;
}
return Resources.AgentErrorUnknown;
}