# Hindi translations for Wine
#
msgid ""
msgstr ""
"Project-Id-Version: Wine\n"
"Report-Msgid-Bugs-To: http://bugs.winehq.org\n"
"POT-Creation-Date: N/A\n"
"PO-Revision-Date: N/A\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"Language: Hindi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: clock.rc:28
msgid "&Properties"
msgstr "सूचना (&o)"

#: clock.rc:29
msgid "Ana&log"
msgstr "एनालॉग (&l)"

#: clock.rc:30
msgid "Digi&tal"
msgstr "डिज़िटल (&t)"

#: clock.rc:32
msgid "&Font..."
msgstr "फ़ॉन्ट (&F)..."

#: clock.rc:34
msgid "&Without Titlebar"
msgstr "बिना शीर्षकपट्टी के (&W)"

#: clock.rc:36
msgid "&Seconds"
msgstr "सेकेंड (&S)"

#: clock.rc:37
msgid "&Date"
msgstr "दिनांक (&D)"

#: clock.rc:39
msgid "&Always on Top"
msgstr "हमेशा शीर्ष पर (&A)"

#: clock.rc:41
msgid "Inf&o"
msgstr "सूचना (&o)"

#: clock.rc:42
msgid "&About Clock..."
msgstr "क्लॉक के बारे में (&A)..."

#: clock.rc:48
msgid "Clock"
msgstr "क्लॉक"

#: cmd.rc:30
msgid "ATTRIB shows or changes DOS file attributes.\n"
msgstr ""

#: cmd.rc:38
msgid ""
"CALL <batchfilename> is used within a batch file to execute commands\n"
"from another batch file. When the batch file exits, control returns to\n"
"the file which called it. The CALL command may supply parameters to the\n"
"called procedure.\n"
"\n"
"Changes to default directory, environment variables etc made within a\n"
"called procedure are inherited by the caller.\n"
msgstr ""

#: cmd.rc:41
msgid ""
"CD <dir> is the short version of CHDIR. It changes the current\n"
"default directory.\n"
msgstr ""

#: cmd.rc:42
msgid "CHDIR <dir> changes the current default directory.\n"
msgstr ""

#: cmd.rc:44
msgid "CLS clears the console screen.\n"
msgstr ""

#: cmd.rc:46
msgid "COPY <filename> copies a file.\n"
msgstr ""

#: cmd.rc:47
msgid "CTTY changes the input/output device.\n"
msgstr ""

#: cmd.rc:48
msgid "DATE shows or changes the system date.\n"
msgstr ""

#: cmd.rc:49
msgid "DEL <filename> deletes a file or set of files.\n"
msgstr ""

#: cmd.rc:50
msgid "DIR lists the contents of a directory.\n"
msgstr ""

#: cmd.rc:60
msgid ""
"ECHO <string> displays <string> on the current terminal device.\n"
"\n"
"ECHO ON causes all subsequent commands in a batch file to be displayed\n"
"on the terminal device before they are executed.\n"
"\n"
"ECHO OFF reverses the effect of a previous ECHO ON (ECHO is OFF by\n"
"default). The ECHO OFF command can be prevented from displaying by\n"
"preceding it with an @ sign.\n"
msgstr ""

#: cmd.rc:62
msgid "ERASE <filename> deletes a file or set of files.\n"
msgstr ""

#: cmd.rc:70
msgid ""
"The FOR command is used to execute a command for each of a set of files.\n"
"\n"
"Syntax: FOR %variable IN (set) DO command\n"
"\n"
"The requirement to double the % sign when using FOR in a batch file does\n"
"not exist in wine's cmd.\n"
msgstr ""

#: cmd.rc:82
msgid ""
"The GOTO command transfers execution to another statement within a\n"
"batch file.\n"
"\n"
"The label which is the target of a GOTO may be up to 255 characters\n"
"long but may not include spaces (this is different from other operating\n"
"systems). If two or more identical labels exist in a batch file the\n"
"first one will always be executed. Attempting to GOTO a nonexistent\n"
"label terminates the batch file execution.\n"
"\n"
"GOTO has no effect when used interactively.\n"
msgstr ""

