Building tests with Visual Studio 2005 Express
dank at kegel.com
Tue Feb 5 19:50:13 CST 2008
After giving up for the moment on building with Visual C 6,
I tried Visual Studio 2005.
Boy, does it spew out lots of warnings about deprecated functions!
talks about this a bit; defining _CRT_SECURE_NO_DEPRECATE
and _CRT_NONSTDC_NO_DEPRECATE suppresses the warnings.
You can't set them via corewin_express.vsprops because our project is
converted from an
older visual studio version, so you have to add those two defines to
all the .dsp files, e.g.
perl -p -i -e 's,/D "WIN32",/D "WIN32" /D
"_CRT_NONSTDC_NO_DEPRECATE" /D "_CRT_SECURE_NO_DEPRECATE",' `find .
For some reason, the imported projects lose their list of .lib files to link
As suggested at
add user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib
shell32.lib ole32.lib oleaut32.lib uuid.lib
to the "Additional Dependencies" setting in the file corewin_express.vsprops.
error C2065: 'PFORM_INFO_2A': undeclared identifier
winspool.h only defines the new symbol if NTDDI_VERSION is NTDDI_LONGHORN
or higher. NTDDI_LONGHORN is 0x06000000.
add /D _WIN32_WINNT=0x0600 to that list of changes to all the .dsp
files in hitch #1 above.
urlmon_test.exe refers to CLSID_IdentityUnmarshal, but that symbol is
generated.c refers to CS_STUB_INFO, which is not defined in
it can't find server.h
can't find tmarshal.h
Not sure, but maybe these files need to be generated by midl, and msvcmaker
doesn't know about that yet? See
riched20/tests/editor.c fails to compile because in GETTEXTEX, the
field is named lpUsedDefChar, not lpUsedDefaultChar
fix our richedit.h?
gdiplus/tests/brush.c includes Microsoft's gdiplus.h, but that's not
safe to include from C, so you get an error on the namespace.
Golly. I guess I won't be building the tests with any flavor of
microsoft C any time soon!
More information about the wine-devel