Leaked source code of windows server 2003
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.

878 lines
24 KiB

  1. /*++
  2. Copyright (c) 1992 Microsoft Corporation
  3. Module Name:
  4. dntext.c
  5. Abstract:
  6. Translatable text for DOS based NT installation program.
  7. Author:
  8. Ted Miller (tedm) 30-March-1992
  9. Revision History:
  10. --*/
  11. #include "winnt.h"
  12. //
  13. // Name of sections in inf file. If these are translated, the section
  14. // names in dosnet.inf must be kept in sync.
  15. //
  16. CHAR DnfDirectories[] = "Directories";
  17. CHAR DnfFiles[] = "Files";
  18. CHAR DnfFloppyFiles0[] = "FloppyFiles.0";
  19. CHAR DnfFloppyFiles1[] = "FloppyFiles.1";
  20. CHAR DnfFloppyFiles2[] = "FloppyFiles.2";
  21. CHAR DnfFloppyFiles3[] = "FloppyFiles.3";
  22. CHAR DnfFloppyFilesX[] = "FloppyFiles.x";
  23. CHAR DnfSpaceRequirements[] = "DiskSpaceRequirements";
  24. CHAR DnfMiscellaneous[] = "Miscellaneous";
  25. CHAR DnfRootBootFiles[] = "RootBootFiles";
  26. CHAR DnfAssemblyDirectories[] = SXS_INF_ASSEMBLY_DIRECTORIES_SECTION_NAME_A;
  27. //
  28. // Names of keys in inf file. Same caveat for translation.
  29. //
  30. CHAR DnkBootDrive[] = "BootDrive"; // in [SpaceRequirements]
  31. CHAR DnkNtDrive[] = "NtDrive"; // in [SpaceRequirements]
  32. CHAR DnkMinimumMemory[] = "MinimumMemory"; // in [Miscellaneous]
  33. CHAR DntMsWindows[] = "Microsoft Windows";
  34. CHAR DntMsDos[] = "MS-DOS";
  35. CHAR DntPcDos[] = "PC-DOS";
  36. CHAR DntOs2[] = "OS/2";
  37. CHAR DntPreviousOs[] = "Previous Operating System on C:";
  38. CHAR DntBootIniLine[] = "Windows Installation/Upgrade";
  39. //
  40. // Plain text, status msgs.
  41. //
  42. CHAR DntStandardHeader[] = "\n Windows Setup\n������������������������";
  43. CHAR DntPersonalHeader[] = "\n Windows Setup\n��������������������������������";
  44. CHAR DntWorkstationHeader[] = "\n Windows Setup\n���������������������������������";
  45. CHAR DntServerHeader[] = "\n Windows Setup\n������������������������������";
  46. CHAR DntParsingArgs[] = "Parsing arguments...";
  47. CHAR DntEnterEqualsExit[] = "ENTER=Exit";
  48. CHAR DntEnterEqualsRetry[] = "ENTER=Retry";
  49. CHAR DntEscEqualsSkipFile[] = "ESC=Skip File";
  50. CHAR DntEnterEqualsContinue[] = "ENTER=Continue";
  51. CHAR DntPressEnterToExit[] = "Setup cannot continue. Press ENTER to exit.";
  52. CHAR DntF3EqualsExit[] = "F3=Exit";
  53. CHAR DntReadingInf[] = "Reading INF file %s...";
  54. CHAR DntCopying[] = "� Copying: ";
  55. CHAR DntVerifying[] = "� Verifying: ";
  56. CHAR DntCheckingDiskSpace[] = "Checking disk space...";
  57. CHAR DntConfiguringFloppy[] = "Configuring floppy disk...";
  58. CHAR DntWritingData[] = "Writing Setup parameters...";
  59. CHAR DntPreparingData[] = "Determining Setup parameters...";
  60. CHAR DntFlushingData[] = "Flushing data to disk...";
  61. CHAR DntInspectingComputer[] = "Inspecting computer...";
  62. CHAR DntOpeningInfFile[] = "Opening INF file...";
  63. CHAR DntRemovingFile[] = "Removing file %s";
  64. CHAR DntXEqualsRemoveFiles[] = "X=Remove files";
  65. CHAR DntXEqualsSkipFile[] = "X=Skip File";
  66. //
  67. // confirmation keystroke for DnsConfirmRemoveNt screen.
  68. // Kepp in sync with DnsConfirmRemoveNt and DntXEqualsRemoveFiles.
  69. //
  70. ULONG DniAccelRemove1 = (ULONG)'x',
  71. DniAccelRemove2 = (ULONG)'X';
  72. //
  73. // confirmation keystroke for DnsSureSkipFile screen.
  74. // Kepp in sync with DnsSureSkipFile and DntXEqualsSkipFile.
  75. //
  76. ULONG DniAccelSkip1 = (ULONG)'x',
  77. DniAccelSkip2 = (ULONG)'X';
  78. CHAR DntEmptyString[] = "";
  79. //
  80. // Usage text.
  81. //
  82. PCHAR DntUsage[] = {
  83. "Sets up Windows.",
  84. "",
  85. "",
  86. "WINNT [/s[:sourcepath]] [/t[:tempdrive]]",
  87. " [/u[:answer file]] [/udf:id[,UDF_file]]",
  88. " [/r:folder] [/r[x]:folder] [/e:command] [/a]",
  89. "",
  90. "",
  91. "/s[:sourcepath]",
  92. " Specifies the source location of the Windows files.",
  93. " The location must be a full path of the form x:[path] or ",
  94. " \\\\server\\share[path]. ",
  95. "",
  96. "/t[:tempdrive]",
  97. " Directs Setup to place temporary files on the specified",
  98. " drive and to install Windows on that drive. If you do ",
  99. " do not specify a location, Setup attempts to locate a drive ",
  100. " for you.",
  101. "",
  102. "/u[:answer file]",
  103. " Performs an unattended Setup using an answer file (requires",
  104. " /s). The answer file provides answers to some or all of the",
  105. " prompts that the end user normally responds to during Setup.",
  106. "",
  107. "/udf:id[,UDF_file] ",
  108. " Indicates an identifier (id) that Setup uses to specify how ",
  109. " a Uniqueness Database File (UDF) modifies an answer file ",
  110. " (see /u).The /udf parameter overrides values in the answer ",
  111. " file, and the identifier determines which values in the UDF",
  112. " file are used. If no UDF_file is specified, Setup prompts ",
  113. " you to insert a disk that contains the $Unique$.udb file.",
  114. "",
  115. "/r[:folder]",
  116. " Specifies an optional folder to be installed. The folder",
  117. " remains after Setup finishes.",
  118. "",
  119. "/rx[:folder]",
  120. " Specifies an optional folder to be copied. The folder is ",
  121. " deleted after Setup finishes.",
  122. "",
  123. "/e Specifies a command to be executed at the end of GUI-mode Setup.",
  124. "",
  125. "/a Enables accessibility options.",
  126. NULL
  127. };
  128. //
  129. // Inform that /D is no longer supported
  130. //
  131. PCHAR DntUsageNoSlashD[] = {
  132. "Installs Windows.",
  133. "",
  134. "WINNT [/S[:]sourcepath] [/T[:]tempdrive] [/I[:]inffile]",
  135. " [[/U[:scriptfile]]",
  136. " [/R[X]:directory] [/E:command] [/A]",
  137. "",
  138. "/D[:]winntroot",
  139. " This option is no longer supported.",
  140. NULL
  141. };
  142. //
  143. // out of memory screen
  144. //
  145. SCREEN
  146. DnsOutOfMemory = { 4,6,
  147. { "Setup is out of memory and cannot continue.",
  148. NULL
  149. }
  150. };
  151. //
  152. // Let user pick the accessibility utilities to install
  153. //
  154. SCREEN
  155. DnsAccessibilityOptions = { 3, 5,
  156. { "Choose the accessibility utilities to install:",
  157. DntEmptyString,
  158. "[ ] Press F1 for Microsoft Magnifier",
  159. #ifdef NARRATOR
  160. "[ ] Press F2 for Microsoft Narrator",
  161. #endif
  162. #if 0
  163. "[ ] Press F3 for Microsoft On-Screen Keyboard",
  164. #endif
  165. NULL
  166. }
  167. };
  168. //
  169. // User did not specify source on cmd line screen
  170. //
  171. SCREEN
  172. DnsNoShareGiven = { 3,5,
  173. { "Setup needs to know where the Windows files are located.",
  174. "Enter the path where Windows files are to be found.",
  175. NULL
  176. }
  177. };
  178. //
  179. // User specified a bad source path
  180. //
  181. SCREEN
  182. DnsBadSource = { 3,5,
  183. { "The source specified is not valid, not accessible, or does not contain a",
  184. "valid Windows Setup installation. Enter a new path where Windows",
  185. "files are to be found. Use the BACKSPACE key to delete characters and then",
  186. "type the path.",
  187. NULL
  188. }
  189. };
  190. //
  191. // Inf file can't be read, or an error occured parsing it.
  192. //
  193. SCREEN
  194. DnsBadInf = { 3,5,
  195. { "Setup was unable to read its information file, or the information file is",
  196. "corrupt. Contact your system administrator.",
  197. NULL
  198. }
  199. };
  200. //
  201. // The specified local source drive is invalid.
  202. //
  203. // Remember that the first %u will expand to 2 or 3 characters and
  204. // the second one will expand to 8 or 9 characters!
  205. //
  206. SCREEN
  207. DnsBadLocalSrcDrive = { 3,4,
  208. { "The drive you have specified to contain temporary setup files is not",
  209. "a valid drive or does not contain at least %u megabytes (%lu bytes)",
  210. "of free space.",
  211. NULL
  212. }
  213. };
  214. //
  215. // No drives exist that are suitable for the local source.
  216. //
  217. // Remeber that the %u's will expand!
  218. //
  219. SCREEN
  220. DnsNoLocalSrcDrives = { 3,4,
  221. { "Windows requires a hard drive volume with at least %u megabytes",
  222. "(%lu bytes) of free disk space. Setup will use part of this space",
  223. "for storing temporary files during installation. The drive must be",
  224. "on a permanently attached local hard disk supported by Windows,",
  225. "and must not be a compressed drive.",
  226. DntEmptyString,
  227. "Setup was unable to locate such a drive with the required amount of free",
  228. "space.",
  229. NULL
  230. }
  231. };
  232. SCREEN
  233. DnsNoSpaceOnSyspart = { 3,5,
  234. { "There is not enough space on your startup drive (usually C:)",
  235. "for floppyless operation. Floppyless operation requires at least",
  236. "3.5 MB (3,641,856 bytes) of free space on that drive.",
  237. NULL
  238. }
  239. };
  240. //
  241. // Missing info in inf file
  242. //
  243. SCREEN
  244. DnsBadInfSection = { 3,5,
  245. { "The [%s] section of the Setup information file is",
  246. "not present or is corrupt. Contact your system administrator.",
  247. NULL
  248. }
  249. };
  250. //
  251. // Couldn't create directory
  252. //
  253. SCREEN
  254. DnsCantCreateDir = { 3,5,
  255. { "Setup was unable to create the following directory on the target drive:",
  256. DntEmptyString,
  257. "%s",
  258. DntEmptyString,
  259. "Check the target drive and make sure no files exist with names that",
  260. "coincide with the target directory. Also check cabling to the drive.",
  261. NULL
  262. }
  263. };
  264. //
  265. // Error copying a file
  266. //
  267. SCREEN
  268. DnsCopyError = { 4,5,
  269. { "Setup was unable to copy the following file:",
  270. DntEmptyString,
  271. DntEmptyString, // see DnCopyError (dnutil.c)
  272. DntEmptyString,
  273. DntEmptyString,
  274. " Press ENTER to retry the copy operation.",
  275. " Press ESC to ignore the error and continue Setup.",
  276. " Press F3 to exit Setup.",
  277. DntEmptyString,
  278. "Note: If you choose to ignore the error and continue you may encounter",
  279. "errors later in Setup.",
  280. NULL
  281. }
  282. },
  283. DnsVerifyError = { 4,5,
  284. { "The copy made by Setup of the file listed below is not identical to the",
  285. "original. This may be the result of network errors, floppy disk problems,",
  286. "or other hardware-related trouble.",
  287. DntEmptyString,
  288. DntEmptyString, // see DnCopyError (dnutil.c)
  289. DntEmptyString,
  290. DntEmptyString,
  291. " Press ENTER to retry the copy operation.",
  292. " Press ESC to ignore the error and continue Setup.",
  293. " Press F3 to exit Setup.",
  294. DntEmptyString,
  295. "Note: If you choose to ignore the error and continue you may encounter",
  296. "errors later in Setup.",
  297. NULL
  298. }
  299. };
  300. SCREEN DnsSureSkipFile = { 4,5,
  301. { "Ignoring the error means that this file will not be copied.",
  302. "This option is intended for advanced users who understand",
  303. "the ramifications of missing system files.",
  304. DntEmptyString,
  305. " Press ENTER to retry the copy operation.",
  306. " Press X to skip this file.",
  307. DntEmptyString,
  308. "Note: If you skip the file, Setup cannot guarantee",
  309. "successful installation or upgrade of Windows.",
  310. NULL
  311. }
  312. };
  313. //
  314. // Wait while setup cleans up previous local source trees.
  315. //
  316. SCREEN
  317. DnsWaitCleanup =
  318. { 12,6,
  319. { "Please wait while Setup removes previous temporary files.",
  320. NULL
  321. }
  322. };
  323. //
  324. // Wait while setup copies files
  325. //
  326. SCREEN
  327. DnsWaitCopying = { 13,6,
  328. { "Please wait while Setup copies files to your hard disk.",
  329. NULL
  330. }
  331. },
  332. DnsWaitCopyFlop= { 13,6,
  333. { "Please wait while Setup copies files to the floppy disk.",
  334. NULL
  335. }
  336. };
  337. //
  338. // Setup boot floppy errors/prompts.
  339. //
  340. SCREEN
  341. DnsNeedFloppyDisk3_0 = { 4,4,
  342. { "Setup requires you to provide four formatted, blank high-density floppy",
  343. "disks. Setup will refer to these disks as \"Windows Setup",
  344. "Boot Disk,\" \"Windows Setup Disk #2,\" \"Windows",
  345. " Setup Disk #3\" and \"Windows Setup Disk #4.\"",
  346. DntEmptyString,
  347. "Please insert one of these four disks into drive A:.",
  348. "This disk will become \"Windows Setup Disk #4.\"",
  349. NULL
  350. }
  351. };
  352. SCREEN
  353. DnsNeedFloppyDisk3_1 = { 4,4,
  354. { "Please insert a formatted, blank high-density floppy disk into drive A:.",
  355. "This disk will become \"Windows Setup Disk #4.\"",
  356. NULL
  357. }
  358. };
  359. SCREEN
  360. DnsNeedFloppyDisk2_0 = { 4,4,
  361. { "Please insert a formatted, blank high-density floppy disk into drive A:.",
  362. "This disk will become \"Windows Setup Disk #3.\"",
  363. NULL
  364. }
  365. };
  366. SCREEN
  367. DnsNeedFloppyDisk1_0 = { 4,4,
  368. { "Please insert a formatted, blank high-density floppy disk into drive A:.",
  369. "This disk will become \"Windows Setup Disk #2.\"",
  370. NULL
  371. }
  372. };
  373. SCREEN
  374. DnsNeedFloppyDisk0_0 = { 4,4,
  375. { "Please insert a formatted, blank high-density floppy disk into drive A:.",
  376. "This disk will become \"Windows Setup Boot Disk.\"",
  377. NULL
  378. }
  379. };
  380. SCREEN
  381. DnsNeedSFloppyDsk3_0 = { 4,4,
  382. { "Setup requires you to provide four formatted, blank high-density floppy",
  383. "disks. Setup will refer to these disks as \"Windows Setup",
  384. "Boot Disk,\" \"Windows Setup Disk #2,\" \"Windows",
  385. "Setup Disk #3,\" and \"Windows Setup Disk #4.\"",
  386. DntEmptyString,
  387. "Please insert one of these four disks into drive A:.",
  388. "This disk will become \"Windows Setup Disk #4.\"",
  389. NULL
  390. }
  391. };
  392. SCREEN
  393. DnsNeedSFloppyDsk3_1 = { 4,4,
  394. { "Please insert a formatted, blank high-density floppy disk into drive A:.",
  395. "This disk will become \"Windows Setup Disk #4.\"",
  396. NULL
  397. }
  398. };
  399. SCREEN
  400. DnsNeedSFloppyDsk2_0 = { 4,4,
  401. { "Please insert a formatted, blank high-density floppy disk into drive A:.",
  402. "This disk will become \"Windows Setup Disk #3.\"",
  403. NULL
  404. }
  405. };
  406. SCREEN
  407. DnsNeedSFloppyDsk1_0 = { 4,4,
  408. { "Please insert a formatted, blank high-density floppy disk into drive A:.",
  409. "This disk will become \"Windows Setup Disk #2.\"",
  410. NULL
  411. }
  412. };
  413. SCREEN
  414. DnsNeedSFloppyDsk0_0 = { 4,4,
  415. { "Please insert a formatted, blank high-density floppy disk into drive A:.",
  416. "This disk will become \"Windows Setup Boot Disk.\"",
  417. NULL
  418. }
  419. };
  420. //
  421. // The floppy is not formatted.
  422. //
  423. SCREEN
  424. DnsFloppyNotFormatted = { 3,4,
  425. { "The floppy disk you have provided is not formatted for use with MS-DOS.",
  426. "Setup is unable to use this disk.",
  427. NULL
  428. }
  429. };
  430. //
  431. // We think the floppy is not formatted with a standard format.
  432. //
  433. SCREEN
  434. DnsFloppyBadFormat = { 3,4,
  435. { "This floppy disk is not formatted high-density, not formatted with a",
  436. "standard MS-DOS format, or is corrupted. Setup is unable to use this disk.",
  437. NULL
  438. }
  439. };
  440. //
  441. // We can't determine the free space on the floppy.
  442. //
  443. SCREEN
  444. DnsFloppyCantGetSpace = { 3,4,
  445. { "Setup is unable to determine the amount of free space on the floppy disk",
  446. "you have provided. Setup is unable to use this disk.",
  447. NULL
  448. }
  449. };
  450. //
  451. // The floppy is not blank.
  452. //
  453. SCREEN
  454. DnsFloppyNotBlank = { 3,4,
  455. { "The floppy you have provided is not high-density or is not blank.",
  456. "Setup is unable to use this disk.",
  457. NULL
  458. }
  459. };
  460. //
  461. // Couldn't write the boot sector of the floppy.
  462. //
  463. SCREEN
  464. DnsFloppyWriteBS = { 3,4,
  465. { "Setup was unable to write to the system area of the floppy disk you have",
  466. "provided. The disk is probably unusable.",
  467. NULL
  468. }
  469. };
  470. //
  471. // Verify of boot sector on floppy failed (ie, what we read back is not the
  472. // same as what we wrote out).
  473. //
  474. SCREEN
  475. DnsFloppyVerifyBS = { 3,4,
  476. { "The data Setup read from the system area of the floppy disk does not match",
  477. "the data that was written, or Setup was unable to read the system area of",
  478. "the floppy disk for verification.",
  479. DntEmptyString,
  480. "This is caused by one or more of the following conditions:",
  481. DntEmptyString,
  482. " Your computer has been infected by a virus.",
  483. " The floppy disk you have provided is damaged.",
  484. " A hardware or configuration problem exists with the floppy disk drive.",
  485. NULL
  486. }
  487. };
  488. //
  489. // We couldn't write to the floppy drive to create winnt.sif.
  490. //
  491. SCREEN
  492. DnsCantWriteFloppy = { 3,5,
  493. { "Setup was unable to write to the floppy disk in drive A:. The floppy disk",
  494. "may be damaged. Try a different floppy disk.",
  495. NULL
  496. }
  497. };
  498. //
  499. // Exit confirmation dialog
  500. //
  501. SCREEN
  502. DnsExitDialog = { 13,6,
  503. { "����������������������������������������������������ͻ",
  504. "� Windows is not completely set up on your �",
  505. "� computer. If you quit Setup now, you will need �",
  506. "� to run Setup again to set up Windows. �",
  507. "� �",
  508. "�  Press ENTER to continue Setup. �",
  509. "�  Press F3 to quit Setup. �",
  510. "����������������������������������������������������ĺ",
  511. "� F3=Exit ENTER=Continue �",
  512. "����������������������������������������������������ͼ",
  513. NULL
  514. }
  515. };
  516. //
  517. // About to reboot machine and continue setup
  518. //
  519. SCREEN
  520. DnsAboutToRebootW =
  521. { 3,5,
  522. { "The MS-DOS based portion of Setup is complete.",
  523. "Setup will now restart your computer. After your computer restarts,",
  524. "Windows Setup will continue.",
  525. DntEmptyString,
  526. "Ensure that the floppy you provided as \"Windows Setup",
  527. "Boot Disk\" is inserted into drive A: before continuing.",
  528. DntEmptyString,
  529. "Press ENTER to restart your computer and continue Windows Setup.",
  530. NULL
  531. }
  532. },
  533. DnsAboutToRebootS =
  534. { 3,5,
  535. { "The MS-DOS based portion of Setup is complete.",
  536. "Setup will now restart your computer. After your computer restarts,",
  537. "Windows Setup will continue.",
  538. DntEmptyString,
  539. "Ensure that the floppy you provided as \"Windows Setup",
  540. "Boot Disk\" is inserted into drive A: before continuing.",
  541. DntEmptyString,
  542. "Press ENTER to restart your computer and continue Windows Setup.",
  543. NULL
  544. }
  545. },
  546. DnsAboutToRebootX =
  547. { 3,5,
  548. { "The MS-DOS based portion of Setup is complete.",
  549. "Setup will now restart your computer. After your computer restarts,",
  550. "Windows Setup will continue.",
  551. DntEmptyString,
  552. "If there is a floppy disk in drive A:, remove it now.",
  553. DntEmptyString,
  554. "Press ENTER to restart your computer and continue Windows Setup.",
  555. NULL
  556. }
  557. };
  558. //
  559. // Need another set for '/w' switch since we can't reboot from within Windows.
  560. //
  561. SCREEN
  562. DnsAboutToExitW =
  563. { 3,5,
  564. { "The MS-DOS based portion of Setup is complete.",
  565. "You will now need to restart your computer. After your computer restarts,",
  566. "Windows Setup will continue.",
  567. DntEmptyString,
  568. "Ensure that the floppy you provided as \"Windows Setup",
  569. "Boot Disk\" is inserted into drive A: before continuing.",
  570. DntEmptyString,
  571. "Press ENTER to return to MS-DOS, then restart your computer to continue",
  572. "Windows Setup.",
  573. NULL
  574. }
  575. },
  576. DnsAboutToExitS =
  577. { 3,5,
  578. { "The MS-DOS based portion of Setup is complete.",
  579. "You will now need to restart your computer. After your computer restarts,",
  580. "Windows Setup will continue.",
  581. DntEmptyString,
  582. "Ensure that the floppy you provided as \"Windows Setup",
  583. "Boot Disk\" is inserted into drive A: before continuing.",
  584. DntEmptyString,
  585. "Press ENTER to return to MS-DOS, then restart your computer to continue",
  586. "Windows Setup.",
  587. NULL
  588. }
  589. },
  590. DnsAboutToExitX =
  591. { 3,5,
  592. { "The MS-DOS based portion of Setup is complete.",
  593. "You will now need to restart your computer. After your computer restarts,",
  594. "Windows Setup will continue.",
  595. DntEmptyString,
  596. "If there is a floppy disk in drive A:, remove it now.",
  597. DntEmptyString,
  598. "Press ENTER to return to MS-DOS, then restart your computer to continue",
  599. "Windows Setup.",
  600. NULL
  601. }
  602. };
  603. //
  604. // Gas gauge
  605. //
  606. SCREEN
  607. DnsGauge = { 7,15,
  608. { "����������������������������������������������������������������ͻ",
  609. "� Setup is copying files... �",
  610. "� �",
  611. "� ��������������������������������������������������Ŀ �",
  612. "� � � �",
  613. "� ���������������������������������������������������� �",
  614. "����������������������������������������������������������������ͼ",
  615. NULL
  616. }
  617. };
  618. //
  619. // Error screens for initial checks on the machine environment
  620. //
  621. SCREEN
  622. DnsBadDosVersion = { 3,5,
  623. { "This program requires MS-DOS version 5.0 or higher to run.",
  624. NULL
  625. }
  626. },
  627. DnsRequiresFloppy = { 3,5,
  628. #ifdef ALLOW_525
  629. { "Setup has determined that floppy drive A: is non-existent or is a low",
  630. "density drive. A drive with a capacity of 1.2 Megabytes or higher is",
  631. "required to run Setup.",
  632. #else
  633. { "Setup has determined that floppy drive A: is non-existent or is not",
  634. "a high-density 3.5\" drive. An A: drive with a capacity of 1.44 Megabytes",
  635. "or higher is required for Setup operation with floppies.",
  636. DntEmptyString,
  637. "To install Windows without using floppies, restart this program",
  638. "and specify /b on the command line.",
  639. #endif
  640. NULL
  641. }
  642. },
  643. DnsRequires486 = { 3,5,
  644. { "Setup has determined that this computer does not contain an 80486 or",
  645. "later CPU. Windows cannot run on this computer.",
  646. NULL
  647. }
  648. },
  649. DnsCantRunOnNt = { 3,5,
  650. { "This program does not run on any 32-bit version of Windows.",
  651. DntEmptyString,
  652. "Use WINNT32.EXE instead.",
  653. NULL
  654. }
  655. },
  656. DnsNotEnoughMemory = { 3,5,
  657. { "Setup has determined that there is not enough memory installed in",
  658. "this computer for Windows.",
  659. DntEmptyString,
  660. "Memory required: %lu%s MB",
  661. "Memory detected: %lu%s MB",
  662. NULL
  663. }
  664. };
  665. //
  666. // Screens used when removing existing nt files
  667. //
  668. SCREEN
  669. DnsConfirmRemoveNt = { 5,5,
  670. { "You have asked Setup to remove Windows files from the directory",
  671. "named below. The Windows installation in this directory will be",
  672. "permanently destroyed.",
  673. DntEmptyString,
  674. "%s",
  675. DntEmptyString,
  676. DntEmptyString,
  677. " Press F3 to exit Setup without removing any files.",
  678. " Press X to remove Windows files from the above directory.",
  679. NULL
  680. }
  681. },
  682. DnsCantOpenLogFile = { 3,5,
  683. { "Setup was unable to open the setup log file named below.",
  684. DntEmptyString,
  685. "%s",
  686. DntEmptyString,
  687. "Setup is unable to remove Windows files from the specified directory.",
  688. NULL
  689. }
  690. },
  691. DnsLogFileCorrupt = { 3,5,
  692. { "Setup is unable to find the %s section in the setup",
  693. "log file named below.",
  694. DntEmptyString,
  695. "%s",
  696. DntEmptyString,
  697. "Setup is unable to remove Windows files from the specified directory.",
  698. NULL
  699. }
  700. },
  701. DnsRemovingNtFiles = { 3,5,
  702. { " Please wait while Setup removes Windows files.",
  703. NULL
  704. }
  705. };
  706. SCREEN
  707. DnsNtBootSect = { 3,5,
  708. { "Setup was unable to install Windows Boot Loader.",
  709. DntEmptyString,
  710. "Ensure that your C: drive is formatted and that the drive is not",
  711. "damaged.",
  712. NULL
  713. }
  714. };
  715. SCREEN
  716. DnsOpenReadScript = { 3,5,
  717. { "The script file specified with the /u command line switch",
  718. "could not be accessed.",
  719. DntEmptyString,
  720. "Unattended operation cannot continue.",
  721. NULL
  722. }
  723. };
  724. SCREEN
  725. DnsParseScriptFile = { 3,5,
  726. { "The script file specified with the /u command line switch",
  727. DntEmptyString,
  728. "%s",
  729. DntEmptyString,
  730. "contains a syntax error on line %u.",
  731. DntEmptyString,
  732. NULL
  733. }
  734. };
  735. SCREEN
  736. DnsBootMsgsTooLarge = { 3,5,
  737. { "An internal Setup error has occurred.",
  738. DntEmptyString,
  739. "The translated boot messages are too long.",
  740. NULL
  741. }
  742. };
  743. SCREEN
  744. DnsNoSwapDrive = { 3,5,
  745. { "An internal Setup error has occurred.",
  746. DntEmptyString,
  747. "Could not find a place for a swap file.",
  748. NULL
  749. }
  750. };
  751. SCREEN
  752. DnsNoSmartdrv = { 3,5,
  753. { "Setup did not detect SmartDrive on your computer. SmartDrive will",
  754. "greatly improve the performance of this phase of Windows Setup.",
  755. DntEmptyString,
  756. "You should exit now, start SmartDrive, and then restart Setup.",
  757. "See your DOS documentation for details about SmartDrive.",
  758. DntEmptyString,
  759. " Press F3 to exit Setup.",
  760. " Press ENTER to continue without SmartDrive.",
  761. NULL
  762. }
  763. };
  764. //
  765. // Boot messages. These go in the fat and fat32 boot sectors.
  766. //
  767. CHAR BootMsgNtldrIsMissing[] = "NTLDR is missing";
  768. CHAR BootMsgDiskError[] = "Disk error";
  769. CHAR BootMsgPressKey[] = "Press any key to restart";