#: cmd.rc:85
msgid ""
"HELP <command> shows brief help details on a topic.\n"
"HELP without an argument shows all CMD built-in commands.\n"
msgstr ""

#: cmd.rc:95
msgid ""
"IF is used to conditionally execute a command.\n"
"\n"
"Syntax:\tIF [NOT] EXIST filename command\n"
"IF [NOT] string1==string2 command\n"
"IF [NOT] ERRORLEVEL number command\n"
"\n"
"In the second form of the command, string1 and string2 must be in double\n"
"quotes. The comparison is not case-sensitive.\n"
msgstr ""

#: cmd.rc:101
msgid ""
"LABEL is used to set a disk volume label.\n"
"\n"
"Syntax: LABEL [drive:]\n"
"The command will prompt you for the new volume label for the given drive.\n"
"You can display the disk volume label with the VOL command.\n"
msgstr ""

#: cmd.rc:104
msgid "MD <name> is the short version of MKDIR. It creates a subdirectory.\n"
msgstr ""

#: cmd.rc:105
msgid "MKDIR <name> creates a subdirectory.\n"
msgstr ""

#: cmd.rc:112
msgid ""
"MOVE relocates a file or directory to a new point within the file system.\n"
"\n"
"If the item being moved is a directory then all the files and "
"subdirectories\n"
"below the item are moved as well.\n"
"\n"
"MOVE fails if the old and new locations are on different DOS drive letters.\n"
msgstr ""

#: cmd.rc:123
msgid ""
"PATH displays or changes the cmd search path.\n"
"\n"
"Entering PATH will display the current PATH setting (initially taken\n"
"from the registry). To change the setting follow the\n"
"PATH command with the new value.\n"
"\n"
"It is also possible to modify the PATH by using the PATH environment\n"
"variable, for example:\n"
"PATH %PATH%;c:\\temp\n"
msgstr ""

#: cmd.rc:129
msgid ""
"PAUSE displays a message on the screen 'Press Return key to continue'\n"
"and waits for the user to press the Return key. It is mainly useful in\n"
"batch files to allow the user to read the output of a previous command\n"
"before it scrolls off the screen.\n"
msgstr ""

#: cmd.rc:150
msgid ""
"PROMPT sets the command-line prompt.\n"
"\n"
"The string following the PROMPT command (and the space immediately after)\n"
"appears at the beginning of the line when cmd is waiting for input.\n"
"\n"
"The following character strings have the special meaning shown:\n"
"\n"
"$$    Dollar sign         $_    Linefeed            $b    Pipe sign (|)\n"
"$d    Current date        $e    Escape              $g    > sign\n"
"$l    < sign              $n    Current drive       $p    Current path\n"
"$q    Equal sign          $t    Current time        $v    cmd version\n"
"\n"
"Note that entering the PROMPT command without a prompt-string resets the\n"
"prompt to the default, which is the current directory (which includes the\n"
"current drive letter) followed by a greater-than (>) sign.\n"
"(like a command PROMPT $p$g).\n"
"\n"
"The prompt can also be changed by altering the PROMPT environment variable,\n"
"so the command 'SET PROMPT=text' has the same effect as 'PROMPT text'\n"
msgstr ""

#: cmd.rc:154
msgid ""
"A command line beginning REM (followed by a space) performs no\n"
"action, and can therefore be used as a comment in a batch file.\n"
msgstr ""

#: cmd.rc:157
msgid "REN <filename> is the short version of RENAME. It renames a file.\n"
msgstr ""

#: cmd.rc:158
msgid "RENAME <filename> renames a file\n"
msgstr ""

#: cmd.rc:160
msgid "RD <dir> is the short version of RMDIR. It deletes a subdirectory.\n"
msgstr ""

