File diff r9456:208b7c9b1263 → r9457:ecfeb802c57a
projects/determineversion.vbs
Show inline comments
 
@@ -11,29 +11,34 @@ Sub FindReplaceInFile(filename, to_find,
 
	data = Replace(data, to_find, replacement)
 
	Set file = FSO.CreateTextFile(FileName, -1, 0)
 
	file.Write data
 
	file.Close
 
End Sub
 

	
 
Sub UpdateFile(revision, version, cur_date, filename)
 
Sub UpdateFile(modified, revision, version, cur_date, filename)
 
	FSO.CopyFile filename & ".in", filename
 
	FindReplaceInFile filename, "@@MODIFIED@@", modified
 
	FindReplaceInFile filename, "@@REVISION@@", revision
 
	FindReplaceInFile filename, "@@VERSION@@", version
 
	FindReplaceInFile filename, "@@DATE@@", cur_date
 
End Sub
 

	
 
Sub UpdateFiles(version)
 
	Dim WshShell, cur_date, revision, oExec
 
	Dim WshShell, cur_date, modified, revision, oExec
 
	Set WshShell = CreateObject("WScript.Shell")
 
	cur_date = DatePart("D", Date) & "." & DatePart("M", Date) & "." & DatePart("YYYY", Date)
 
	revision = 0
 
	modified = 1
 
	Select Case Mid(version, 1, 1)
 
		Case "r" ' svn
 
			revision = Mid(version, 2)
 
			If InStr(revision, "M") Then
 
				revision = Mid(revision, 1, InStr(revision, "M") - 1)
 
				modified = 2
 
			Else
 
				modified = 0
 
			End If
 
			If InStr(revision, "-") Then
 
				revision = Mid(revision, 1, InStr(revision, "-") - 1)
 
			End If
 
		Case "h" ' mercurial (hg)
 
			Set oExec = WshShell.Exec("hg log -k " & Chr(34) & "svn" & Chr(34) & " -l 1 --template " & Chr(34) & "{desc}\n" & Chr(34) & " ../src")
 
@@ -46,14 +51,14 @@ Sub UpdateFiles(version)
 
			if Err.Number = 0 Then
 
				revision = Mid(oExec.StdOut.ReadLine(), 7)
 
				revision = Mid(revision, 1, InStr(revision, ")") - 1)
 
			End If
 
	End Select
 

	
 
	UpdateFile revision, version, cur_date, "../src/rev.cpp"
 
	UpdateFile revision, version, cur_date, "../src/ottdres.rc"
 
	UpdateFile modified, revision, version, cur_date, "../src/rev.cpp"
 
	UpdateFile modified, revision, version, cur_date, "../src/ottdres.rc"
 
End Sub
 

	
 
Function ReadRegistryKey(shive, subkey, valuename, architecture)
 
	Dim hiveKey, objCtx, objLocator, objServices, objReg, Inparams, Outparams
 

	
 
	' First, get the Registry Provider for the requested architecture