You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
114 lines
7.4 KiB
114 lines
7.4 KiB
#include <windows.h>
|
|
#include "resource.h"
|
|
#include "cmdline.rc"
|
|
#include "cmdlineres.h"
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// String Table
|
|
//
|
|
STRINGTABLE DISCARDABLE
|
|
BEGIN
|
|
IDS_HELP_START "\n"
|
|
IDS_HELP_SYNTAX1 "FORFILES [/P pathname] [/M searchmask] [/S]\n"
|
|
IDS_HELP_SYNTAX2 " [/C command] [/D [+ | -] {%s | dd}]\n\n"
|
|
IDS_HELP_DESCRIPTION1 "Description:\n"
|
|
IDS_HELP_DESCRIPTION2 " Selects a file (or set of files) and executes a \n"
|
|
IDS_HELP_DESCRIPTION3 " command on that file. This is helpful for batch jobs.\n\n"
|
|
IDS_HELP_PARAMETER "Parameter List:\n"
|
|
IDS_HELP_P1 " /P pathname Indicates the path to start searching.\n"
|
|
IDS_HELP_P2 " The default folder is the current working\n"
|
|
IDS_HELP_P3 " directory (.).\n\n"
|
|
IDS_HELP_M1 " /M searchmask Searches files according to a searchmask.\n"
|
|
IDS_HELP_M2 " The default searchmask is '*' .\n\n"
|
|
IDS_HELP_S1 " /S Instructs forfiles to recurse into\n"
|
|
IDS_HELP_S2 " subdirectories. Like ""DIR /S"".\n\n"
|
|
IDS_HELP_C1 " /C command Indicates the command to execute for each file.\n"
|
|
IDS_HELP_C2 " Command strings should be wrapped in double\n"
|
|
IDS_HELP_C3 " quotes. \n\n"
|
|
IDS_HELP_C4 " The default command is ""cmd /c echo @file"".\n\n"
|
|
IDS_HELP_C5 " The following variables can be used in the\n"
|
|
IDS_HELP_C6 " command string:\n"
|
|
IDS_HELP_C7 " @file - returns the name of the file.\n"
|
|
IDS_HELP_C8 " @fname - returns the file name without\n"
|
|
IDS_HELP_C9 " extension.\n"
|
|
IDS_HELP_C10 " @ext - returns only the extension of the\n"
|
|
IDS_HELP_C11 " file.\n"
|
|
IDS_HELP_C12 " @path - returns the full path of the file.\n"
|
|
IDS_HELP_C13 " @relpath - returns the relative path of the\n"
|
|
IDS_HELP_C14 " file.\n"
|
|
IDS_HELP_C15 " @isdir - returns ""TRUE"" if a file type is\n"
|
|
IDS_HELP_C16 " a directory, and ""FALSE"" for files.\n"
|
|
IDS_HELP_C17 " @fsize - returns the size of the file in\n"
|
|
IDS_HELP_C18 " bytes.\n"
|
|
IDS_HELP_C19 " @fdate - returns the last modified date of the\n"
|
|
IDS_HELP_C20 " file.\n"
|
|
IDS_HELP_C21 " @ftime - returns the last modified time of the\n"
|
|
IDS_HELP_C22 " file.\n\n"
|
|
IDS_HELP_C23 " To include special characters in the command \n"
|
|
IDS_HELP_C24 " line, use the hexadecimal code for the character\n"
|
|
IDS_HELP_C25 " in 0xHH format (ex. 0x09 for tab). Internal\n"
|
|
IDS_HELP_C26 " CMD.exe commands should be preceded with\n"
|
|
IDS_HELP_C27 " ""cmd /c"".\n\n"
|
|
IDS_HELP_D1 " /D date Selects files with a last modified date greater\n"
|
|
IDS_HELP_D2 " than or equal to (+), or less than or equal to\n"
|
|
IDS_HELP_D3 " (-), the specified date using the\n"
|
|
IDS_HELP_D4 " ""%s"" format; or selects files with a\n"
|
|
IDS_HELP_D5 " last modified date greater than or equal to (+)\n"
|
|
IDS_HELP_D6 " the current date plus ""dd"" days, or less than or\n"
|
|
IDS_HELP_D7 " equal to (-) the current date minus ""dd"" days. A\n"
|
|
IDS_HELP_D8 " valid ""dd"" number of days can be any number in\n"
|
|
IDS_HELP_D9 " the range of 0 - 32768.\n"
|
|
IDS_HELP_D10 " ""+"" is taken as default sign if not specified.\n\n"
|
|
IDS_HELP_H1 " /? Displays this help message.\n\n"
|
|
IDS_HELP_E0 "Examples:\n"
|
|
IDS_HELP_E1 " FORFILES /?\n"
|
|
IDS_HELP_E2 " FORFILES \n"
|
|
IDS_HELP_E3 " FORFILES /P C:\\WINDOWS /S /M DNS*.* \n"
|
|
IDS_HELP_E4 " FORFILES /S /M *.txt /C ""cmd /c type @file | more""\n"
|
|
IDS_HELP_E5 " FORFILES /P C:\\ /S /M *.bat\n"
|
|
IDS_HELP_E6 " FORFILES /D -30 /M *.exe\n"
|
|
IDS_HELP_E7 " /C ""cmd /c echo @path 0x09 was changed 30 days ago""\n"
|
|
IDS_HELP_E8 " FORFILES /D %s\n"
|
|
IDS_HELP_E9 " /C ""cmd /c echo @fname is new since Jan 1st 2001""\n"
|
|
IDS_HELP_E10 " FORFILES /D +%s /C ""cmd /c echo @fname is new today""\n"
|
|
IDS_HELP_E11 " FORFILES /M *.exe /D +1\n"
|
|
IDS_HELP_E12 " FORFILES /S /M *.doc /C ""cmd /c echo @fsize"" \n"
|
|
IDS_HELP_E13 " FORFILES /M *.txt /C ""cmd /c if @isdir==FALSE notepad.exe @file"""
|
|
IDS_HELP_END "\n"
|
|
END
|
|
|
|
STRINGTABLE DISCARDABLE
|
|
BEGIN
|
|
IDS_ERROR_DISPLAY_HELP "Type ""FORFILES /?"" for usage.\n"
|
|
IDS_ERROR_INVALID_SYNTAX "Invalid syntax.\n"
|
|
IDS_ERROR_INVALID_DATE "Invalid date specified.\n"
|
|
IDS_ERROR_FILE_NOT_FOUND "No files found with the specified search criteria.\n"
|
|
IDS_ERROR_NOFILE_FOUND "Files of type "
|
|
IDS_ERROR_NOFILE_FOUND1 " not found. \n"
|
|
IDS_NOT_WIN32_APPL " is not a valid executable.\n"
|
|
IDS_TRUE "TRUE"
|
|
IDS_FALSE "FALSE"
|
|
IDS_TAG_ERROR_ACCESS_DENIED "Access is denied for "
|
|
IDS_APPEND_AT_END ".\n"
|
|
IDS_DOUBLE_QUOTES """"
|
|
IDS_DIRECTORY_INVALID "The specified directory does not exist.\n"
|
|
IDS_ERROR_UNC_PATH_NAME "UNC paths (\\\\machine\\share) are not supported.\n"
|
|
IDS_DATE_FORMAT_0 "MM%sdd%syyyy"
|
|
IDS_DATE_FORMAT_1 "MM%syyyy%sdd"
|
|
IDS_DATE_FORMAT_2 "dd%sMM%syyyy"
|
|
IDS_DATE_FORMAT_3 "dd%syyyy%sMM"
|
|
IDS_DATE_FORMAT_4 "yyyy%sdd%sMM"
|
|
IDS_DATE_FORMAT_5 "yyyy%sMM%sdd"
|
|
END
|
|
|
|
//
|
|
// Version resources
|
|
//
|
|
#include <ntverp.h>
|
|
#define VER_FILETYPE VFT_APP
|
|
#define VER_FILESUBTYPE VFT2_UNKNOWN
|
|
#define VER_FILEDESCRIPTION_STR "ForFiles - Executes a command on selected files"
|
|
#define VER_INTERNALNAME_STR "forfiles.exe"
|
|
#define VER_ORIGINALFILENAME_STR "forfiles.exe"
|
|
#include <common.ver>
|