#: cmd.rc:161
msgid "RMDIR <dir> deletes a subdirectory.\n"
msgstr ""

#: cmd.rc:179
msgid ""
"SET displays or changes the cmd environment variables.\n"
"\n"
"SET without parameters shows all of the current environment.\n"
"\n"
"To create or modify an environment variable the syntax is:\n"
"\n"
"SET <variable>=<value>\n"
"\n"
"where <variable> and <value> are character strings. There must be no\n"
"spaces before the equals sign, nor can the variable name\n"
"have embedded spaces.\n"
"\n"
"Under Wine, the environment of the underlying operating system is\n"
"included into the Win32 environment, there will generally therefore be\n"
"many more values than in a native Win32 implementation. Note that it is\n"
"not possible to affect the operating system environment from within cmd.\n"
msgstr ""

#: cmd.rc:184
msgid ""
"SHIFT is used in a batch file to remove one parameter from the head of\n"
"the list, so parameter 2 becomes parameter 1 and so on. It has no effect\n"
"if called from the command line.\n"
msgstr ""

#: cmd.rc:186
msgid "TIME sets or shows the current system time.\n"
msgstr ""

#: cmd.rc:188
msgid "Sets the window title for the cmd window, syntax TITLE [string]\n"
msgstr ""

#: cmd.rc:192
msgid ""
"TYPE <filename> copies <filename> to the console device (or elsewhere\n"
"if redirected). No check is made that the file is readable text.\n"
msgstr ""

#: cmd.rc:201
msgid ""
"VERIFY is used to set, clear or test the verify flag. Valid forms are:\n"
"\n"
"VERIFY ON\tSet the flag\n"
"VERIFY OFF\tClear the flag\n"
"VERIFY\t\tDisplays ON or OFF as appropriate.\n"
"\n"
"The verify flag has no function in Wine.\n"
msgstr ""

#: cmd.rc:204
msgid "VER displays the version of cmd you are running\n"
msgstr ""

#: cmd.rc:206
msgid "VOL shows the volume label of a disk device.\n"
msgstr ""

#: cmd.rc:209
msgid ""
"PUSHD <directoryname> saves the current directory onto a\n"
"stack, and then changes the current directory to the supplied one.\n"
msgstr ""

#: cmd.rc:212
msgid ""
"POPD changes current directory to the last one saved with\n"
"PUSHD.\n"
msgstr ""

#: cmd.rc:214
msgid "MORE displays output of files or piped input in pages.\n"
msgstr ""

#: cmd.rc:218
msgid ""
"CHOICE displays a text and waits, until the User\n"
"presses an allowed Key from a selectable list.\n"
"CHOICE is mainly used to build a menu selection in a batch file.\n"
msgstr ""

#: cmd.rc:222
msgid ""
"EXIT terminates the current command session and returns\n"
"to the operating system or shell from which you invoked cmd.\n"
msgstr ""

#: cmd.rc:253
msgid ""
"CMD built-in commands are:\n"
"ATTRIB\t\tShow or change DOS file attributes\n"
"CALL\t\tInvoke a batch file from inside another\n"
"CD (CHDIR)\tChange current default directory\n"
"CHOICE\t\tWait for an keypress from a selectable list\n"
"CLS\t\tClear the console screen\n"
"COPY\t\tCopy file\n"
"CTTY\t\tChange input/output device\n"
"DATE\t\tShow or change the system date\n"
"DEL (ERASE)\tDelete a file or set of files\n"
"DIR\t\tList the contents of a directory\n"
"ECHO\t\tCopy text directly to the console output\n"
"HELP\t\tShow brief help details on a topic\n"
"MD (MKDIR)\tCreate a subdirectory\n"
"MORE\t\tDisplay output in pages\n"
"MOVE\t\tMove a file, set of files or directory tree\n"
"PATH\t\tSet or show the search path\n"
"POPD\t\tRestores the directory to the last one saved with PUSHD\n"
"PROMPT\t\tChange the command prompt\n"
"PUSHD\t\tChanges to a new directory, saving the current one\n"
"REN (RENAME)\tRename a file\n"
"RD (RMDIR)\tDelete a subdirectory\n"
"SET\t\tSet or show environment variables\n"
"TIME\t\tSet or show the current system time\n"
"TITLE\t\tSet the window title for the CMD session\n"
"TYPE\t\tType the contents of a text file\n"
"VER\t\tShow the current version of CMD\n"
"VOL\t\tShow the volume label of a disk device\n"
"EXIT\t\tClose down CMD\n"
"\n"
"Enter HELP <command> for further information on any of the above commands\n"
msgstr ""

