Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Uses XMLDOM for cleaner install |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | sourceforge |
Files: | files | file ages | folders |
SHA1: |
f4336dee1871148cb759173735712b2f |
User & Date: | rmsimpson 2005-11-03 20:31:35 |
Context
2005-11-03
| ||
20:32 | 1.0.21 RTM check-in: 28597a833b user: rmsimpson tags: sourceforge | |
20:31 | Uses XMLDOM for cleaner install check-in: f4336dee18 user: rmsimpson tags: sourceforge | |
20:30 | no message check-in: 6748d3069f user: rmsimpson tags: sourceforge | |
Changes
Changes to bin/Designer/Install.vbs.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
..
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
Const SQLiteVersion = "1.0.20.0" Main Sub Main() Dim WshShell Set WshShell = WScript.CreateObject("WScript.Shell") Dim fso Set fso = WScript.CreateObject("Scripting.FileSystemObject") Dim myDir myDir = fso.GetParentFolderName(WScript.ScriptFullName) ................................................................................ regFileContents = regFile.ReadAll() regFileContents = Replace(regFileContents, "%REGROOT%", regRoot) regFileContents = Replace(regFileContents, "%XMLPATH%", Replace(xmlPath, "\", "\\")) genRegFile.Write(regFileContents) genRegFile.Close() regFile.Close() Dim oExec Set oExec = WshShell.Exec("regedit /s """ & myDir & "\SQLiteDesigner.gen.reg""") Do While oExec.Status = 0 WScript.Sleep(100) Loop fso.DeleteFile(myDir & "\SQLiteDesigner.gen.reg") Dim machineConfig Dim machineConfigFile Dim machineConfigPath machineConfigPath = fso.GetSpecialFolder(WindowsFolder).Path & "\Microsoft.NET\Framework\v2.0.50727\CONFIG" Set machineConfigFile = fso.OpenTextFile(machineConfigPath & "\machine.config") machineConfig = machineConfigFile.ReadAll() machineConfigFile.Close() Dim n Dim x n = InStr(1, machineConfig, "System.Data.SQLite, Version=1", 1) If (n = 0) Then n = InStr(1, machineConfig, "</DbProviderFactories>", 1) If n > 0 Then n = InStrRev(machineConfig, vbCrLf, n, 1) If n > 0 Then machineConfig = Left(machineConfig, n + 1) & " <add name=""SQLite Data Provider"" invariant=""System.Data.SQLite"" description="".Net Framework Data Provider for SQLite"" type=""System.Data.SQLite.SQLiteFactory, System.Data.SQLite, Version=" & SQLiteVersion & ", Culture=neutral, PublicKeyToken=db937bc2d44ff139"" />" & vbCrLf & Mid(machineConfig, n + 2) End If End If Else n = n + 27 x = InStr(n, machineConfig, ",", 1) If x > 0 Then machineConfig = Left(machineConfig, n) & SQLiteVersion & Mid(machineConfig, x) End If End If Set machineConfigFile = fso.CreateTextFile(machineConfigPath & "\machine.config", true) machineConfigFile.Write(machineConfig) machineConfigFile.Close() End Sub |
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
<
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<
<
<
<
<
<
<
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
..
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
Const SQLiteVersion = "1.0.21.0" Main Sub Main() Dim WshShell Set WshShell = WScript.CreateObject("WScript.Shell") Dim GacPath Dim oExec GacPath = WshShell.RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\sdkInstallRootv2.0") Set oExec = WshShell.Exec(GacPath & "\bin\gacutil.exe -u System.Data.SQLite") Do While oExec.Status = 0 WScript.Sleep(100) Loop Set oExec = WshShell.Exec(GacPath & "\bin\gacutil.exe -if ..\System.Data.SQLite.DLL") Do While oExec.Status = 0 WScript.Sleep(100) Loop Dim fso Set fso = WScript.CreateObject("Scripting.FileSystemObject") Dim myDir myDir = fso.GetParentFolderName(WScript.ScriptFullName) ................................................................................ regFileContents = regFile.ReadAll() regFileContents = Replace(regFileContents, "%REGROOT%", regRoot) regFileContents = Replace(regFileContents, "%XMLPATH%", Replace(xmlPath, "\", "\\")) genRegFile.Write(regFileContents) genRegFile.Close() regFile.Close() Set oExec = WshShell.Exec("regedit /s """ & myDir & "\SQLiteDesigner.gen.reg""") Do While oExec.Status = 0 WScript.Sleep(100) Loop fso.DeleteFile(myDir & "\SQLiteDesigner.gen.reg") Dim machineConfigFile Dim machineConfig machineConfigFile = fso.GetSpecialFolder(WindowsFolder).Path & "\Microsoft.NET\Framework\v2.0.50727\CONFIG\machine.config" Set machineConfig = CreateObject("Microsoft.XMLDOM") machineConfig.load machineConfigFile Dim xmlNode Dim xmlParent Set xmlNode = machineConfig.selectSingleNode("configuration/system.data/DbProviderFactories/add[@invariant=""System.Data.SQLite""]") If xmlNode Is Nothing Then Set xmlParent = machineConfig.selectSingleNode("configuration/system.data/DbProviderFactories") Set xmlNode = machineConfig.createNode(1, "add", "") xmlNode.attributes.setNamedItem(machineConfig.createAttribute("name")) xmlNode.attributes.setNamedItem(machineConfig.createAttribute("invariant")) xmlNode.attributes.setNamedItem(machineConfig.createAttribute("description")) xmlNode.attributes.setNamedItem(machineConfig.createAttribute("type")) xmlParent.appendChild xmlNode End If xmlNode.attributes.getNamedItem("name").value = "SQLite Data Provider" xmlNode.attributes.getNamedItem("invariant").value = "System.Data.SQLite" xmlNode.attributes.getNamedItem("description").value = ".Net Framework Data Provider for SQLite" xmlNode.attributes.getNamedItem("type").value = "System.Data.SQLite.SQLiteFactory, System.Data.SQLite, Version=" & SQLiteVersion & ", Culture=neutral, PublicKeyToken=db937bc2d44ff139" machineConfig.save machineConfigFile End Sub |