From 1d10be0da172c415a8cb0c641d79b6b4bf0a0eb6 Mon Sep 17 00:00:00 2001 From: irfan Date: Tue, 29 Oct 1996 06:56:17 +0000 Subject: test programs for ACE Registry --- examples/Registry/test_registry_iterator.cpp | 130 ++++++++++++++++++ examples/Registry/test_registry_iterator.mak | 195 +++++++++++++++++++++++++++ examples/Registry/test_registry_iterator.mdp | Bin 0 -> 36864 bytes examples/Registry/test_registry_update.cpp | 145 ++++++++++++++++++++ examples/Registry/test_registry_update.mak | 195 +++++++++++++++++++++++++++ examples/Registry/test_registry_update.mdp | Bin 0 -> 37376 bytes 6 files changed, 665 insertions(+) create mode 100644 examples/Registry/test_registry_iterator.cpp create mode 100644 examples/Registry/test_registry_iterator.mak create mode 100644 examples/Registry/test_registry_iterator.mdp create mode 100644 examples/Registry/test_registry_update.cpp create mode 100644 examples/Registry/test_registry_update.mak create mode 100644 examples/Registry/test_registry_update.mdp (limited to 'examples') diff --git a/examples/Registry/test_registry_iterator.cpp b/examples/Registry/test_registry_iterator.cpp new file mode 100644 index 00000000000..c7d578f7171 --- /dev/null +++ b/examples/Registry/test_registry_iterator.cpp @@ -0,0 +1,130 @@ +// This example uses the ACE_Registry class to iterator through the +// entries in the predefined registries. The host of iteration can be +// varied through argv[1]. If no host is specified the local host is +// used. This is very similar to how regedt32 starts up. +// +// This examples points the cool iterators in ACE_Registry + + +#include "ace/Registry.h" +#include "ace/Log_Msg.h" + +// Indentation while printing names +static const u_long INDENTATION_LEVEL = 3; + +// Prototypes +static int print_naming_context (ACE_Registry::Naming_Context &naming_context, + u_long indentation); +static void print_object (const ACE_Registry::Istring &name, + u_long indentation); +static void print_context (ACE_Registry::Naming_Context &parent, + const ACE_Registry::Istring &name, + u_long indentation); +static void indent (u_long indentation); + +int +main (int argc, char *argv[]) +{ + int result; + ACE_Registry::Naming_Context naming_context; + + // Connect to a predefined naming context + result = ACE_Predefined_Naming_Contexts::connect (naming_context, + HKEY_LOCAL_MACHINE, + // HKEY_CLASSES_ROOT, + // HKEY_USERS, + // HKEY_CURRENT_USER, + argc == 2 ? argv[1] : 0); + + if (result != 0) + ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "ACE_Predefined_Naming_Contexts::connect failed"), -1); + + // Print contents of naming context + result = ::print_naming_context (naming_context, 0); + if (result != 0) + ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "print_naming_context failed"), -1); + + return 0; +} + + +// Print contents of +static int +print_naming_context (ACE_Registry::Naming_Context &naming_context, + u_long indentation) +{ + ACE_Registry::Binding_List list; + + // Get the list of all entries + int result = naming_context.list (list); + if (result != 0) + ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "ACE_Registry::Naming_Context::list"), -1); + + // Iterator through all entries + for (ACE_Registry::Binding_List::iterator i = list.begin (); + i != list.end (); + i++) + { + // Yeeesss! STL rules! + ACE_Registry::Binding &binding = *i; + + if (binding.type () == ACE_Registry::OBJECT) + // If object + ::print_object (binding.name (), + indentation); + else + // If context + ::print_context (naming_context, + binding.name (), + indentation); + } + return 0; +} + + +// Print an object with +static void +print_object (const ACE_Registry::Istring &name, + u_long indentation) +{ + // Set indentation + ::indent (indentation); + cout << name << endl; +} + + +// Print an context with and +static void +print_context (ACE_Registry::Naming_Context &parent, + const ACE_Registry::Istring &name, + u_long indentation) +{ + // Set indentation + indent (indentation); + cout << name << endl; + + ACE_Registry::Naming_Context child_context; + // Find child context + int result = parent.resolve_context (name, + child_context, + KEY_READ); + if (result != 0) + ACE_ERROR ((LM_ERROR, "%s %s\n", "ACE_Registry::Naming_Context::resolve_context failed for:", name.c_str ())); + else + { + // Print contents of the child + result = ::print_naming_context (child_context, + indentation + INDENTATION_LEVEL); + if (result != 0) + ACE_ERROR ((LM_ERROR, "%p\n", "print_naming_context failed")); + } +} + + +// Pretty formating +static void +indent (u_long indentation) +{ + for (; indentation > 0; indentation--) + cout << " "; +} diff --git a/examples/Registry/test_registry_iterator.mak b/examples/Registry/test_registry_iterator.mak new file mode 100644 index 00000000000..7a55ae4c82f --- /dev/null +++ b/examples/Registry/test_registry_iterator.mak @@ -0,0 +1,195 @@ +# Microsoft Developer Studio Generated NMAKE File, Format Version 4.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Console Application" 0x0103 + +!IF "$(CFG)" == "" +CFG=test_registry_iterator - Win32 Debug +!MESSAGE No configuration specified. Defaulting to test_registry_iterator -\ + Win32 Debug. +!ENDIF + +!IF "$(CFG)" != "test_registry_iterator - Win32 Release" && "$(CFG)" !=\ + "test_registry_iterator - Win32 Debug" +!MESSAGE Invalid configuration "$(CFG)" specified. +!MESSAGE You can specify a configuration when running NMAKE on this makefile +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "test_registry_iterator.mak"\ + CFG="test_registry_iterator - Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "test_registry_iterator - Win32 Release" (based on\ + "Win32 (x86) Console Application") +!MESSAGE "test_registry_iterator - Win32 Debug" (based on\ + "Win32 (x86) Console Application") +!MESSAGE +!ERROR An invalid configuration is specified. +!ENDIF + +!IF "$(OS)" == "Windows_NT" +NULL= +!ELSE +NULL=nul +!ENDIF +################################################################################ +# Begin Project +# PROP Target_Last_Scanned "test_registry_iterator - Win32 Debug" +RSC=rc.exe +CPP=cl.exe + +!IF "$(CFG)" == "test_registry_iterator - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +OUTDIR=. +INTDIR=. + +ALL : "$(OUTDIR)\test_registry_iterator.exe" + +CLEAN : + -@erase ".\test_registry_iterator.exe" + -@erase ".\test_registry_iterator.obj" + +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /YX /c +# ADD CPP /nologo /MDd /W3 /GX /O2 /I ".." /I " ..\stl" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /YX /c +CPP_PROJ=/nologo /MDd /W3 /GX /O2 /I ".." /I " ..\stl" /D "WIN32" /D "NDEBUG"\ + /D "_CONSOLE" /Fp"test_registry_iterator.pch" /YX /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +BSC32_FLAGS=/nologo /o"$(OUTDIR)/test_registry_iterator.bsc" +BSC32_SBRS= +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 +# ADD LINK32 ace.lib c:\users\irfan\registry\ace\debug\registry.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 +LINK32_FLAGS=ace.lib c:\users\irfan\registry\ace\debug\registry.lib\ + kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib\ + shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo\ + /subsystem:console /incremental:no /pdb:"$(OUTDIR)/test_registry_iterator.pdb"\ + /machine:I386 /out:"$(OUTDIR)/test_registry_iterator.exe" +LINK32_OBJS= \ + "$(INTDIR)/test_registry_iterator.obj" + +"$(OUTDIR)\test_registry_iterator.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS) + $(LINK32) @<< + $(LINK32_FLAGS) $(LINK32_OBJS) +<< + +!ELSEIF "$(CFG)" == "test_registry_iterator - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +OUTDIR=. +INTDIR=. + +ALL : "$(OUTDIR)\test_registry_iterator.exe" + +CLEAN : + -@erase ".\vc40.pdb" + -@erase ".\vc40.idb" + -@erase ".\test_registry_iterator.exe" + -@erase ".\test_registry_iterator.obj" + -@erase ".\test_registry_iterator.ilk" + -@erase ".\test_registry_iterator.pdb" + +# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /YX /c +# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I ".." /I " ..\stl" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /YX /c +CPP_PROJ=/nologo /MDd /W3 /Gm /GX /Zi /Od /I ".." /I " ..\stl" /D "WIN32" /D\ + "_DEBUG" /D "_CONSOLE" /Fp"test_registry_iterator.pch" /YX /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +BSC32_FLAGS=/nologo /o"$(OUTDIR)/test_registry_iterator.bsc" +BSC32_SBRS= +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 +# ADD LINK32 ace.lib c:\users\irfan\registry\ace\debug\registry.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 +LINK32_FLAGS=ace.lib c:\users\irfan\registry\ace\debug\registry.lib\ + kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib\ + shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo\ + /subsystem:console /incremental:yes /pdb:"$(OUTDIR)/test_registry_iterator.pdb"\ + /debug /machine:I386 /out:"$(OUTDIR)/test_registry_iterator.exe" +LINK32_OBJS= \ + "$(INTDIR)/test_registry_iterator.obj" + +"$(OUTDIR)\test_registry_iterator.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS) + $(LINK32) @<< + $(LINK32_FLAGS) $(LINK32_OBJS) +<< + +!ENDIF + +.c.obj: + $(CPP) $(CPP_PROJ) $< + +.cpp.obj: + $(CPP) $(CPP_PROJ) $< + +.cxx.obj: + $(CPP) $(CPP_PROJ) $< + +.c.sbr: + $(CPP) $(CPP_PROJ) $< + +.cpp.sbr: + $(CPP) $(CPP_PROJ) $< + +.cxx.sbr: + $(CPP) $(CPP_PROJ) $< + +################################################################################ +# Begin Target + +# Name "test_registry_iterator - Win32 Release" +# Name "test_registry_iterator - Win32 Debug" + +!IF "$(CFG)" == "test_registry_iterator - Win32 Release" + +!ELSEIF "$(CFG)" == "test_registry_iterator - Win32 Debug" + +!ENDIF + +################################################################################ +# Begin Source File + +SOURCE=.\test_registry_iterator.cpp +DEP_CPP_TEST_=\ + ".\..\ace/Registry.h"\ + {$(INCLUDE)}"\ace\Log_Msg.h"\ + {$(INCLUDE)}"\ace\OS.h"\ + {$(INCLUDE)}"\bstring.h"\ + {$(INCLUDE)}"\ace\Time_Value.h"\ + {$(INCLUDE)}"\sys\TYPES.H"\ + {$(INCLUDE)}"\sys\STAT.H"\ + {$(INCLUDE)}"\sys\TIMEB.H"\ + {$(INCLUDE)}"\ace\Trace.h"\ + {$(INCLUDE)}"\ace\OS.i"\ + {$(INCLUDE)}"\ace\config.h"\ + {$(INCLUDE)}"\ace\Time_Value.i"\ + {$(INCLUDE)}"\ace\Log_Record.h"\ + {$(INCLUDE)}"\ace\ACE.h"\ + {$(INCLUDE)}"\ace\Log_Priority.h"\ + {$(INCLUDE)}"\ace\Log_Record.i"\ + {$(INCLUDE)}"\ace\ACE.i"\ + +NODEP_CPP_TEST_=\ + ".\..\..\stl\msdev\mutex.h"\ + + +"$(INTDIR)\test_registry_iterator.obj" : $(SOURCE) $(DEP_CPP_TEST_) "$(INTDIR)" + + +# End Source File +# End Target +# End Project +################################################################################ diff --git a/examples/Registry/test_registry_iterator.mdp b/examples/Registry/test_registry_iterator.mdp new file mode 100644 index 00000000000..cdcde91d7e2 Binary files /dev/null and b/examples/Registry/test_registry_iterator.mdp differ diff --git a/examples/Registry/test_registry_update.cpp b/examples/Registry/test_registry_update.cpp new file mode 100644 index 00000000000..7c3612f2daa --- /dev/null +++ b/examples/Registry/test_registry_update.cpp @@ -0,0 +1,145 @@ +// Suppose this application belonged to AcmeSoft. AcmeSoft wants to +// keep track of the number of times this application is +// executed. They want two counters: one counts the number of +// executions per machine, the other keeps track of the number of +// executions per user. +// +// This application uses the ACE_Registry class to create and update +// entries in the LOCAL_MACHINE and CURRENT_USER predefined registries +// to store the counters. +// +// Note that this application will not work with remote registries +// if used with the CURRENT_USER predefined registry. + +#include "ace/Registry.h" +#include "ace/Log_Msg.h" + +// Name for application's naming context +static ACE_Registry::Name application_context_name; + +// Name for instance counter. +static ACE_Registry::Name counter_name; + +// Protypes +static int update_counter (HKEY predefined, + u_long ¤t_counter); +static void setup_names (); + +int +main(int argc, char *argv[]) +{ + int result; + u_long current_counter = 0; + + // initialize name + setup_names (); + + // Update counter per user + result = ::update_counter (HKEY_CURRENT_USER, + current_counter); + if (result == 0) + { + cout << "User counter: " << current_counter << endl; + + // Update counter per machine + result = ::update_counter (HKEY_LOCAL_MACHINE, + current_counter); + if (result == 0) + cout << "Machine counter: " << current_counter << endl; + } + + if (result != 0) + ACE_DEBUG ((LM_DEBUG, "test failed\n")); + else + ACE_DEBUG ((LM_DEBUG, "test succeeded\n")); + + return 0; +} + +static int +update_counter (HKEY predefined, + u_long ¤t_counter) +{ + int result; + ACE_Registry::Naming_Context parent_context; + ACE_Registry::Naming_Context application_context; + + // Connect to predefined entry + result = ACE_Predefined_Naming_Contexts::connect (parent_context, + predefined); + if (result != 0) + ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "ACE_Predefined_Naming_Contexts::connect failed"), -1); + + // Find application context name + result = parent_context.resolve_context (application_context_name, + application_context); + + if (result != 0) + // Failed to find: create a new context + result = parent_context.bind_new_context (application_context_name, + application_context); + + if (result != 0) + ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "ACE_Registry::Naming_Contexts::bind/resolve_context failed"), -1); + + // Counter + u_long counter = 0; + // Represent counter as an ACE_Registry::Object + ACE_Registry::Object object ((void *) &counter, + sizeof counter, + REG_DWORD); + // Find counter + result = application_context.resolve (counter_name, + object); + + if (result != 0) + // Failed to find: create new binding for object + { + counter = 1; + result = application_context.bind (counter_name, + object); + } + else + // Counter was found + { + // increment counter + counter++; + // Update + result = application_context.rebind (counter_name, + object); + } + + if (result != 0) + ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "ACE_Registry::Naming_Contexts::bind/resolve failed"), -1); + else + current_counter = counter; + + return 0; +} + + +static void +setup_names () +{ + // Stupid implementation of STL is broken + /* + ::application_context_name.reserve (4); + ::application_context_name [0].id_ = "Software"; + ::application_context_name [1].id_ = "AcmeSoft"; + ::application_context_name [2].id_ = "AcmeApplication"; + ::application_context_name [3].id_ = "1.0"; + + ::counter_name.reserve (1); + ::counter_name [0].id_ = "Instance Counter"; + */ + + ACE_Registry::Name_Component component; + + component.id_ = "Software", ::application_context_name.push_back (component); + component.id_ = "AcmeSoft", ::application_context_name.push_back (component); + component.id_ = "AcmeApplication", ::application_context_name.push_back (component); + component.id_ = "1.0", ::application_context_name.push_back (component); + + component.id_ = "Instance Counter", ::counter_name.push_back (component); +} + diff --git a/examples/Registry/test_registry_update.mak b/examples/Registry/test_registry_update.mak new file mode 100644 index 00000000000..f0e26c38643 --- /dev/null +++ b/examples/Registry/test_registry_update.mak @@ -0,0 +1,195 @@ +# Microsoft Developer Studio Generated NMAKE File, Format Version 4.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Console Application" 0x0103 + +!IF "$(CFG)" == "" +CFG=test_registry_update - Win32 Debug +!MESSAGE No configuration specified. Defaulting to test_registry_update -\ + Win32 Debug. +!ENDIF + +!IF "$(CFG)" != "test_registry_update - Win32 Release" && "$(CFG)" !=\ + "test_registry_update - Win32 Debug" +!MESSAGE Invalid configuration "$(CFG)" specified. +!MESSAGE You can specify a configuration when running NMAKE on this makefile +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "test_registry_update.mak"\ + CFG="test_registry_update - Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "test_registry_update - Win32 Release" (based on\ + "Win32 (x86) Console Application") +!MESSAGE "test_registry_update - Win32 Debug" (based on\ + "Win32 (x86) Console Application") +!MESSAGE +!ERROR An invalid configuration is specified. +!ENDIF + +!IF "$(OS)" == "Windows_NT" +NULL= +!ELSE +NULL=nul +!ENDIF +################################################################################ +# Begin Project +# PROP Target_Last_Scanned "test_registry_update - Win32 Debug" +RSC=rc.exe +CPP=cl.exe + +!IF "$(CFG)" == "test_registry_update - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +OUTDIR=. +INTDIR=. + +ALL : "$(OUTDIR)\test_registry_update.exe" + +CLEAN : + -@erase ".\test_registry_update.exe" + -@erase ".\test_registry_update.obj" + +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /YX /c +# ADD CPP /nologo /MDd /W3 /GX /O2 /I ".." /I " ..\stl" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /YX /c +CPP_PROJ=/nologo /MDd /W3 /GX /O2 /I ".." /I " ..\stl" /D "WIN32" /D "NDEBUG"\ + /D "_CONSOLE" /Fp"test_registry_update.pch" /YX /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +BSC32_FLAGS=/nologo /o"$(OUTDIR)/test_registry_update.bsc" +BSC32_SBRS= +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 +# ADD LINK32 ace.lib c:\users\irfan\registry\ace\debug\registry.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 +LINK32_FLAGS=ace.lib c:\users\irfan\registry\ace\debug\registry.lib\ + kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib\ + shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo\ + /subsystem:console /incremental:no /pdb:"$(OUTDIR)/test_registry_update.pdb"\ + /machine:I386 /out:"$(OUTDIR)/test_registry_update.exe" +LINK32_OBJS= \ + "$(INTDIR)/test_registry_update.obj" + +"$(OUTDIR)\test_registry_update.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS) + $(LINK32) @<< + $(LINK32_FLAGS) $(LINK32_OBJS) +<< + +!ELSEIF "$(CFG)" == "test_registry_update - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +OUTDIR=. +INTDIR=. + +ALL : "$(OUTDIR)\test_registry_update.exe" + +CLEAN : + -@erase ".\vc40.pdb" + -@erase ".\vc40.idb" + -@erase ".\test_registry_update.exe" + -@erase ".\test_registry_update.obj" + -@erase ".\test_registry_update.ilk" + -@erase ".\test_registry_update.pdb" + +# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /YX /c +# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I ".." /I " ..\stl" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /YX /c +CPP_PROJ=/nologo /MDd /W3 /Gm /GX /Zi /Od /I ".." /I " ..\stl" /D "WIN32" /D\ + "_DEBUG" /D "_CONSOLE" /Fp"test_registry_update.pch" /YX /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +BSC32_FLAGS=/nologo /o"$(OUTDIR)/test_registry_update.bsc" +BSC32_SBRS= +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 +# ADD LINK32 ace.lib c:\users\irfan\registry\ace\debug\registry.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 +LINK32_FLAGS=ace.lib c:\users\irfan\registry\ace\debug\registry.lib\ + kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib\ + shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo\ + /subsystem:console /incremental:yes /pdb:"$(OUTDIR)/test_registry_update.pdb"\ + /debug /machine:I386 /out:"$(OUTDIR)/test_registry_update.exe" +LINK32_OBJS= \ + "$(INTDIR)/test_registry_update.obj" + +"$(OUTDIR)\test_registry_update.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS) + $(LINK32) @<< + $(LINK32_FLAGS) $(LINK32_OBJS) +<< + +!ENDIF + +.c.obj: + $(CPP) $(CPP_PROJ) $< + +.cpp.obj: + $(CPP) $(CPP_PROJ) $< + +.cxx.obj: + $(CPP) $(CPP_PROJ) $< + +.c.sbr: + $(CPP) $(CPP_PROJ) $< + +.cpp.sbr: + $(CPP) $(CPP_PROJ) $< + +.cxx.sbr: + $(CPP) $(CPP_PROJ) $< + +################################################################################ +# Begin Target + +# Name "test_registry_update - Win32 Release" +# Name "test_registry_update - Win32 Debug" + +!IF "$(CFG)" == "test_registry_update - Win32 Release" + +!ELSEIF "$(CFG)" == "test_registry_update - Win32 Debug" + +!ENDIF + +################################################################################ +# Begin Source File + +SOURCE=.\test_registry_update.cpp +DEP_CPP_TEST_=\ + ".\..\ace/Registry.h"\ + {$(INCLUDE)}"\ace\Log_Msg.h"\ + {$(INCLUDE)}"\ace\OS.h"\ + {$(INCLUDE)}"\bstring.h"\ + {$(INCLUDE)}"\ace\Time_Value.h"\ + {$(INCLUDE)}"\sys\TYPES.H"\ + {$(INCLUDE)}"\sys\STAT.H"\ + {$(INCLUDE)}"\sys\TIMEB.H"\ + {$(INCLUDE)}"\ace\Trace.h"\ + {$(INCLUDE)}"\ace\OS.i"\ + {$(INCLUDE)}"\ace\config.h"\ + {$(INCLUDE)}"\ace\Time_Value.i"\ + {$(INCLUDE)}"\ace\Log_Record.h"\ + {$(INCLUDE)}"\ace\ACE.h"\ + {$(INCLUDE)}"\ace\Log_Priority.h"\ + {$(INCLUDE)}"\ace\Log_Record.i"\ + {$(INCLUDE)}"\ace\ACE.i"\ + +NODEP_CPP_TEST_=\ + ".\..\..\stl\msdev\mutex.h"\ + + +"$(INTDIR)\test_registry_update.obj" : $(SOURCE) $(DEP_CPP_TEST_) "$(INTDIR)" + + +# End Source File +# End Target +# End Project +################################################################################ diff --git a/examples/Registry/test_registry_update.mdp b/examples/Registry/test_registry_update.mdp new file mode 100644 index 00000000000..833aff9038d Binary files /dev/null and b/examples/Registry/test_registry_update.mdp differ -- cgit v1.2.1