internal static uint MsiEnumComponentCosts(int hInstall, string szComponent, uint dwIndex, int iState, StringBuilder lpDriveBuf, ref uint cchDriveBuf, out int iCost, out int iTempCost) { if (!RemotingEnabled || !RemotableNativeMethods.IsRemoteHandle(hInstall)) { return(NativeMethods.MsiEnumComponentCosts(hInstall, szComponent, dwIndex, iState, lpDriveBuf, ref cchDriveBuf, out iCost, out iTempCost)); } else { return(RemotableNativeMethods.MsiFunc_ISII_SII( RemoteMsiFunctionId.MsiEvaluateCondition, RemotableNativeMethods.GetRemoteHandle(hInstall), szComponent, (int)dwIndex, iState, lpDriveBuf, ref cchDriveBuf, out iCost, out iTempCost)); } }