diff options
Diffstat (limited to 'src/samples/Dtf/Documents/Reference/helplink.js')
-rw-r--r-- | src/samples/Dtf/Documents/Reference/helplink.js | 184 |
1 files changed, 184 insertions, 0 deletions
diff --git a/src/samples/Dtf/Documents/Reference/helplink.js b/src/samples/Dtf/Documents/Reference/helplink.js new file mode 100644 index 00000000..a4989824 --- /dev/null +++ b/src/samples/Dtf/Documents/Reference/helplink.js | |||
@@ -0,0 +1,184 @@ | |||
1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
2 | |||
3 | FixHelpLinks(); | ||
4 | |||
5 | function GetHelpCode(apiName) | ||
6 | { | ||
7 | switch (apiName.toLowerCase()) | ||
8 | { | ||
9 | case "msiadvertiseproduct": return 370056; | ||
10 | case "msiadvertiseproductex": return 370057; | ||
11 | case "msiapplymultiplepatches": return 370059; | ||
12 | case "msiapplypatch": return 370060; | ||
13 | case "msibegintransaction": return 736312; | ||
14 | case "msiclosehandle": return 370067; | ||
15 | case "msicollectuserinfo": return 370068; | ||
16 | case "msiconfigurefeature": return 370069; | ||
17 | case "msiconfigureproduct": return 370070; | ||
18 | case "msiconfigureproductex": return 370071; | ||
19 | case "msicreaterecord": return 370072; | ||
20 | case "msicreatetransformsummaryinfo": return 370073; | ||
21 | case "msidatabaseapplytransform": return 370074; | ||
22 | case "msidatabasecommit": return 370075; | ||
23 | case "msidatabaseexport": return 370076; | ||
24 | case "msidatabasegeneratetransform": return 370077; | ||
25 | case "msidatabasegetprimarykeys": return 370078; | ||
26 | case "msidatabaseimport": return 370079; | ||
27 | case "msidatabaseistablepersistent": return 370080; | ||
28 | case "msidatabasemerge": return 370081; | ||
29 | case "msidatabaseopenview": return 370082; | ||
30 | case "msidetermineapplicablepatches": return 370084; | ||
31 | case "msideterminepatchsequence": return 370085; | ||
32 | case "msidoaction": return 370090; | ||
33 | case "msienablelog": return 370091; | ||
34 | case "msiendtransaction": return 736318; | ||
35 | case "msienumclients": return 370094; | ||
36 | case "msienumcomponentcosts": return 370095; | ||
37 | case "msienumcomponentqualifiers": return 370096; | ||
38 | case "msienumcomponents": return 370097; | ||
39 | case "msienumfeatures": return 370098; | ||
40 | case "msienumpatches": return 370099; | ||
41 | case "msienumpatchesex": return 370100; | ||
42 | case "msienumproducts": return 370101; | ||
43 | case "msienumproductsex": return 370102; | ||
44 | case "msienumrelatedproducts": return 370103; | ||
45 | case "msievaluatecondition": return 370104; | ||
46 | case "msiextractpatchxmldata": return 370105; | ||
47 | case "msiformatrecord": return 370109; | ||
48 | case "msigetactivedatabase": return 370110; | ||
49 | case "msigetcomponentpath": return 370112; | ||
50 | case "msigetcomponentstate": return 370113; | ||
51 | case "msigetdatabasestate": return 370114; | ||
52 | case "msigetfeaturecost": return 370115; | ||
53 | case "msigetfeatureinfo": return 370116; | ||
54 | case "msigetfeaturestate": return 370117; | ||
55 | case "msigetfeatureusage": return 370118; | ||
56 | case "msigetfeaturevalidstates": return 370119; | ||
57 | case "msigetfilehash": return 370120; | ||
58 | case "msigetfileversion": return 370122; | ||
59 | case "msigetlanguage": return 370123; | ||
60 | case "msigetlasterrorrecord": return 370124; | ||
61 | case "msigetmode": return 370125; | ||
62 | case "msigetpatchfilelist": return 370126; | ||
63 | case "msigetpatchinfo": return 370127; | ||
64 | case "msigetpatchinfoex": return 370128; | ||
65 | case "msigetproductcode": return 370129; | ||
66 | case "msigetproductinfo": return 370130; | ||
67 | case "msigetproductinfoex": return 370131; | ||
68 | case "msigetproductinfofromscript": return 370132; | ||
69 | case "msigetproductproperty": return 370133; | ||
70 | case "msigetproperty": return 370134; | ||
71 | case "msigetshortcuttarget": return 370299; | ||
72 | case "msigetsourcepath": return 370300; | ||
73 | case "msigetsummaryinformation": return 370301; | ||
74 | case "msigettargetpath": return 370303; | ||
75 | case "msiinstallmissingcomponent": return 370311; | ||
76 | case "msiinstallmissingfile": return 370313; | ||
77 | case "msiinstallproduct": return 370315; | ||
78 | case "msijointransaction": return 736319; | ||
79 | case "msilocatecomponent": return 370320; | ||
80 | case "msinotifysidchange": return 370328; | ||
81 | case "msiopendatabase": return 370338; | ||
82 | case "msiopenpackage": return 370339; | ||
83 | case "msiopenpackageex": return 370340; | ||
84 | case "msiopenproduct": return 370341; | ||
85 | case "msiprocessadvertisescript": return 370353; | ||
86 | case "msiprocessmessage": return 370354; | ||
87 | case "msiprovideassembly": return 370355; | ||
88 | case "msiprovidecomponent": return 370356; | ||
89 | case "msiprovidequalifiedcomponent": return 370357; | ||
90 | case "msiprovidequalifiedcomponentex":return 370358; | ||
91 | case "msiquerycomponnetstate": return 370360; | ||
92 | case "msiqueryfeaturestate": return 370361; | ||
93 | case "msiqueryfeaturestateex": return 370362; | ||
94 | case "msiqueryproductstate": return 370363; | ||
95 | case "msirecordcleardata": return 370364; | ||
96 | case "msirecorddatasize": return 370365; | ||
97 | case "msirecordgetfieldcount": return 370366; | ||
98 | case "msirecordgetinteger": return 370367; | ||
99 | case "msirecordgetstring": return 370368; | ||
100 | case "msirecordisnull": return 370369; | ||
101 | case "msirecordreadstream": return 370370; | ||
102 | case "msirecordsetinteger": return 370371; | ||
103 | case "msirecordsetstream": return 370372; | ||
104 | case "msirecordsetstring": return 370373; | ||
105 | case "msireinstallfeature": return 370374; | ||
106 | case "msireinstallproduct": return 370375; | ||
107 | case "msiremovepatches": return 370376; | ||
108 | case "msisequence": return 370382; | ||
109 | case "msisetcomponentstate": return 370383; | ||
110 | case "msisetexternalui": return 370384; | ||
111 | case "msisetexternaluirecord": return 370385; | ||
112 | case "msisetfeatureattributes": return 370386; | ||
113 | case "msisetfeaturestate": return 370387; | ||
114 | case "msisetinstalllevel": return 370388; | ||
115 | case "msisetinternalui": return 370389; | ||
116 | case "msisetmode": return 370390; | ||
117 | case "msisetproperty": return 370391; | ||
118 | case "msisettargetpath": return 370392; | ||
119 | case "msisourcelistaddmediadisk": return 370394; | ||
120 | case "msisourcelistaddsource": return 370395; | ||
121 | case "msisourcelistaddsourceex": return 370396; | ||
122 | case "msisourcelistclearall": return 370397; | ||
123 | case "msisourcelistclearallex": return 370398; | ||
124 | case "msisourcelistclearmediadisk": return 370399; | ||
125 | case "msisourcelistclearsource": return 370401; | ||
126 | case "msisourcelistenummediadisks": return 370402; | ||
127 | case "msisourcelistenumsources": return 370403; | ||
128 | case "msisourcelistforceresolution": return 370404; | ||
129 | case "msisourcelistforceresolutionex":return 370405; | ||
130 | case "msisourcelistgetinfo": return 370406; | ||
131 | case "msisourcelistsetinfo": return 370407; | ||
132 | case "msisummaryinfogetproperty": return 370409; | ||
133 | case "msisummaryinfopersist": return 370490; | ||
134 | case "msisummaryinfosetproperty": return 370491; | ||
135 | case "msiusefeature": return 370502; | ||
136 | case "msiusefeatureex": return 370503; | ||
137 | case "msiverifydiskspace": return 370506; | ||
138 | case "msiverifypackage": return 370508; | ||
139 | case "msiviewexecute": return 370513; | ||
140 | case "msiviewfetch": return 370514; | ||
141 | case "msiviewgetcolumninfo": return 370516; | ||
142 | case "msiviewgeterror": return 370518; | ||
143 | case "msiviewmodify": return 370519; | ||
144 | case "productid": return 370855; | ||
145 | default: | ||
146 | return 0; | ||
147 | } | ||
148 | } | ||
149 | |||
150 | function GetHelpLink(apiName) | ||
151 | { | ||
152 | var helpCode = GetHelpCode(apiName); | ||
153 | if (helpCode != 0) | ||
154 | { | ||
155 | // Found a direct link! | ||
156 | var prefix = (helpCode < 500000 ? "aa" : "bb"); | ||
157 | return "http://msdn2.microsoft.com/en-us/library/" + prefix + helpCode + ".aspx"; | ||
158 | } | ||
159 | else | ||
160 | { | ||
161 | // This link works, but goes through an annoying 5-sec redirect page. | ||
162 | return "http://msdn.microsoft.com/library/en-us/msi/setup/" + apiName.toLowerCase() + ".asp"; | ||
163 | } | ||
164 | } | ||
165 | |||
166 | // Change any MSI API help links from indirect MSDN references to direct references. | ||
167 | function FixHelpLinks() | ||
168 | { | ||
169 | var msiLinkRegex = /msdn\.microsoft\.com\/library\/en-us\/msi\/setup\/([a-z]+)\.asp/i; | ||
170 | var links = document.body.all.tags("a"); | ||
171 | var i; | ||
172 | for (i = 0; i < links.length; i++) | ||
173 | { | ||
174 | var linkElem = links(i); | ||
175 | var match = msiLinkRegex.exec(linkElem.href); | ||
176 | if (match) | ||
177 | { | ||
178 | var apiName = match[1]; | ||
179 | linkElem.href = GetHelpLink(apiName); | ||
180 | linkElem.target = "_blank"; | ||
181 | linkElem.title = "MSDN Library"; | ||
182 | } | ||
183 | } | ||
184 | } | ||