error while building project

Apr 5, 2019 at 1:41pm
Hi, im trying to built my project and i get this errors:

Error (active) E0020 identifier "__RPC__inout_xcount" is undefined Kits\10\Include\10.0.17134.0\um\ShObjIdl.h 8206

Error (active) E0020 identifier "__RPC__in_xcount" is undefined Kits\10\Include\10.0.17134.0\um\ShObjIdl.h 8202
image: http://prntscr.com/n7xs7p
Apr 5, 2019 at 2:11pm
Before those there were at least:
error: expected a ')'

We cannot know whether your E0020 are real, because the compiler was already off-track way before them.


Always start from the first error.
Apr 5, 2019 at 2:26pm
http://prntscr.com/n7yja3
how do i have to fix it
Apr 5, 2019 at 3:25pm
The file you mention (ShObjIdl.h) is not the same as the file shown in the screen shot (PropIdlBase.h--not sure about "I" vs. "l"). I don't know how they relate to each other.

As @keskiverto said, start with the first errors and fix them. Your screen shot shows errors from the middle of the pack. It appears that there are dozens of earlier errors that you have not shown us. Your earlier errors might show something like a missing include file. Or maybe you forgot to include a necessary file somewhere.

We can't solve your problem with the information you have given us.
Last edited on Apr 5, 2019 at 3:26pm
Apr 5, 2019 at 3:33pm
> image: http://prntscr.com/n7xs7p
code is text, error messages are text, but you've decided to post an image.
Apr 5, 2019 at 3:42pm
https://gyazo.com/482a0b08c5248575a7de58d396c27bb7 i get the exactly same errors in every file.

This is the code:

unsigned long __RPC_USER CLIPFORMAT_UserSize( __RPC__in unsigned long *, unsigned long , __RPC__in CLIPFORMAT * );
unsigned char * __RPC_USER CLIPFORMAT_UserMarshal( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in CLIPFORMAT * );
unsigned char * __RPC_USER CLIPFORMAT_UserUnmarshal(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out CLIPFORMAT * );
void __RPC_USER CLIPFORMAT_UserFree( __RPC__in unsigned long *, __RPC__in CLIPFORMAT * );

unsigned long __RPC_USER HACCEL_UserSize( __RPC__in unsigned long *, unsigned long , __RPC__in HACCEL * );
unsigned char * __RPC_USER HACCEL_UserMarshal( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in HACCEL * );
unsigned char * __RPC_USER HACCEL_UserUnmarshal(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out HACCEL * );
void __RPC_USER HACCEL_UserFree( __RPC__in unsigned long *, __RPC__in HACCEL * );

unsigned long __RPC_USER HDC_UserSize( __RPC__in unsigned long *, unsigned long , __RPC__in HDC * );
unsigned char * __RPC_USER HDC_UserMarshal( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in HDC * );
unsigned char * __RPC_USER HDC_UserUnmarshal(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out HDC * );
void __RPC_USER HDC_UserFree( __RPC__in unsigned long *, __RPC__in HDC * );

unsigned long __RPC_USER HGLOBAL_UserSize( __RPC__in unsigned long *, unsigned long , __RPC__in HGLOBAL * );
unsigned char * __RPC_USER HGLOBAL_UserMarshal( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in HGLOBAL * );
unsigned char * __RPC_USER HGLOBAL_UserUnmarshal(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out HGLOBAL * );
void __RPC_USER HGLOBAL_UserFree( __RPC__in unsigned long *, __RPC__in HGLOBAL * );

unsigned long __RPC_USER HMENU_UserSize( __RPC__in unsigned long *, unsigned long , __RPC__in HMENU * );
unsigned char * __RPC_USER HMENU_UserMarshal( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in HMENU * );
unsigned char * __RPC_USER HMENU_UserUnmarshal(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out HMENU * );
void __RPC_USER HMENU_UserFree( __RPC__in unsigned long *, __RPC__in HMENU * );

unsigned long __RPC_USER HWND_UserSize( __RPC__in unsigned long *, unsigned long , __RPC__in HWND * );
unsigned char * __RPC_USER HWND_UserMarshal( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in HWND * );
unsigned char * __RPC_USER HWND_UserUnmarshal(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out HWND * );
void __RPC_USER HWND_UserFree( __RPC__in unsigned long *, __RPC__in HWND * );
Apr 5, 2019 at 4:22pm
Do you claim that the first lines in the file are:
1
2
3
4
unsigned long __RPC_USER CLIPFORMAT_UserSize(
   __RPC__in unsigned long *, unsigned long , __RPC__in CLIPFORMAT * );
unsigned char * __RPC_USER CLIPFORMAT_UserMarshal(
   __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in CLIPFORMAT * );


By syntax some of those words are probably macros that expand to something else. If the translation unit starts as you have shown, then there are no definitions of those macros before their use.

doug4 wrote:
maybe you forgot to include a necessary file somewhere.

Best guess so far.
Apr 5, 2019 at 4:41pm
If you're using Visual Studio 2017, and open the Visual Studio Installer, and go to More --> Modify --> Installation Details --> Desktop development with C++ --> is "Windows 10 SDK" checked?
Apr 5, 2019 at 4:58pm
This is the code:

You've pasted the contents of what likely is just a header file, those are function declarations.

Where are the functions defined?

The code that actually does the work.

Apr 5, 2019 at 5:06pm
Im using windows sdk 10.0.17134.0
and the headers are in C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\um
the whole code:
https://www.mediafire.com/file/97aince4um778qw/OAIdl.zip/file
couldn't copy the whole code here

Apr 5, 2019 at 5:29pm
That's the whole code...? It's just a header file, like Furry Guy said.

The header file, when #included into an empty int main(), compiled for me. But you won't be able to use a bunch of the declared functions, because they have no implementation.
Last edited on Apr 5, 2019 at 5:34pm
Apr 5, 2019 at 5:38pm
I don't download unknown code, especially from mediafire or other non-programming repository site.

You can't whittle down the code to have a trimmed bit of example you can post here? That we can copy 'n' paste and muck around with and not have to slog through all your code.

So far you've resisted doing what others have suggested you do, FIX THE FIRST ERROR and go from there.

I don't have the time or desire to troubleshoot your entire code base without due compensation.
Topic archived. No new replies allowed.