From ca5016d4ddae7f9a2d72a16326e9339f8d3e8748 Mon Sep 17 00:00:00 2001 From: Francesco Montorsi Date: Mon, 23 Mar 2009 16:23:44 +0000 Subject: [PATCH] make sure that wxProcess always have a valid PID set; add test unit for wxExecute,wxShell,wxProcess based on the code in the console sample; add some more infos/notes in wxProcess docs git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59784 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/process.h | 7 +- interface/wx/process.h | 39 ++-- samples/console/console.cpp | 92 -------- src/common/process.cpp | 8 +- src/msw/utilsexc.cpp | 3 + src/unix/utilsunx.cpp | 2 + tests/Makefile.in | 12 +- tests/exec/exec.cpp | 115 ++++++++++ tests/makefile.bcc | 4 + tests/makefile.gcc | 4 + tests/makefile.vc | 4 + tests/makefile.wat | 8 + tests/strings/vsnprintf.cpp | 4 +- tests/test.bkl | 1 + tests/test_test.dsp | 4 + tests/test_vc7_printfbench.vcproj | 336 +++++++++++++++-------------- tests/test_vc7_test.vcproj | 339 +++++++++++++++-------------- tests/test_vc7_test_gui.vcproj | 338 ++++++++++++++--------------- tests/test_vc8_printfbench.vcproj | 336 +++++++++++++++-------------- tests/test_vc8_test.vcproj | 340 ++++++++++++++++-------------- tests/test_vc8_test_gui.vcproj | 338 ++++++++++++++--------------- tests/test_vc9.sln | 98 ++++----- tests/test_vc9_printfbench.vcproj | 328 ++++++++++++++-------------- tests/test_vc9_test.vcproj | 332 +++++++++++++++-------------- tests/test_vc9_test_gui.vcproj | 330 +++++++++++++++-------------- 25 files changed, 1794 insertions(+), 1628 deletions(-) create mode 100644 tests/exec/exec.cpp diff --git a/include/wx/process.h b/include/wx/process.h index 814f3e06a5..12d1dcce7c 100644 --- a/include/wx/process.h +++ b/include/wx/process.h @@ -104,9 +104,14 @@ public: wxInputStream *errStream); #endif // wxUSE_STREAMS + // implementation only - don't use! + // -------------------------------- + + // needs to be public since it needs to be used from wxExecute() global func + void SetPid(long pid) { m_pid = pid; } + protected: void Init(wxEvtHandler *parent, int id, int flags); - void SetPid(long pid) { m_pid = pid; } int m_id; long m_pid; diff --git a/interface/wx/process.h b/interface/wx/process.h index a0f1c11b84..4a5585f81a 100644 --- a/interface/wx/process.h +++ b/interface/wx/process.h @@ -51,11 +51,14 @@ enum wxKillError notified about the process termination and also retrieve its exit status which is unavailable from ::wxExecute() in the case of asynchronous execution. - @note If the process termination notification is processed by the - parent, it is responsible for deleting the wxProcess object which sent it. - However, if it is not processed, the object will delete itself and so the - library users should only delete those objects whose notifications have been - processed (and call wxProcess::Detach for others). + @note + If the @c wxEVT_END_PROCESS event sent after termination is processed by the + parent, then it is responsible for deleting the wxProcess object which sent it. + However, if it is not processed, the object will delete itself and so the + library users should only delete those objects whose notifications have been + processed (and call wxProcess::Detach for others). + This also means that unless you're going to process the @c wxEVT_END_PROCESS event, + you must allocate the wxProcess class on the heap. wxProcess also supports IO redirection of the child process. For this, you have to call its Redirect() method before passing it to ::wxExecute(). @@ -119,15 +122,20 @@ public: void CloseOutput(); /** + Detaches this event handler from the parent specified in the constructor + (see wxEvtHandler::Unlink() for a similar but not identic function). + Normally, a wxProcess object is deleted by its parent when it receives the - notification about the process termination. However, it might happen that the - parent object is destroyed before the external process is terminated (e.g. a - window from which this external process was launched is closed by the user) - and in this case it @b should not delete the wxProcess object, but - @b should call Detach() instead. After the wxProcess object is detached - from its parent, no notification events will be sent to the parent and the - object will delete itself upon reception of the process termination - notification. + notification about the process termination. + + However, it might happen that the parent object is destroyed before the external + process is terminated (e.g. a window from which this external process was launched + is closed by the user) and in this case it @b should not delete the wxProcess + object, but @b should call Detach() instead. + + After the wxProcess object is detached from its parent, no notification events + will be sent to the parent and the object will delete itself upon reception of + the process termination notification. */ void Detach(); @@ -161,7 +169,8 @@ public: wxOutputStream* GetOutputStream() const; /** - Returns the process ID of the process launched by Open(). + Returns the process ID of the process launched by Open() or set by + wxExecute() (if you passed this wxProcess as argument). */ long GetPid() const; @@ -214,6 +223,8 @@ public: /** It is called when the process with the pid @a pid finishes. It raises a wxWidgets event when it isn't overridden. + + Note that this function won't be called if you Kill() the process. @param pid The pid of the process which has just terminated. diff --git a/samples/console/console.cpp b/samples/console/console.cpp index 3dc7031200..f27d836a45 100644 --- a/samples/console/console.cpp +++ b/samples/console/console.cpp @@ -110,7 +110,6 @@ #define TEST_DIR #define TEST_DYNLIB #define TEST_ENVIRON - #define TEST_EXECUTE #define TEST_FILE #define TEST_FILECONF #define TEST_FILENAME @@ -575,93 +574,6 @@ static void TestEnvironment() #endif // TEST_ENVIRON -// ---------------------------------------------------------------------------- -// wxExecute -// ---------------------------------------------------------------------------- - -#ifdef TEST_EXECUTE - -#include "wx/utils.h" - -static void TestExecute() -{ - wxPuts(_T("*** testing wxExecute ***")); - -#ifdef __UNIX__ - #define COMMAND "echo hi" - #define ASYNC_COMMAND "xclock" - #define SHELL_COMMAND "echo hi from shell" - #define REDIRECT_COMMAND "cat -n Makefile" -#elif defined(__WXMSW__) - #define COMMAND "command.com /c echo hi" - #define ASYNC_COMMAND "notepad" - #define SHELL_COMMAND "echo hi" - #define REDIRECT_COMMAND COMMAND -#else - #error "no command to exec" -#endif // OS - - wxPrintf(_T("Testing wxShell: ")); - fflush(stdout); - if ( wxShell(_T(SHELL_COMMAND)) ) - wxPuts(_T("Ok.")); - else - wxPuts(_T("ERROR.")); - - wxPrintf(_T("Testing wxExecute: ")); - fflush(stdout); - if ( wxExecute(_T(COMMAND), wxEXEC_SYNC) == 0 ) - wxPuts(_T("Ok.")); - else - wxPuts(_T("ERROR.")); - - wxPrintf(_T("Testing async wxExecute: ")); - fflush(stdout); - int pid = wxExecute(ASYNC_COMMAND); - if ( pid != 0 ) - { - wxPuts(_T("Ok (command launched).")); - if ( wxKill(pid) == -1 ) - wxPuts("ERROR: failed to kill child process."); - } - else - wxPuts(_T("ERROR.")); - - wxPrintf(_T("Testing wxExecute with redirection:\n")); - wxArrayString output; - if ( wxExecute(_T(REDIRECT_COMMAND), output) != 0 ) - { - wxPuts(_T("ERROR.")); - } - else - { - // don't show too much output, MAX_LINES is enough - static const unsigned MAX_LINES = 20; - - const unsigned count = output.size(); - for ( unsigned n = 0; - n < (count > MAX_LINES ? MAX_LINES/2 : count); - n++ ) - { - wxPrintf("%04u:\t%s\n", n + 1, output[n]); - } - - if ( count > MAX_LINES ) - { - wxPrintf("... skipping %u lines...\n", count - MAX_LINES); - - for ( unsigned n = count - MAX_LINES/2; n < count; n++ ) - { - wxPrintf("%04u:\t%s\n", n + 1, output[n]); - } - } - - wxPuts(_T("Ok.")); - } -} - -#endif // TEST_EXECUTE - // ---------------------------------------------------------------------------- // file // ---------------------------------------------------------------------------- @@ -4340,10 +4252,6 @@ int main(int argc, char **argv) TestEnvironment(); #endif // TEST_ENVIRON -#ifdef TEST_EXECUTE - TestExecute(); -#endif // TEST_EXECUTE - #ifdef TEST_FILECONF TestFileConfRead(); #endif // TEST_FILECONF diff --git a/src/common/process.cpp b/src/common/process.cpp index 9bdda8b638..26e14c560e 100644 --- a/src/common/process.cpp +++ b/src/common/process.cpp @@ -102,7 +102,13 @@ void wxProcess::OnTerminate(int pid, int status) void wxProcess::Detach() { - SetNextHandler(NULL); + // we just detach from the next handler of the chain (i.e. our "parent" -- see ctor) + // not also from the previous handler like wxEvtHandler::Unlink() would do: + + if (m_nextHandler) + m_nextHandler->SetPreviousHandler(m_previousHandler); + + m_nextHandler = NULL; } // ---------------------------------------------------------------------------- diff --git a/src/msw/utilsexc.cpp b/src/msw/utilsexc.cpp index 0269180d9a..aaf6176b1c 100644 --- a/src/msw/utilsexc.cpp +++ b/src/msw/utilsexc.cpp @@ -899,6 +899,9 @@ long wxExecute(const wxString& cmd, int flags, wxProcess *handler) { // may be NULL or not data->handler = handler; + + if (handler) + handler->SetPid(pi.dwProcessId); } DWORD tid; diff --git a/src/unix/utilsunx.cpp b/src/unix/utilsunx.cpp index f4918245fb..1c92ba8982 100644 --- a/src/unix/utilsunx.cpp +++ b/src/unix/utilsunx.cpp @@ -601,6 +601,8 @@ long wxExecute(char **argv, int flags, wxProcess *process) { // save it for WaitForChild() use execData.pid = pid; + if (execData.process) + execData.process->SetPid(pid); // and also in the wxProcess // prepare for IO redirection diff --git a/tests/Makefile.in b/tests/Makefile.in index dc430291e1..829f622e99 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -14,6 +14,7 @@ INSTALL = @INSTALL@ EXEEXT = @EXEEXT@ WINDRES = @WINDRES@ SETFILE = @SETFILE@ +ICC_PCH_USE_SWITCH = @ICC_PCH_USE_SWITCH@ BK_DEPS = @BK_DEPS@ BK_MAKE_PCH = @BK_MAKE_PCH@ srcdir = @srcdir@ @@ -63,6 +64,7 @@ TEST_OBJECTS = \ test_datetimetest.o \ test_evthandler.o \ test_timertest.o \ + test_exec.o \ test_filekind.o \ test_filenametest.o \ test_filesystest.o \ @@ -171,7 +173,7 @@ PRINTFBENCH_ODEP = $(_____pch_testprec_printfbench_testprec_h_gch___depname) @COND_PLATFORM_MAC_1@__test___mac_setfilecmd = \ @COND_PLATFORM_MAC_1@ $(SETFILE) -t APPL test$(EXEEXT) @COND_GCC_PCH_1@__test_PCH_INC = -I./.pch/testprec_test -@COND_ICC_PCH_1@__test_PCH_INC = -use_pch \ +@COND_ICC_PCH_1@__test_PCH_INC = $(ICC_PCH_USE_SWITCH) \ @COND_ICC_PCH_1@ ./.pch/testprec_test/testprec.h.gch @COND_USE_PCH_1@_____pch_testprec_test_testprec_h_gch___depname \ @COND_USE_PCH_1@ = ./.pch/testprec_test/testprec.h.gch @@ -204,7 +206,7 @@ PRINTFBENCH_ODEP = $(_____pch_testprec_printfbench_testprec_h_gch___depname) @COND_TOOLKIT_COCOA@____test_gui_BUNDLE_TGT_REF_DEP = \ @COND_TOOLKIT_COCOA@ $(__test_gui_app_Contents_PkgInfo___depname) @COND_GCC_PCH_1@__test_gui_PCH_INC = -I./.pch/testprec_test_gui -@COND_ICC_PCH_1@__test_gui_PCH_INC = -use_pch \ +@COND_ICC_PCH_1@__test_gui_PCH_INC = $(ICC_PCH_USE_SWITCH) \ @COND_ICC_PCH_1@ ./.pch/testprec_test_gui/testprec.h.gch @COND_USE_PCH_1@_____pch_testprec_test_gui_testprec_h_gch___depname \ @COND_USE_PCH_1@ = ./.pch/testprec_test_gui/testprec.h.gch @@ -236,7 +238,8 @@ COND_MONOLITHIC_0___WXLIB_CORE_p = \ @COND_PLATFORM_MAC_1@__printfbench___mac_setfilecmd = \ @COND_PLATFORM_MAC_1@ $(SETFILE) -t APPL printfbench$(EXEEXT) @COND_GCC_PCH_1@__printfbench_PCH_INC = -I./.pch/testprec_printfbench -@COND_ICC_PCH_1@__printfbench_PCH_INC = -use_pch \ +@COND_ICC_PCH_1@__printfbench_PCH_INC = \ +@COND_ICC_PCH_1@ $(ICC_PCH_USE_SWITCH) \ @COND_ICC_PCH_1@ ./.pch/testprec_printfbench/testprec.h.gch @COND_USE_PCH_1@_____pch_testprec_printfbench_testprec_h_gch___depname \ @COND_USE_PCH_1@ = ./.pch/testprec_printfbench/testprec.h.gch @@ -389,6 +392,9 @@ test_evthandler.o: $(srcdir)/events/evthandler.cpp $(TEST_ODEP) test_timertest.o: $(srcdir)/events/timertest.cpp $(TEST_ODEP) $(CXXC) -c -o $@ $(TEST_CXXFLAGS) $(srcdir)/events/timertest.cpp +test_exec.o: $(srcdir)/exec/exec.cpp $(TEST_ODEP) + $(CXXC) -c -o $@ $(TEST_CXXFLAGS) $(srcdir)/exec/exec.cpp + test_filekind.o: $(srcdir)/filekind/filekind.cpp $(TEST_ODEP) $(CXXC) -c -o $@ $(TEST_CXXFLAGS) $(srcdir)/filekind/filekind.cpp diff --git a/tests/exec/exec.cpp b/tests/exec/exec.cpp new file mode 100644 index 0000000000..566ca72044 --- /dev/null +++ b/tests/exec/exec.cpp @@ -0,0 +1,115 @@ +/////////////////////////////////////////////////////////////////////////////// +// Name: tests/exec/exec.cpp +// Purpose: test wxExecute() +// Author: Francesco Montorsi +// (based on console sample TestExecute() function) +// Created: 2009-01-10 +// RCS-ID: $Id$ +// Copyright: (c) 2009 Francesco Montorsi +/////////////////////////////////////////////////////////////////////////////// + +// ---------------------------------------------------------------------------- +// headers +// ---------------------------------------------------------------------------- + +#include "testprec.h" + +#ifdef __BORLANDC__ + #pragma hdrstop +#endif + +#include "wx/utils.h" +#include "wx/process.h" +#include "wx/sstream.h" + +#ifdef __UNIX__ + #define COMMAND "echo hi" + #define ASYNC_COMMAND "xclock" + #define SHELL_COMMAND "echo hi from shell" + #define REDIRECT_COMMAND "cat -n Makefile" +#elif defined(__WXMSW__) + #define COMMAND "cmd.exe /c \"echo hi\"" + #define ASYNC_COMMAND "notepad" + #define SHELL_COMMAND "echo hi" + #define REDIRECT_COMMAND COMMAND +#else + #error "no command to exec" +#endif // OS + +// ---------------------------------------------------------------------------- +// test class +// ---------------------------------------------------------------------------- + +class ExecTestCase : public CppUnit::TestCase +{ +public: + ExecTestCase() { } + +private: + CPPUNIT_TEST_SUITE( ExecTestCase ); + CPPUNIT_TEST( TestShell ); + CPPUNIT_TEST( TestExecute ); + CPPUNIT_TEST( TestProcess ); + CPPUNIT_TEST_SUITE_END(); + + void TestShell(); + void TestExecute(); + void TestProcess(); + + DECLARE_NO_COPY_CLASS(ExecTestCase) +}; + +// register in the unnamed registry so that these tests are run by default +CPPUNIT_TEST_SUITE_REGISTRATION( ExecTestCase ); + +// also include in it's own registry so that these tests can be run alone +CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( ExecTestCase, "ExecTestCase" ); + + +void ExecTestCase::TestShell() +{ + CPPUNIT_ASSERT( wxShell(SHELL_COMMAND) ); +} + +void ExecTestCase::TestExecute() +{ + // test sync exec: + CPPUNIT_ASSERT( wxExecute(COMMAND, wxEXEC_SYNC) == 0 ); + + // test asynch exec + long pid = wxExecute(ASYNC_COMMAND, wxEXEC_ASYNC); + CPPUNIT_ASSERT( pid != 0 ); + CPPUNIT_ASSERT( wxKill(pid) == 0 ); + + // test running COMMAND again, but this time with redirection: + wxArrayString stdout; + CPPUNIT_ASSERT( wxExecute(COMMAND, stdout, wxEXEC_SYNC) == 0 ); + CPPUNIT_ASSERT( stdout[0] == "hi" ); +} + +void ExecTestCase::TestProcess() +{ + // test wxExecute with wxProcess + wxProcess *proc = new wxProcess; + long pid = wxExecute(ASYNC_COMMAND, wxEXEC_ASYNC, proc); + CPPUNIT_ASSERT( proc->GetPid() == pid && pid != 0 ); + + // we're not going to process the wxEVT_END_PROCESS event, + // so the proc instance will auto-delete itself after we kill + // the asynch process: + CPPUNIT_ASSERT( wxKill(pid) == 0 ); + + + // test wxExecute with wxProcess and REDIRECTION + wxProcess *proc2 = new wxProcess; + proc2->Redirect(); + CPPUNIT_ASSERT( wxExecute(COMMAND, wxEXEC_SYNC, proc2) == 0 ); + + wxStringOutputStream stdout; + CPPUNIT_ASSERT( proc2->GetInputStream() ); + CPPUNIT_ASSERT( proc2->GetInputStream()->Read(stdout).GetLastError() == wxSTREAM_EOF ); + + wxString str(stdout.GetString()); + CPPUNIT_ASSERT_EQUAL( "hi", str.Trim() ); +} + diff --git a/tests/makefile.bcc b/tests/makefile.bcc index 838c2bbd9b..0680d67ac9 100644 --- a/tests/makefile.bcc +++ b/tests/makefile.bcc @@ -48,6 +48,7 @@ TEST_OBJECTS = \ $(OBJS)\test_datetimetest.obj \ $(OBJS)\test_evthandler.obj \ $(OBJS)\test_timertest.obj \ + $(OBJS)\test_exec.obj \ $(OBJS)\test_filekind.obj \ $(OBJS)\test_filenametest.obj \ $(OBJS)\test_filesystest.obj \ @@ -430,6 +431,9 @@ $(OBJS)\test_evthandler.obj: .\events\evthandler.cpp $(OBJS)\test_timertest.obj: .\events\timertest.cpp $(CXX) -q -c -P -o$@ $(TEST_CXXFLAGS) .\events\timertest.cpp +$(OBJS)\test_exec.obj: .\exec\exec.cpp + $(CXX) -q -c -P -o$@ $(TEST_CXXFLAGS) .\exec\exec.cpp + $(OBJS)\test_filekind.obj: .\filekind\filekind.cpp $(CXX) -q -c -P -o$@ $(TEST_CXXFLAGS) .\filekind\filekind.cpp diff --git a/tests/makefile.gcc b/tests/makefile.gcc index 82e1597bf3..5b72865aa9 100644 --- a/tests/makefile.gcc +++ b/tests/makefile.gcc @@ -40,6 +40,7 @@ TEST_OBJECTS = \ $(OBJS)\test_datetimetest.o \ $(OBJS)\test_evthandler.o \ $(OBJS)\test_timertest.o \ + $(OBJS)\test_exec.o \ $(OBJS)\test_filekind.o \ $(OBJS)\test_filenametest.o \ $(OBJS)\test_filesystest.o \ @@ -410,6 +411,9 @@ $(OBJS)\test_evthandler.o: ./events/evthandler.cpp $(OBJS)\test_timertest.o: ./events/timertest.cpp $(CXX) -c -o $@ $(TEST_CXXFLAGS) $(CPPDEPS) $< +$(OBJS)\test_exec.o: ./exec/exec.cpp + $(CXX) -c -o $@ $(TEST_CXXFLAGS) $(CPPDEPS) $< + $(OBJS)\test_filekind.o: ./filekind/filekind.cpp $(CXX) -c -o $@ $(TEST_CXXFLAGS) $(CPPDEPS) $< diff --git a/tests/makefile.vc b/tests/makefile.vc index 1e12ccadba..108eb43853 100644 --- a/tests/makefile.vc +++ b/tests/makefile.vc @@ -41,6 +41,7 @@ TEST_OBJECTS = \ $(OBJS)\test_datetimetest.obj \ $(OBJS)\test_evthandler.obj \ $(OBJS)\test_timertest.obj \ + $(OBJS)\test_exec.obj \ $(OBJS)\test_filekind.obj \ $(OBJS)\test_filenametest.obj \ $(OBJS)\test_filesystest.obj \ @@ -515,6 +516,9 @@ $(OBJS)\test_evthandler.obj: .\events\evthandler.cpp $(OBJS)\test_timertest.obj: .\events\timertest.cpp $(CXX) /c /nologo /TP /Fo$@ $(TEST_CXXFLAGS) .\events\timertest.cpp +$(OBJS)\test_exec.obj: .\exec\exec.cpp + $(CXX) /c /nologo /TP /Fo$@ $(TEST_CXXFLAGS) .\exec\exec.cpp + $(OBJS)\test_filekind.obj: .\filekind\filekind.cpp $(CXX) /c /nologo /TP /Fo$@ $(TEST_CXXFLAGS) .\filekind\filekind.cpp diff --git a/tests/makefile.wat b/tests/makefile.wat index 2272436a31..be9cb430d5 100644 --- a/tests/makefile.wat +++ b/tests/makefile.wat @@ -18,7 +18,11 @@ ! loaddll wpp wppdi86 ! loaddll wppaxp wppdaxp ! loaddll wpp386 wppd386 +! if $(__VERSION__) >= 1280 +! loaddll wlink wlinkd +! else ! loaddll wlink wlink +! endif ! loaddll wlib wlibd !endif @@ -275,6 +279,7 @@ TEST_OBJECTS = & $(OBJS)\test_datetimetest.obj & $(OBJS)\test_evthandler.obj & $(OBJS)\test_timertest.obj & + $(OBJS)\test_exec.obj & $(OBJS)\test_filekind.obj & $(OBJS)\test_filenametest.obj & $(OBJS)\test_filesystest.obj & @@ -467,6 +472,9 @@ $(OBJS)\test_evthandler.obj : .AUTODEPEND .\events\evthandler.cpp $(OBJS)\test_timertest.obj : .AUTODEPEND .\events\timertest.cpp $(CXX) -bt=nt -zq -fo=$^@ $(TEST_CXXFLAGS) $< +$(OBJS)\test_exec.obj : .AUTODEPEND .\exec\exec.cpp + $(CXX) -bt=nt -zq -fo=$^@ $(TEST_CXXFLAGS) $< + $(OBJS)\test_filekind.obj : .AUTODEPEND .\filekind\filekind.cpp $(CXX) -bt=nt -zq -fo=$^@ $(TEST_CXXFLAGS) $< diff --git a/tests/strings/vsnprintf.cpp b/tests/strings/vsnprintf.cpp index bc51eb14d1..1aaa61a440 100644 --- a/tests/strings/vsnprintf.cpp +++ b/tests/strings/vsnprintf.cpp @@ -175,6 +175,8 @@ private: size_t max, const wxChar *format, ...); void Miscellaneous(); + virtual void setUp(); + DECLARE_NO_COPY_CLASS(VsnprintfTestCase) }; @@ -188,7 +190,7 @@ VsnprintfTestCase::VsnprintfTestCase() { // this call is required to avoid check failures when running on machines // with a locale where the decimal point is not '.' - wxSetlocale(LC_NUMERIC, "C"); + wxSetlocale(LC_ALL, "C"); } void VsnprintfTestCase::C() diff --git a/tests/test.bkl b/tests/test.bkl index f2a24aa321..8aa99d7080 100644 --- a/tests/test.bkl +++ b/tests/test.bkl @@ -39,6 +39,7 @@ datetime/datetimetest.cpp events/evthandler.cpp events/timertest.cpp + exec/exec.cpp filekind/filekind.cpp filename/filenametest.cpp filesys/filesystest.cpp diff --git a/tests/test_test.dsp b/tests/test_test.dsp index 1b620a7a24..32d96d8be9 100644 --- a/tests/test_test.dsp +++ b/tests/test_test.dsp @@ -289,6 +289,10 @@ SOURCE=.\events\evthandler.cpp # End Source File # Begin Source File +SOURCE=.\exec\exec.cpp +# End Source File +# Begin Source File + SOURCE=.\streams\ffilestream.cpp # End Source File # Begin Source File diff --git a/tests/test_vc7_printfbench.vcproj b/tests/test_vc7_printfbench.vcproj index ca4442cb31..e924b9de65 100644 --- a/tests/test_vc7_printfbench.vcproj +++ b/tests/test_vc7_printfbench.vcproj @@ -17,27 +17,29 @@ + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;_DEBUG;__WXMSW__;__WXDEBUG__;_UNICODE;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswud;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswud;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;__WXMSW__;_UNICODE;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswu;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswu;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;_DEBUG;__WXMSW__;__WXUNIVERSAL__;__WXDEBUG__;_UNICODE;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswunivud;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswunivud;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;__WXMSW__;__WXUNIVERSAL__;_UNICODE;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswunivu;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswunivu;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;_DEBUG;__WXMSW__;__WXDEBUG__;_UNICODE;WXUSINGDLL;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswud;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswud;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;__WXMSW__;_UNICODE;WXUSINGDLL;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswu;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswu;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;_DEBUG;__WXMSW__;__WXUNIVERSAL__;__WXDEBUG__;_UNICODE;WXUSINGDLL;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswunivud;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswunivud;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;__WXMSW__;__WXUNIVERSAL__;_UNICODE;WXUSINGDLL;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswunivu;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswunivu;.\..\include;."/> + Name="Debug|Win32"> + Name="Release|Win32"> + Name="Universal Debug|Win32"> + Name="Universal Release|Win32"> + Name="DLL Debug|Win32"> + Name="DLL Release|Win32"> + Name="DLL Universal Debug|Win32"> + Name="DLL Universal Release|Win32"> diff --git a/tests/test_vc7_test.vcproj b/tests/test_vc7_test.vcproj index aa0bfc57a5..e9b3781bd2 100644 --- a/tests/test_vc7_test.vcproj +++ b/tests/test_vc7_test.vcproj @@ -17,27 +17,29 @@ + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;_DEBUG;__WXMSW__;__WXDEBUG__;_UNICODE;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswud;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswud;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;__WXMSW__;_UNICODE;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswu;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswu;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;_DEBUG;__WXMSW__;__WXUNIVERSAL__;__WXDEBUG__;_UNICODE;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswunivud;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswunivud;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;__WXMSW__;__WXUNIVERSAL__;_UNICODE;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswunivu;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswunivu;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;_DEBUG;__WXMSW__;__WXDEBUG__;_UNICODE;WXUSINGDLL;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswud;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswud;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;__WXMSW__;_UNICODE;WXUSINGDLL;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswu;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswu;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;_DEBUG;__WXMSW__;__WXUNIVERSAL__;__WXDEBUG__;_UNICODE;WXUSINGDLL;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswunivud;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswunivud;.\..\include;."/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;__WXMSW__;__WXUNIVERSAL__;_UNICODE;WXUSINGDLL;_CONSOLE;wxUSE_GUI=0" + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswunivu;.\..\include;."/> + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswunivu;.\..\include;."/> + Name="Debug|Win32"> + Name="Release|Win32"> + Name="Universal Debug|Win32"> + Name="Universal Release|Win32"> + Name="DLL Debug|Win32"> + Name="DLL Release|Win32"> + Name="DLL Universal Debug|Win32"> + Name="DLL Universal Release|Win32"> @@ -636,6 +644,9 @@ + + diff --git a/tests/test_vc7_test_gui.vcproj b/tests/test_vc7_test_gui.vcproj index 234fd2736f..b3703f41eb 100644 --- a/tests/test_vc7_test_gui.vcproj +++ b/tests/test_vc7_test_gui.vcproj @@ -17,27 +17,29 @@ + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;_DEBUG;__WXMSW__;__WXDEBUG__;_UNICODE;NOPCH;_CONSOLE" + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswud;.\..\include;.;.\..\samples"/> + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswud;.\..\include;.;.\..\samples"/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;__WXMSW__;_UNICODE;NOPCH;_CONSOLE" + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswu;.\..\include;.;.\..\samples"/> + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswu;.\..\include;.;.\..\samples"/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;_DEBUG;__WXMSW__;__WXUNIVERSAL__;__WXDEBUG__;_UNICODE;NOPCH;_CONSOLE" + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswunivud;.\..\include;.;.\..\samples"/> + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswunivud;.\..\include;.;.\..\samples"/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;__WXMSW__;__WXUNIVERSAL__;_UNICODE;NOPCH;_CONSOLE" + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswunivu;.\..\include;.;.\..\samples"/> + AdditionalIncludeDirectories=".\..\lib\vc_lib\mswunivu;.\..\include;.;.\..\samples"/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;_DEBUG;__WXMSW__;__WXDEBUG__;_UNICODE;WXUSINGDLL;NOPCH;_CONSOLE" + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswud;.\..\include;.;.\..\samples"/> + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswud;.\..\include;.;.\..\samples"/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;__WXMSW__;_UNICODE;WXUSINGDLL;NOPCH;_CONSOLE" + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswu;.\..\include;.;.\..\samples"/> + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswu;.\..\include;.;.\..\samples"/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;_DEBUG;__WXMSW__;__WXUNIVERSAL__;__WXDEBUG__;_UNICODE;WXUSINGDLL;NOPCH;_CONSOLE" + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswunivud;.\..\include;.;.\..\samples"/> + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswunivud;.\..\include;.;.\..\samples"/> + Name="VCMIDLTool" + PreprocessorDefinitions="WIN32;__WXMSW__;__WXUNIVERSAL__;_UNICODE;WXUSINGDLL;NOPCH;_CONSOLE" + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswunivu;.\..\include;.;.\..\samples"/> + AdditionalIncludeDirectories=".\..\lib\vc_dll\mswunivu;.\..\include;.;.\..\samples"/> + Name="Debug|Win32"> + Name="Release|Win32"> + Name="Universal Debug|Win32"> + Name="Universal Release|Win32"> + Name="DLL Debug|Win32"> + Name="DLL Release|Win32"> + Name="DLL Universal Debug|Win32"> + Name="DLL Universal Release|Win32"> @@ -672,7 +680,7 @@ Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"> + RelativePath="..\samples\sample.rc"> diff --git a/tests/test_vc8_printfbench.vcproj b/tests/test_vc8_printfbench.vcproj index c74a8c5852..e180c7f2c1 100644 --- a/tests/test_vc8_printfbench.vcproj +++ b/tests/test_vc8_printfbench.vcproj @@ -22,9 +22,9 @@ @@ -101,7 +105,7 @@ /> @@ -200,7 +202,7 @@ /> @@ -296,7 +302,7 @@ /> @@ -395,7 +399,7 @@ /> @@ -491,7 +499,7 @@ /> @@ -590,7 +596,7 @@ /> @@ -686,7 +696,7 @@ /> @@ -785,7 +793,7 @@ /> @@ -101,7 +105,7 @@ /> @@ -200,7 +202,7 @@ /> @@ -296,7 +302,7 @@ /> @@ -395,7 +399,7 @@ /> @@ -491,7 +499,7 @@ /> @@ -590,7 +596,7 @@ /> @@ -686,7 +696,7 @@ /> @@ -785,7 +793,7 @@ /> + + diff --git a/tests/test_vc8_test_gui.vcproj b/tests/test_vc8_test_gui.vcproj index c6ae43619f..300bceedcc 100644 --- a/tests/test_vc8_test_gui.vcproj +++ b/tests/test_vc8_test_gui.vcproj @@ -22,9 +22,9 @@ @@ -101,7 +105,7 @@ /> @@ -200,7 +202,7 @@ /> @@ -296,7 +302,7 @@ /> @@ -395,7 +399,7 @@ /> @@ -491,7 +499,7 @@ /> @@ -590,7 +596,7 @@ /> @@ -686,7 +696,7 @@ /> @@ -785,7 +793,7 @@ /> diff --git a/tests/test_vc9.sln b/tests/test_vc9.sln index 9e08286566..d4163d3616 100644 --- a/tests/test_vc9.sln +++ b/tests/test_vc9.sln @@ -8,64 +8,64 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "printfbench", "test_vc9_pri EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution - DLL Universal Release|Win32 = DLL Universal Release|Win32 - DLL Universal Debug|Win32 = DLL Universal Debug|Win32 - DLL Release|Win32 = DLL Release|Win32 - DLL Debug|Win32 = DLL Debug|Win32 - Universal Release|Win32 = Universal Release|Win32 - Universal Debug|Win32 = Universal Debug|Win32 - Release|Win32 = Release|Win32 Debug|Win32 = Debug|Win32 + Release|Win32 = Release|Win32 + Universal Debug|Win32 = Universal Debug|Win32 + Universal Release|Win32 = Universal Release|Win32 + DLL Debug|Win32 = DLL Debug|Win32 + DLL Release|Win32 = DLL Release|Win32 + DLL Universal Debug|Win32 = DLL Universal Debug|Win32 + DLL Universal Release|Win32 = DLL Universal Release|Win32 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Universal Release|Win32.ActiveCfg = DLL Universal Release|Win32 - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Universal Release|Win32.Build.0 = DLL Universal Release|Win32 - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Universal Debug|Win32.ActiveCfg = DLL Universal Debug|Win32 - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Universal Debug|Win32.Build.0 = DLL Universal Debug|Win32 - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Release|Win32.ActiveCfg = DLL Release|Win32 - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Release|Win32.Build.0 = DLL Release|Win32 - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32 - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Debug|Win32.Build.0 = DLL Debug|Win32 - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Universal Release|Win32.ActiveCfg = Universal Release|Win32 - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Universal Release|Win32.Build.0 = Universal Release|Win32 - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Universal Debug|Win32.ActiveCfg = Universal Debug|Win32 - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Universal Debug|Win32.Build.0 = Universal Debug|Win32 - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Release|Win32.ActiveCfg = Release|Win32 - {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Release|Win32.Build.0 = Release|Win32 {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Debug|Win32.ActiveCfg = Debug|Win32 {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Debug|Win32.Build.0 = Debug|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Universal Release|Win32.ActiveCfg = DLL Universal Release|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Universal Release|Win32.Build.0 = DLL Universal Release|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Universal Debug|Win32.ActiveCfg = DLL Universal Debug|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Universal Debug|Win32.Build.0 = DLL Universal Debug|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Release|Win32.ActiveCfg = DLL Release|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Release|Win32.Build.0 = DLL Release|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Debug|Win32.Build.0 = DLL Debug|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Universal Release|Win32.ActiveCfg = Universal Release|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Universal Release|Win32.Build.0 = Universal Release|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Universal Debug|Win32.ActiveCfg = Universal Debug|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Universal Debug|Win32.Build.0 = Universal Debug|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Release|Win32.ActiveCfg = Release|Win32 - {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Release|Win32.Build.0 = Release|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Release|Win32.ActiveCfg = Release|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Release|Win32.Build.0 = Release|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Universal Debug|Win32.ActiveCfg = Universal Debug|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Universal Debug|Win32.Build.0 = Universal Debug|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Universal Release|Win32.ActiveCfg = Universal Release|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.Universal Release|Win32.Build.0 = Universal Release|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Debug|Win32.Build.0 = DLL Debug|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Release|Win32.ActiveCfg = DLL Release|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Release|Win32.Build.0 = DLL Release|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Universal Debug|Win32.ActiveCfg = DLL Universal Debug|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Universal Debug|Win32.Build.0 = DLL Universal Debug|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Universal Release|Win32.ActiveCfg = DLL Universal Release|Win32 + {2F45723C-ED6B-5F60-8BFF-6B3609464A7B}.DLL Universal Release|Win32.Build.0 = DLL Universal Release|Win32 {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Debug|Win32.ActiveCfg = Debug|Win32 {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Debug|Win32.Build.0 = Debug|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Universal Release|Win32.ActiveCfg = DLL Universal Release|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Universal Release|Win32.Build.0 = DLL Universal Release|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Universal Debug|Win32.ActiveCfg = DLL Universal Debug|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Universal Debug|Win32.Build.0 = DLL Universal Debug|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Release|Win32.ActiveCfg = DLL Release|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Release|Win32.Build.0 = DLL Release|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Debug|Win32.Build.0 = DLL Debug|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Universal Release|Win32.ActiveCfg = Universal Release|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Universal Release|Win32.Build.0 = Universal Release|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Universal Debug|Win32.ActiveCfg = Universal Debug|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Universal Debug|Win32.Build.0 = Universal Debug|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Release|Win32.ActiveCfg = Release|Win32 - {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Release|Win32.Build.0 = Release|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Release|Win32.ActiveCfg = Release|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Release|Win32.Build.0 = Release|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Universal Debug|Win32.ActiveCfg = Universal Debug|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Universal Debug|Win32.Build.0 = Universal Debug|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Universal Release|Win32.ActiveCfg = Universal Release|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.Universal Release|Win32.Build.0 = Universal Release|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Debug|Win32.Build.0 = DLL Debug|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Release|Win32.ActiveCfg = DLL Release|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Release|Win32.Build.0 = DLL Release|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Universal Debug|Win32.ActiveCfg = DLL Universal Debug|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Universal Debug|Win32.Build.0 = DLL Universal Debug|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Universal Release|Win32.ActiveCfg = DLL Universal Release|Win32 + {9BB295D9-A6AA-510D-AA0D-9375B5D91025}.DLL Universal Release|Win32.Build.0 = DLL Universal Release|Win32 {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Debug|Win32.ActiveCfg = Debug|Win32 {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Debug|Win32.Build.0 = Debug|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Release|Win32.ActiveCfg = Release|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Release|Win32.Build.0 = Release|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Universal Debug|Win32.ActiveCfg = Universal Debug|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Universal Debug|Win32.Build.0 = Universal Debug|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Universal Release|Win32.ActiveCfg = Universal Release|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.Universal Release|Win32.Build.0 = Universal Release|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Debug|Win32.Build.0 = DLL Debug|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Release|Win32.ActiveCfg = DLL Release|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Release|Win32.Build.0 = DLL Release|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Universal Debug|Win32.ActiveCfg = DLL Universal Debug|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Universal Debug|Win32.Build.0 = DLL Universal Debug|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Universal Release|Win32.ActiveCfg = DLL Universal Release|Win32 + {568BD6DD-9BBE-583D-9BCE-08F5755A6015}.DLL Universal Release|Win32.Build.0 = DLL Universal Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/tests/test_vc9_printfbench.vcproj b/tests/test_vc9_printfbench.vcproj index f076ccfca9..292019552d 100644 --- a/tests/test_vc9_printfbench.vcproj +++ b/tests/test_vc9_printfbench.vcproj @@ -22,9 +22,9 @@ @@ -101,7 +104,7 @@ /> @@ -196,7 +198,7 @@ /> @@ -289,7 +294,7 @@ /> @@ -384,7 +388,7 @@ /> @@ -477,7 +484,7 @@ /> @@ -572,7 +578,7 @@ /> @@ -665,7 +674,7 @@ /> @@ -760,7 +768,7 @@ /> @@ -101,7 +104,7 @@ /> @@ -196,7 +198,7 @@ /> @@ -289,7 +294,7 @@ /> @@ -384,7 +388,7 @@ /> @@ -477,7 +484,7 @@ /> @@ -572,7 +578,7 @@ /> @@ -665,7 +674,7 @@ /> @@ -760,7 +768,7 @@ /> + + diff --git a/tests/test_vc9_test_gui.vcproj b/tests/test_vc9_test_gui.vcproj index cc86f242f5..06a4880e8b 100644 --- a/tests/test_vc9_test_gui.vcproj +++ b/tests/test_vc9_test_gui.vcproj @@ -22,9 +22,9 @@ @@ -101,7 +104,7 @@ /> @@ -196,7 +198,7 @@ /> @@ -289,7 +294,7 @@ /> @@ -384,7 +388,7 @@ /> @@ -477,7 +484,7 @@ /> @@ -572,7 +578,7 @@ /> @@ -665,7 +674,7 @@ /> @@ -760,7 +768,7 @@ /> -- 2.45.2