// define as many NOxxxx's as possible to keep windows.h's memory footprint // small. rc is a 16-bit app, and runs out of heap space processing windows.h // since it pulls in so much stuff. #define NOGDI #define NONLS #define NORESOURCE #define NOSCROLL #define NOSHOWWINDOW #define NOWH #define NODESKTOP #define NOWINDOWSTATION #define NOSECURITY #define NOMSG #define NOWINOFFSETS #define NONCMESSAGES #define NOKEYSTATES #define NOCLIPBOARD #define NODEFERWINDOWPOS #define NOSYSMETRICS #define NOMENUS #define NODRAWTEXT #define NOMB #define NOCOLOR #define NOSYSCOMMANDS #define NOICONS #define NOWINMESSAGES #define NOMDI #define NOHELP #define NOSYSPARAMSINFO #define NOLANGUAGE #define NOTEXTMETRIC #define NOMETAFILE #define NOGDICAPMASKS #define NORASTEROPS #define NODRIVERS #define MMNOTIMER #define MMNOJOY #define MMNOMMIO #define MMNOMCI #define NOMCX #define NOCOMM #define NOKANJI #define NOPROFILER #define NOKERNEL #define NOGDI #define NONLS #define NOMEMMGR #define NOTOOLBAR #define NOTOOLTIPS #define NOUPDOWN #define NOSTATUSBAR #define NOTRACKBAR #define NOBTNLIST #define NODRAGLIST #define NOPROGRESS #define NOSHELLDEBUG #define NOMENUHELP #define NOHOTKEY #define NOMMIDS #define NONEWWAVE #define NONEWRIFF #define NOBITMAP #define NOJPEGDIB #define NONEWIC #define MMNODRV #define MMNOSOUND #define MMNOWAVE #define MMNOMIDI #define MMNOMIXER #define MMNOAUX #define MMNOTIMER #define MMNOMMIO #define MMNOMCI #define MMNOMMSYSTEM #define NO_APPLOADER #include "windows.h" #include #include "strids.h" #include "dlgids.h" IDI_APPICON ICON "ADMINCFG.ICO" IDB_IMGSMALL BITMAP "imgsmall.bmp" IDB_IMGLARGE BITMAP "imglarge.bmp" IDB_TOOLBAR BITMAP "toolbar.bmp" IDM_MAIN MENU BEGIN POPUP "&File" { MENUITEM "&New Policy", IDM_NEW MENUITEM "&Open Policy...", IDM_OPEN MENUITEM "Open &Registry", IDM_OPENREGISTRY MENUITEM "&Save", IDM_SAVE, GRAYED MENUITEM "Save &As...", IDM_SAVEAS, GRAYED MENUITEM "&Close" IDM_CLOSE, GRAYED MENUITEM SEPARATOR MENUITEM "E&xit", IDM_EXIT } POPUP "&Edit" { MENUITEM "Add &User...", IDM_ADDUSER, GRAYED MENUITEM "Add C&omputer...", IDM_ADDWORKSTATION, GRAYED #ifdef INCL_GROUP_SUPPORT MENUITEM "Add &Group...", IDM_ADDGROUP, GRAYED #endif MENUITEM "&Remove" IDM_REMOVE, GRAYED MENUITEM SEPARATOR MENUITEM "&Copy", IDM_COPY, GRAYED MENUITEM "&Paste", IDM_PASTE, GRAYED MENUITEM SEPARATOR MENUITEM "Proper&ties...", IDM_PROPERTIES, GRAYED } POPUP "&View" { MENUITEM "&Toolbar", IDM_TOOLBAR MENUITEM "Status &Bar", IDM_STATUSBAR MENUITEM SEPARATOR MENUITEM "Lar&ge Icons", IDM_LARGEICONS, MENUITEM "S&mall Icons", IDM_SMALLICONS, MENUITEM "&List", IDM_LIST, MENUITEM "&Details", IDM_DETAILS, } POPUP "&Options" { MENUITEM "&Policy Template...", IDM_TEMPLATEOPT #ifdef INCL_GROUP_SUPPORT MENUITEM SEPARATOR MENUITEM "&Group Priority...", IDM_GROUPPRIORITY #endif } POPUP "&Help" { MENUITEM "Help &Topics...", IDM_HELPCONTENTS MENUITEM SEPARATOR MENUITEM "&About...", IDM_ABOUT } END STRINGTABLE LOADONCALL DISCARDABLE BEGIN IDS_APPNAME, "System Policy Editor" IDS_UNTITLED, "(Untitled)" IDS_LOCALREGISTRY, "Local Registry" IDS_REGISTRYON, "Registry on %s" IDS_TITLEFORMAT, "%s - %s" IDS_WP, "WP" IDS_VIEW, "VIEW" IDS_INFDIR, "INF" IDS_DEF_NT_INFNAME, "WINNT.ADM" IDS_DEF_INFNAME, "WINDOWS.ADM" IDS_DEF_COMMONNAME, "COMMON.ADM" IDS_INF_EXT, ".ADM" IDS_SETTINGSFOR, "&Settings for %s" IDS_POLICIESFOR, "Policies for %s" IDS_InfOPENFILTER1, "Template Files (*.ADM)" IDS_InfOPENFILTER2, "*.ADM" IDS_InfOPENTITLE, "Open Template File" IDS_FILEFILTER1, "Policy Files (*.POL)" IDS_FILEFILTER2, "*.POL" IDS_OPENTITLE, "Open Policy File" IDS_QUERYSAVE, "Do you want to save changes to %s?" IDS_QUERYSAVEREGISTRY, "Do you want to save changes to the Registry?" IDS_QUERYSAVEREMOTEREGISTRY, "Do you want to save changes to the Registry on %s?" IDS_QUERYREMOVE_USER, "Are you sure you want to remove the user ""%s""?" IDS_QUERYREMOVE_WORKSTA,"Are you sure you want to remove the computer ""%s""?" #ifdef INCL_GROUP_SUPPORT IDS_QUERYREMOVE_GROUP, "Are you sure you want to remove the group ""%s""?" #endif IDS_QUERYREMOVE_MULTIPLE,"Are you sure you want to remove the selected entries?" IDS_QUERYPASTE_USER, "Are you sure you want to paste the clipboard contents to the user ""%s""?" IDS_QUERYPASTE_WORKSTA,"Are you sure you want to paste the clipboard contents the computer ""%s""?" IDS_QUERYPASTE_MULTIPLE,"Are you sure you want to paste the clipboard contents to the selected entries?" IDS_USERALREADYEXISTS, "The specified user has already been added." IDS_MACHINEALREADYEXISTS, "The specified computer has already been added." IDS_ENTRYREQUIRED, "You need to enter something for ""%s"" This field cannot be left blank." IDS_INVALIDNUM, "You need to enter a number for ""%s"" This field has invalid characters." IDS_NEEDCOMPUTERNAME, "You must type a computer name." IDS_CANTCONNECT, "Windows cannot connect to %s. Make sure that you have administrative privileges for %s, that it is on the network and has user-level access control enabled,\ and that the Remote Registry service is enabled on both computers." IDS_CONNECT, "Connec&t..." IDS_DISCONNECT, "Disconnec&t" IDS_SAVING, "Saving %s..." IDS_LOADING, "Loading %s..." IDS_LOADINGTEMPLATE, "Loading template file %s..." IDS_READINGREGISTRY, "Reading from registry..." IDS_SAVINGREGISTRY, "Saving to registry..." IDS_CONNECTINGTO, "Connecting to %s..." IDS_NEEDWORKSTANAME, "You need to type a computer name." IDS_NEEDUSERNAME, "You need to type a user name." IDS_DUPLICATEWORKSTA, "There is already an entry for that computer." IDS_DUPLICATEUSER, "There is already an entry for that user." IDS_DUPLICATEGROUP, "There is already an entry for that group." IDS_CHOOSUSRDLL, "CHOOSUSR.DLL" IDS_ADDBUTTON, "&Add ->" IDS_CANTLOADCHOOSUSR, "Unable to load CHOOSUSR.DLL to browse for users." IDS_NOPROVIDER, "An Address Book Provider could not be found." IDS_INVALIDPROVIDER, "The Address Book Provider is not valid." IDS_PROVIDERERROR, "An error occurred trying to access the Address Book Provider." IDS_ERRORADDINGUSERS, "One or more users could not be added because there is not enough memory available." IDS_ENTRIES "%lu entries" IDS_ONEENTRY "1 entry" IDS_NOENTRIES "No entries" #ifndef INCL_GROUP_SUPPORT IDS_GROUPSNOTADDED, "User groups are not supported in this version of the System Policy Editor. The groups you selected will not be added." #else IDS_GROUPDLGTXT, "Enter the name of the &group to add:" IDS_GROUPDLGTITLE, "Add Group" #endif IDS_LISTBOX_SHOW, "Show..." IDS_VALUE, "Value" IDS_VALUENAME, "Value Name" IDS_LOCALUSER, "Local User" IDS_LOCALCOMPUTER, "Local Computer" IDS_DEFAULTUSER, "Default User" IDS_DEFAULTCOMPUTER, "Default Computer" IDS_VALUENAMENOTUNIQUE, "The name you typed has already been used. You need to type a unique name." IDS_EMPTYVALUENAME, "You need to type a name." IDS_VALUEDATANOTUNIQUE, "The value you typed has already been used. You need to type a unique value." IDS_EMPTYVALUEDATA, "You need to type a value." IDS_COMPUTERBROWSETITLE, "Click the computer that you want to add." IDS_COLUMNTITLE, "Policies for:" IDS_HELPFILE, "POLEDIT.CHM" IDS_CHOOSEUSER_TITLE, "Users on %s" IDS_ACCOUNTUNKNOWN, "Account Unknown" IDS_CANTLOADNETUI2, "Unable to load NETUI2.DLL to browse for users." IDS_ERRORADDINGGROUP, "The group could not be added because there is not enough memory available." IDS_ADDUSERS, "Add Users" IDS_ADDGROUPS, "Add Groups" END STRINGTABLE LOADONCALL DISCARDABLE BEGIN IDS_WORDTOOLONG, "The following keyword is too long:\n\n%s" IDS_ErrOUTOFMEMORY, "There is not enough memory available. Quit one or more applications and try again." IDS_ErrCANTOPENREGISTRY, "Unable to open the registry." IDS_ErrINVALIDPOLICYFILE, "%s is not a valid policy file." IDS_ErrREGERR_CANTSAVE, "An error occurred writing the Registry. The file cannot be saved." IDS_ErrREGERR_LOAD, "Unable to read from the Registry: error %lu occurred." IDS_ErrREGERR_SAVE, "Unable to save to the Registry: error %lu occurred." IDS_ErrREGERR_LOADKEY, "Unable to open %s: error %lu occurred." IDS_ErrREGERR_LOADKEY1, "Unable to open %s:\r\n%s" IDS_ErrREGERR_SAVEKEY, "Unable to save %s: error %lu occurred." IDS_ErrREGERR_SAVEKEY1, "Unable to save %s:\r\n%s" IDS_ParseFmt_MSG_FORMAT, "The following error occurred in %s on line %lu:\r\nError %lu %s\r\n\r\n" IDS_ParseFmt_FOUND, "Found: %s\r\n" IDS_ParseFmt_EXPECTED, "Expected: %s\r\n" IDS_ParseFmt_FATAL, "\r\nThe file can not be loaded.\r\n" IDS_ErrCOMMANDLINE, "The command line parameters are incorrect." IDS_ERRFORMAT, "Error %lu occurred" IDS_ErrOPENTEMPLATE, "Unable to open template file %s:\r\n%s" IDS_ParseErr_UNEXPECTED_KEYWORD, "Unexpected keyword" IDS_ParseErr_UNEXPECTED_EOF, "Unexpected end of file" IDS_ParseErr_DUPLICATE_KEYNAME, "Key name specified more than once" IDS_ParseErr_DUPLICATE_VALUENAME, "Value name specified more than once" IDS_ParseErr_DUPLICATE_ITEMNAME, "Item name specified more than once" IDS_ParseErr_DUPLICATE_ACTIONLIST, "More than one action list was specified" IDS_ParseErr_NO_KEYNAME, "There was no key name specified for this entry or any of its parents" IDS_ParseErr_NO_VALUENAME, "There was no value name specified" IDS_ParseErr_NO_VALUE, "There was no value specified" IDS_ParseErr_NO_ITEMNAME, "There was no item name specified" IDS_ParseErr_NOT_NUMERIC, "Expected a numeric value" IDS_ParseErr_STRING_NOT_FOUND, "The corresponding string was not found in the [strings] section" IDS_ParseErr_UNMATCHED_DIRECTIVE, "An unmatched interpreter directive was found" END STRINGTABLE LOADONCALL DISCARDABLE BEGIN IDS_TIPS + IDM_NEW, "New" IDS_TIPS + IDM_OPEN, "Open" IDS_TIPS + IDM_SAVE, "Save" IDS_TIPS + IDM_ADDUSER, "Add User" IDS_TIPS + IDM_ADDWORKSTATION,"Add Computer" IDS_TIPS + IDM_ADDGROUP, "Add Group" IDS_TIPS + IDM_REMOVE, "Remove" END IDA_ACCEL ACCELERATORS BEGIN VK_F1, IDM_HELPCONTENTS, VIRTKEY "?", IDM_ABOUT, ALT "/", IDM_ABOUT, ALT VK_RETURN, IDM_PROPERTIES, NOINVERT, VIRTKEY, ALT END ; Bring in the dialogs: RCINCLUDE ADMINCFG.DLG ; Bring in the version stamping information: RCINCLUDE ADMINCFG.RCV