#: cmd.rc:255
msgid "Are you sure"
msgstr ""

#: cmd.rc:256
msgctxt "Yes key"
msgid "Y"
msgstr ""

#: cmd.rc:257
msgctxt "No key"
msgid "N"
msgstr ""

#: cmd.rc:258
msgid "File association missing for extension %s\n"
msgstr ""

#: cmd.rc:259
msgid "No open command associated with file type '%s'\n"
msgstr ""

#: cmd.rc:260
msgid "Overwrite %s"
msgstr ""

#: cmd.rc:261
msgid "More..."
msgstr ""

#: cmd.rc:262
msgid "Line in Batch processing possibly truncated. Using:\n"
msgstr ""

#: cmd.rc:263
msgid ""
"Not Yet Implemented\n"
"\n"
msgstr ""

#: cmd.rc:264
msgid "Argument missing\n"
msgstr ""

#: cmd.rc:265
msgid "Syntax error\n"
msgstr ""

#: cmd.rc:266
msgid "%s : File Not Found\n"
msgstr ""

#: cmd.rc:267
msgid "No help available for %s\n"
msgstr ""

#: cmd.rc:268
msgid "Target to GOTO not found\n"
msgstr ""

#: cmd.rc:269
msgid "Current Date is %s\n"
msgstr ""

#: cmd.rc:270
msgid "Current Time is %s\n"
msgstr ""

#: cmd.rc:271
msgid "Enter new date: "
msgstr ""

#: cmd.rc:272
msgid "Enter new time: "
msgstr ""

#: cmd.rc:273
msgid "Environment variable %s not defined\n"
msgstr ""

#: cmd.rc:274
msgid "Failed to open '%s'\n"
msgstr ""

#: cmd.rc:275
msgid "Cannot call batch label outside of a batch script\n"
msgstr ""

#: cmd.rc:276
msgctxt "All key"
msgid "A"
msgstr ""

#: cmd.rc:277
msgid "%s, Delete"
msgstr ""

#: cmd.rc:278
msgid "Echo is %s\n"
msgstr ""

#: cmd.rc:279
msgid "Verify is %s\n"
msgstr ""

#: cmd.rc:280
msgid "Verify must be ON or OFF\n"
msgstr ""

#: cmd.rc:281
msgid "Parameter error\n"
msgstr ""

#: cmd.rc:282
msgid ""
"Volume in drive %c is %s\n"
"Volume Serial Number is %04x-%04x\n"
"\n"
msgstr ""

#: cmd.rc:283
msgid "Volume label (11 characters, ENTER for none)?"
msgstr ""

#: cmd.rc:284
msgid "PATH not found\n"
msgstr ""

#: cmd.rc:285
msgid "Press Return key to continue: "
msgstr ""

#: cmd.rc:286
msgid "Wine Command Prompt"
msgstr ""

#: cmd.rc:287
msgid ""
"CMD Version %s\n"
"\n"
msgstr ""

#: cmd.rc:288
msgid "More? "
msgstr ""

#: cmd.rc:289
msgid "The input line is too long.\n"
msgstr ""

#: ipconfig.rc:27
msgid "Usage: ipconfig [ /? | /all ]\n"
msgstr ""

#: ipconfig.rc:28
msgid "Error: Unknown or invalid command line parameters specified\n"
msgstr ""

