- Option Explicit
- Dim pSysEnv
- Dim objFSO
- Set pSysEnv = CreateObject("WScript.Shell").Environment("System")
- Set objFSO=CreateObject("Scripting.FileSystemObject")
- Function IsMatch(Str, Patrn)
- Dim r
- Set r = new RegExp
- r.Pattern = Patrn
- IsMatch = r.test(Str)
- Set r = Nothing
- End Function
- Sub SetEnv(pPath, pValue)
- Dim ExistValueOfPath
- IF pValue <> "" Then
- ExistValueOfPath = pSysEnv(pPath)
- IF Right(pValue, 1) = "\" Then pValue = Left(pValue, Len(pValue)-1)
- If IsMatch(ExistValueOfPath, "\*?" & Replace(pValue, "\", "\\") & "\\?(\b|;)") Then Exit Sub
- If ExistValueOfPath <> "" Then pValue = ";" & pValue
- pSysEnv(pPath) = ExistValueOfPath & pValue
- Else
- pSysEnv.Remove(pPath)
- End IF
- End Sub
- Sub WriteEnv(pPath, pValue)
- pSysEnv(pPath) = pValue
- End Sub
- WriteEnv "PYTHONHOME", objFSO.GetFolder(".").Path
- WriteEnv "PYTHONPATH", objFSO.GetFolder(".").Path
- SetEnv "Path", objFSO.GetFolder(".").Path
- Set pSysEnv = Nothing
- Dim oShell
- Set oShell = WScript.CreateObject("WScript.Shell")
- oShell.Exec objFSO.GetFolder(".").Path & "\Lib\site-packages\pythonwin\Pythonwin.exe"
- Set oShell = Nothing
来源: http://www.phpxs.com/code/1008773/