Update your win32api - And it should not need the patch, Rob
> -----Original Message----- > From: Michael A Chase [mailto:[EMAIL PROTECTED]] > Sent: Friday, April 19, 2002 7:26 AM > To: [EMAIL PROTECTED] > Subject: [PATCH]setup.exe mklink2.cc some function arguments > need to be pointers > > > I couldn't get mklink2.cc to compile until I made the > attached changes. > > It appears that CoCreateInstance() and > sl->lpVtbl->QueryInterface() are looking for pointers to > values in certain arguments instead of the values. Almost the > exact same code is used in src/winsup/cygwin/shortcut.c > except for the '&'s and it compiles cleanly. Both functions > defined in mklink2.cc are declared extern "C" so the function > calls should work the same. > > Here are the relevant pieces of code. > > src/winsup/cinstall/mklink2.cc (make_link_2): > 23: CoCreateInstance (CLSID_ShellLink, NULL, > 24: CLSCTX_INPROC_SERVER, IID_IShellLink, (LPVOID > *) & sl); > 25: sl->lpVtbl->QueryInterface (sl, IID_IPersistFile, (void > **) &pf); > > src/winsup/cygwin/shortcut.c (check_shortcut): > 85: hres = CoCreateInstance (&CLSID_ShellLink, NULL, > CLSCTX_INPROC_SERVER, > 86: &IID_IShellLink, (void **)&psl); > 87: if (FAILED (hres)) > 88: goto close_it; > 89: /* Get a pointer to the IPersistFile interface. */ > 90: hres = psl->lpVtbl->QueryInterface (psl, > &IID_IPersistFile, (void > **)&ppf); > > src/winsup/w32api/include/objidl.h: > 640: EXTERN_C const IID IID_IPersistFile; > > src/winsup/w32api/include/olectlid.h: > 76: extern const GUID IID_IPersistFile; > > src/winsup/w32api/include/shlguid.h: > 13: extern const GUID CLSID_ShellLink; > 28: extern const GUID IID_IShellLinkA; > 68: #define IID_IShellLink IID_IShellLinkA > > src/winsup/w32api/lib/shell32.c: > 6: DEFINE_SHLGUID(CLSID_ShellLink,0x00021401L,0,0); > 21: DEFINE_SHLGUID(IID_IShellLinkA,0x000214EEL,0,0); > > src/winsup/w32api/lib/uuid.c: > 226: DEFINE_GUID(IID_IPersistFile,0x10b,0,0,0xc0,0,0,0,0,0,0,0x46); > > -- > Mac :}) > ** I normally forward private questions to the appropriate > mail list. ** Ask Smarter: > http://www.tuxedo.org/~esr/faqs/smart-> questions.html > Give a > hobbit a fish and he eats fish for a > day. > Give a hobbit a ring and he eats fish for an age. > > ChangeLog: > > 2002-04-18 Michael A Chase <[EMAIL PROTECTED]> > > * mklink2.cc (check_shortcut): Change arguments from > values to pointers. >