#: ipconfig.rc:29
msgid "%s adapter %s\n"
msgstr ""

#: ipconfig.rc:30
msgid "Ethernet"
msgstr ""

#: ipconfig.rc:31
msgid "Unknown"
msgstr ""

#: ipconfig.rc:32
msgid "Connection-specific DNS suffix"
msgstr ""

#: ipconfig.rc:33
msgid "IP address"
msgstr ""

#: ipconfig.rc:34
msgid "Hostname"
msgstr ""

#: ipconfig.rc:35
msgid "Node type"
msgstr ""

#: ipconfig.rc:36
msgid "Broadcast"
msgstr ""

#: ipconfig.rc:37
msgid "Peer-to-peer"
msgstr ""

#: ipconfig.rc:38
msgid "Mixed"
msgstr ""

#: ipconfig.rc:39
msgid "Hybrid"
msgstr ""

#: ipconfig.rc:40
msgid "IP routing enabled"
msgstr ""

#: ipconfig.rc:41
msgid "Description"
msgstr ""

#: ipconfig.rc:42
msgid "Physical address"
msgstr ""

#: ipconfig.rc:43
msgid "DHCP enabled"
msgstr ""

#: ipconfig.rc:44
msgid "Yes"
msgstr ""

#: ipconfig.rc:45
msgid "No"
msgstr ""

#: ipconfig.rc:46
msgid "Default gateway"
msgstr ""

#: net.rc:27
msgid ""
"The syntax of this command is:\n"
"\n"
"NET [ HELP | START | STOP | USE ]\n"
msgstr ""

#: net.rc:28
msgid "Specify service name to start.\n"
msgstr ""

#: net.rc:29
msgid "Specify service name to stop.\n"
msgstr ""

#: net.rc:30
msgid "Stopping dependent service: %s\n"
msgstr ""

#: net.rc:31
msgid "Could not stop service %s\n"
msgstr ""

#: net.rc:32
msgid "Could not get handle to service control manager.\n"
msgstr ""

#: net.rc:33
msgid "Could not get handle to service.\n"
msgstr ""

#: net.rc:34
msgid "The %s service is starting.\n"
msgstr ""

#: net.rc:35
msgid "The %s service was started successfully.\n"
msgstr ""

#: net.rc:36
msgid "The %s service failed to start.\n"
msgstr ""

#: net.rc:37
msgid "The %s service is stopping.\n"
msgstr ""

#: net.rc:38
msgid "The %s service was stopped successfully.\n"
msgstr ""

#: net.rc:39
msgid "The %s service failed to stop.\n"
msgstr ""

#: net.rc:40
msgid ""
"The syntax of this command is:\n"
"\n"
"NET HELP command\n"
"    -or-\n"
"NET command /HELP\n"
"\n"
"   Commands available are:\n"
"   NET HELP    NET START    NET STOP    NET USE\n"
msgstr ""

#: net.rc:42
msgid "There are no entries in the list.\n"
msgstr ""

#: net.rc:43
msgid ""
"\n"
"Status  Local   Remote\n"
"---------------------------------------------------------------\n"
msgstr ""

#: net.rc:44
msgid "%s      %S      %S      Open resources: %lu\n"
msgstr ""

#: reg.rc:27
msgid ""
"The syntax of this command is:\n"
"\n"
"REG [ ADD | DELETE | QUERY ]\n"
"REG command /?\n"
msgstr ""

#: reg.rc:28
msgid ""
"REG ADD key_name [/v value_name | /ve] [/t type] [/s separator] [/d data] [/"
"f]\n"
msgstr ""

#: reg.rc:29
msgid "REG DELETE key_name [/v value_name | /ve | /va] [/f]\n"
msgstr ""

#: reg.rc:30
msgid "REG QUERY key_name [/v value_name | /ve] [/s]\n"
msgstr ""

#: reg.rc:31
msgid "The operation completed successfully\n"
msgstr ""

