使用GetCORVersion
可參考:
用法如下:
System::Call "mscoree::GetCORVersion(w .r0, i ${NSIS_MAX_STRLEN}, *i) i .r1 ?u"
Pop $0
此用法為判斷C:\WINDOWS\Microsoft.NET\Framework裡面的.NET版本資訊。
但僅限於到2.0的版本。
我的電腦已安裝到4.0的版本如下:
利用Registry來做判斷
可參考:
用法如下:(判斷是否有安裝3.0)
StrCpy $R1 "SOFTWARE\Microsoft\.NETFramework"
StrCpy $R2 0
StartEnum:
EnumRegKey $R3 HKLM "$R1" $R2
StrCmp $R3 "" noDotNet notEmpty
notEmpty:
StrCpy $R4 $R3 1 0
StrCmp $R4 "v" +1 goNext
StrCpy $R4 $R3 1 1
StrCmp $R4 "3" +1 goNext
StrCpy $R4 $R3 1 3
StrCmp $R4 "0" +1 goNext
MessageBox MB_OK $R3
Return
goNext:
IntOp $R2 $R2 + 1
goto StartEnum
noDotNet:
MessageBox MB_OK "You must have the 3.0 or newer .NET Framework installed!"
Quit
我的電腦在Registry的.NET資訊如下:
沒有留言:
張貼留言