Re: MsiProcessMessage

Peter Ritchie <[email protected]> Fri, 1 Dec 2006 08:50:17 -0500
Newsgroups gmane.comp.windows.devel.dotnet.cx
Message-ID <LISTSERV%[email protected]>
This is way off topic for a .NET list; but: The platform sdk included with
VC2005 has MsiProcessMessage with the 2nd parameter of type
INSTALLMESSAGE.  Possibly you're using a very old platform sdk header with
the wrong type?  Have you tried installing the latest SDK?

Casting the result of or'ing several ints together to an enum type,
regardless of what the function definition or declaration is shouldn't
affect the execution of the function.  The MB_ values should go through
regardless.  It sounds to me like there's other issues.

The MSI newsgroup might be the best place to find someone with specific
knowledge about this problem.

On Thu, 30 Nov 2006 19:31:43 -0700, Alex Smotritsky
<[email protected]> wrote:

>I'm trying to execute MsiProcessMessage in a visual c++ 6 custom action as
>in examples from msdn:
>
>
>
>      MsiProcessMessage(hInstall,
>INSTALLMESSAGE(INSTALLMESSAGE_ERROR|MB_ABORTRETRYIGNORE|MB_ICONWARNING),
>hRecord);
>
>
>
>I'm getting this error:
>
>
>
>error C2664: 'MsiProcessMessage' : cannot convert parameter 2 from 'enum
>tagINSTALLMESSAGE' to 'enum tagMSIMESSAGE'
>
>        Conversion to enumeration type requires an explicit cast
>(static_cast, C-style cast or function-style cast)
>
>Error executing cl.exe.
>
>
>
>The code will compile if I use MSIMESSAGE instead of INSTALLMESSAGE but in
>that case no messagebox is displayed.

===================================
This list is hosted by DevelopMentorĀ®  http://www.develop.com

View archives and manage your subscription(s) at http://discuss.develop.com