#: reg.rc:32
msgid "Error: Invalid key name\n"
msgstr ""

#: reg.rc:33
msgid "Error: Invalid command line parameters\n"
msgstr ""

#: reg.rc:34
msgid "Error: Unable to add keys to remote machine\n"
msgstr ""

#: reg.rc:35
msgid ""
"Error: The system was unable to find the specified registry key or value\n"
msgstr ""

#: start.rc:45
msgid ""
"Start a program, or open a document in the program normally used for files "
"with that suffix.\n"
"Usage:\n"
"start [options] program_filename [...]\n"
"start [options] document_filename\n"
"\n"
"Options:\n"
"/M[inimized] Start the program minimized.\n"
"/MAX[imized] Start the program maximized.\n"
"/R[estored]  Start the program normally (neither minimized nor maximized).\n"
"/W[ait]      Wait for started program to finish, then exit with its exit "
"code.\n"
"/Unix        Use a Unix filename and start the file like windows explorer.\n"
"/ProgIDOpen  Open a document using the following progID.\n"
"/L           Show end-user license.\n"
"\n"
"start.exe version 0.2 Copyright (C) 2003, Dan Kegel\n"
"Start comes with ABSOLUTELY NO WARRANTY; for details run with /L option.\n"
"This is free software, and you are welcome to redistribute it\n"
"under certain conditions; run 'start /L' for details.\n"
msgstr ""

#: start.rc:63
msgid ""
"start.exe version 0.2 Copyright (C) 2003, Dan Kegel\n"
"This program is free software; you can redistribute it and/or\n"
"modify it under the terms of the GNU Lesser Public License\n"
"as published by the Free Software Foundation; either version 2.1\n"
"of the License, or (at your option) any later version.\n"
"\n"
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n"
"GNU Lesser Public License for more details.\n"
"\n"
"You should have received a copy of the GNU Lesser Public License\n"
"along with this program; if not, write to the Free Software\n"
"Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.\n"
"\n"
"See the COPYING.LIB file for license information.\n"
msgstr ""

#: start.rc:65
msgid ""
"Application could not be started, or no application associated with the "
"specified file.\n"
"ShellExecuteEx failed"
msgstr ""

#: start.rc:67
msgid "Could not translate the specified Unix filename to a DOS filename."
msgstr ""

#: taskkill.rc:27
msgid "Usage: taskkill [/?] [/f] [/im ProcessName | /pid ProcessID]\n"
msgstr ""

#: taskkill.rc:28
msgid "Error: Unknown or invalid command line option specified.\n"
msgstr ""

#: taskkill.rc:29
msgid "Error: Invalid command line parameter specified.\n"
msgstr ""

#: taskkill.rc:30
msgid "Error: One of options /im or /pid must be specified.\n"
msgstr ""

#: taskkill.rc:31
msgid "Error: Option %s expects a command line parameter.\n"
msgstr ""

#: taskkill.rc:32
msgid "Error: Options /im and /pid are mutually exclusive.\n"
msgstr ""

#: taskkill.rc:33
msgid "Close message sent to top-level windows of process with PID %u.\n"
msgstr ""

#: taskkill.rc:34
msgid ""
"Close message sent to top-level windows of process \"%s\" with PID %u.\n"
msgstr ""

#: taskkill.rc:35
msgid "Process with PID %u was forcibly terminated.\n"
msgstr ""

#: taskkill.rc:36
msgid "Process \"%s\" with PID %u was forcibly terminated.\n"
msgstr ""

#: taskkill.rc:37
msgid "Error: Could not find process \"%s\".\n"
msgstr ""

#: taskkill.rc:38
msgid "Error: Unable to enumerate the process list.\n"
msgstr ""

#: taskkill.rc:39
msgid "Error: Unable to terminate process \"%s\".\n"
msgstr ""

#: taskkill.rc:40
msgid "Error: Process self-termination is not permitted.\n"
msgstr ""
