|
|
1.1 root 1: ;-----------------------------------------------------------------------
2: ; SOURCE MEDIA DESCRIPTIONS
3: ; -------------------------
4: ; The OEM should list all the diskette labels here. The source media
5: ; description is used during copy to prompt the user for a diskette
6: ; if the source is diskettes.
7: ;
8: ; Use 1 = "Diskette 1 Label"
9: ; 2 = "Diskette 2 Label"
10: ; ...
11: ;-----------------------------------------------------------------------
12:
13: [Source Media Descriptions]
14: 2 = "Diskette Labelled Win32 SDK"
15:
16: ;-----------------------------------------------------------------------
17: ; OPTION TYPE
18: ; -----------
19: ; This identifies the Option type we are dealing with. The different
20: ; possible types are:
21: ;
22: ; COMPUTER, VIDEO, POINTER, KEYBOARD, LAYOUT, SCSI, PRINTER, ...
23: ;-----------------------------------------------------------------------
24:
25: [Identification]
26: OptionType = LAYOUT
27:
28: ;-----------------------------------------------------------------------
29: ; LANGUAGES SUPPORTED
30: ; -------------------
31: ;
32: ; The languages supported by the OEM INF, For every language supported
33: ; we need to have a separate text section for every displayable text
34: ; section.
35: ;
36: ;-----------------------------------------------------------------------
37:
38: [LanguagesSupported]
39: ENG
40:
41: ;-----------------------------------------------------------------------
42: ; OPTION LIST
43: ; -----------
44: ; This section lists the OEM Option key names. These keys are locale
45: ; independent and used to represent the option in a locale independent
46: ; manner.
47: ;
48: ;-----------------------------------------------------------------------
49:
50: [Options]
51: 00000419 = kbdru.dll ; Russian
52:
53:
54:
55: ;-----------------------------------------------------------------------
56: ; OPTION TEXT SECTION
57: ; -------------------
58: ; These are text strings used to identify the option to the user. There
59: ; are separate sections for each language supported. The format of the
60: ; section name is "OptionsText" concatenated with the Language represented
61: ; by the section.
62: ;
63: ;-----------------------------------------------------------------------
64:
65: [OptionsTextENG]
66: 00000419 = "Russian"
67:
68:
69: ;---------------------------------------------------------------------------
70: ; 1. Identify
71: ;
72: ; DESCRIPTION: To verify that this INF deals with the same type of options
73: ; as we are choosing currently.
74: ;
75: ; INPUT: None
76: ;
77: ; OUTPUT: $($R0): STATUS: STATUS_SUCCESSFUL
78: ; $($R1): Option Type (COMPUTER ...)
79: ; $($R2): Diskette description
80: ;---------------------------------------------------------------------------
81:
82: [Identify]
83: ;
84: ;
85: read-syms Identification
86:
87: set Status = STATUS_SUCCESSFUL
88: set Identifier = $(OptionType)
89: set Media = #("Source Media Descriptions", 1, 1)
90:
91: Return $(Status) $(Identifier) $(Media)
92:
93:
94:
95: ;------------------------------------------------------------------------
96: ; 2. ReturnOptions:
97: ;
98: ; DESCRIPTION: To return the option list supported by this INF and the
99: ; localised text list representing the options.
100: ;
101: ;
102: ; INPUT: $($0): Language used. ( ENG | FRN | ... )
103: ;
104: ; OUTPUT: $($R0): STATUS: STATUS_SUCCESSFUL |
105: ; STATUS_NOLANGUAGE
106: ; STATUS_FAILED
107: ;
108: ; $($R1): Option List
109: ; $($R2): Option Text List
110: ;------------------------------------------------------------------------
111:
112: [ReturnOptions]
113: ;
114: ;
115: set Status = STATUS_FAILED
116: set OptionList = {}
117: set OptionTextList = {}
118:
119: ;
120: ; Check if the language requested is supported
121: ;
122: set LanguageList = ^(LanguagesSupported, 1)
123: Ifcontains(i) $($0) in $(LanguageList)
124: goto returnoptions
125: else
126: set Status = STATUS_NOLANGUAGE
127: goto finish_ReturnOptions
128: endif
129:
130: ;
131: ; form a list of all the options and another of the text representing
132: ;
133:
134: returnoptions = +
135: set OptionList = ^(Options, 0)
136: set OptionTextList = ^(OptionsText$($0), 1)
137: set Status = STATUS_SUCCESSFUL
138:
139: finish_ReturnOptions = +
140: Return $(Status) $(OptionList) $(OptionTextList)
141:
142:
143:
144: ;***************************************
145: ; INTERNAL INSTALL ENTRY POINT FROM INF
146: ;***************************************
147: ;
148: ; 3. InstallOption:
149: ;
150: ; FUNCTION: To copy files representing OEM Options
151: ; To configure the installed option
152: ; To update the registry for the installed option
153: ;
154: ; INPUT: $($0): Language to use
155: ; $($1): OptionID to install
156: ; $($2): SourceDirectory
157: ; $($4): AddCopy (YES | NO)
158: ; $($5): DoCopy (YES | NO)
159: ; $($6): DoConfig (YES | NO)
160: ;
161: ; OUTPUT: $($R0): STATUS: STATUS_SUCCESSFUL |
162: ; STATUS_NOLANGUAGE |
163: ; STATUS_USERCANCEL |
164: ; STATUS_FAILED
165: ;
166:
167: [InstallOption]
168:
169: ;
170: ; Set default values for
171: ;
172: set Status = STATUS_FAILED
173:
174: ;
175: ; extract parameters
176: ;
177: set Option = $($1)
178: set SrcDir = $($2)
179: set AddCopy = $($3)
180: set DoCopy = $($4)
181: set DoConfig = $($5)
182:
183: ;
184: ; Check if the language requested is supported
185: ;
186: set LanguageList = ^(LanguagesSupported, 1)
187: Ifcontains(i) $($0) in $(LanguageList)
188: else
189: set Status = STATUS_NOLANGUAGE
190: goto finish_InstallOption
191: endif
192:
193: ;
194: ; check to see if Option is supported.
195: ;
196:
197: set OptionList = ^(Options, 0)
198: ifcontains $(Option) in $(OptionList)
199: else
200: goto finish_InstallOption
201: endif
202: set OptionList = ""
203:
204:
205: set OptionFile = #(Options, $(Option), 1)
206:
207: installtheoption = +
208: ;
209: ; Code to add files to copy list
210: ;
211:
212: ifstr(i) $(AddCopy) == "YES"
213: install Install-AddCopyOption
214: ifstr(i) $(STF_INSTALL_OUTCOME) != "STF_SUCCESS"
215: Debug-Output "Adding video files to copy list failed"
216: goto finish_InstallOption
217: endif
218: endif
219:
220: ifstr(i) $(DoCopy) == "YES"
221: read-syms ProgressCopy$($0)
222: install Install-DoCopyOption
223: ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_FAILURE"
224: Debug-Output "Copying files failed"
225: goto finish_InstallOption
226: else-ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_USERQUIT"
227: set Status = STATUS_USERCANCEL
228: goto finish_InstallOption
229: endif
230: endif
231:
232: ifstr(i) $(DoConfig) == "YES"
233: shell "registry.inf" MakeLayoutEntry $(Option) $(OptionFile)
234:
235: ifint $(ShellCode) != 0
236: Debug-Output "Couldn't execute MakeLayoutEntry in registry.inf"
237: goto finish_InstallOption
238: endif
239:
240: ifstr(i) $($R0) != STATUS_SUCCESSFUL
241: Debug-Output "MakeLayoutEntry failed"
242: goto finish_InstallOption
243: endif
244: endif
245:
246: set Status = STATUS_SUCCESSFUL
247:
248: finish_InstallOption = +
249: Return $(Status)
250:
251:
252:
253: [Install-AddCopyOption]
254:
255: ;
256: ; Add the files to the copy list
257: ;
258: AddSectionKeyFileToCopyList Files-Layout +
259: $(Option) +
260: $(SrcDir) +
261: $(!STF_WINDOWSSYSPATH)
262: exit
263:
264:
265: [Install-DoCopyOption]
266:
267: ;
268: ; Copy files in the copy list
269: ;
270: CopyFilesInCopyList
271: exit
272:
273: ;**************************************************************************
274: ; PROGRESS GUAGE VARIABLES
275: ;**************************************************************************
276:
277: [ProgressCopyENG]
278: ProCaption = "Windows NT Setup"
279: ProCancel = "Cance&l"
280: ProCancelMsg = "Windows NT is not correcly installed. Are you sure you want "+
281: "to cancel copying files?"
282: ProCancelCap = "Setup Message"
283: ProText1 = "Copying:"
284: ProText2 = "To:"
285:
286:
287: ;***************************************************************
288: ; EXTERNAL INSTALL ENTRY POINT FROM CONTROL PANEL
289: ;***************************************************************
290:
291: ;
292:
293: ;
294: ; 4. ExternalInstallOption:
295: ;
296: ; FUNCTION: To copy files representing OEM Options
297: ; To configure the installed option
298: ; To update the registry for the installed option
299: ;
300: ; INPUT: /t STF_LANGUAGE = Language to use (ENG)
301: ; /t OPTION = Option to install (eg. 0010209)
302: ; /t ADDCOPY = YES | NO
303: ; /t DOCOPY = YES | NO
304: ; /t DOCONFIG = YES | NO
305: ;
306: ; OUTPUT: Exit code from process = 0 if okay
307: ; Anything else --> Error
308: ;
309:
310:
311: [ExternalInstallOption]
312: ;
313: ; Set up global variables needed by install option
314: ;
315: set Exit_Code = $(!SETUP_ERROR_GENERAL)
316: install LoadSetupLibrary
317:
318: ; check externally passed parameters
319:
320: ifstr(i) $(STF_LANGUAGE) == ""
321: goto end
322: else-ifstr(i) $(OPTION) == ""
323: goto end
324: else-ifstr(i) $(ADDCOPY) == ""
325: goto end
326: else-ifstr(i) $(DOCOPY) == ""
327: goto end
328: else-ifstr(i) $(DOCONFIG) == ""
329: goto end
330: endif
331:
332:
333: read-syms UiVars
334: detect UiVars
335:
336: ;
337: ; ask for the setup sources
338: ;
339: shell "subroutn.inf" DoAskSource $(STF_SRCDIR)
340: ifint $(ShellCode) != 0
341: Debug-Output "shelling DoAskSource failed"
342: goto end
343: endif
344: ifstr(i) $($R0) == STATUS_SUCCESSFUL
345: set STF_SRCDIR = $($R1)
346: else
347: goto end
348: endif
349:
350: ;
351: shell "" InstallOption $(STF_LANGUAGE) $(OPTION) $(STF_SRCDIR) $(ADDCOPY) $(DOCOPY) $(DOCONFIG)
352: ifint $(ShellCode) != 0
353: Debug-Output "Execing Configuring hardware options failed"
354: goto end
355: endif
356: ifstr(i) $($R0) == STATUS_SUCCESSFUL
357: set Exit_Code = $(!SETUP_ERROR_SUCCESS)
358: else-ifstr(i) $($R0) == STATUS_USERCANCEL
359: set Exit_Code = $(!SETUP_ERROR_USERCANCEL)
360: endif
361:
362: end =+
363: install FreeSetupLibrary
364: exit
365:
366: [LoadSetupLibrary]
367: LoadLibrary "x" $(!STF_CWDDIR)setupdll.dll !LIBHANDLE
368: exit
369:
370: [FreeSetupLibrary]
371: FreeLibrary $(!LIBHANDLE)
372: exit
373:
374: [UiVars]
375:
376: STF_CONTROLSET = CurrentControlSet
377: STF_WINDOWSPATH = "" ? $(!LIBHANDLE) GetWindowsNtDir
378: STF_WINDOWSSYSPATH = "" ? $(!LIBHANDLE) GetWindowsNtSysDir
379:
380:
381: ;*************************************************************************
382: ; FILE LISTS
383: ;*************************************************************************
384:
385: [Files-Layout]
386: 00000419 = 2,kbdru.dll ; Russian
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.