如何判断当前是部署环境还是windows桌面环境? (已解决)
本帖最后由 antony410 于 2011-10-13 01:26 编辑如何判断当前是部署环境还是windows桌面环境?
部署环境则运行au3,否则不运行au3. if @OSVersion<>'WIN_XP' then
MsgBox("","","这是封装系统时用的,不能在本系统下运行")
EndIf
if @OSVersion='WIN_XP' then
MsgBox("","","你使用的是Windows XP")
EndIf 检查下有没有winlogon进程是不是就可以了
楼上,如果不是xp呢,岂不是要枚举所有的系统 本帖最后由 gzh888666 于 2011-10-9 15:01 编辑
枚举一下比较精确,要不谁弄个winlogon进程就没办法判断了!还应该有更好的办法,集思广益,大家继续! If ProcessExists("winlogon.exe") Then
Run()
Else
Exit
EndIf
@CPUArch 如果CPU构架为32位返回 "X86" ,如果CPU构架为64位返回 "X64" .
@KBLayout 返回当前使用的键盘布局代码. 查看 附录里面的值.
@MUILang 返回一个代码用于判断程序是否支持多语言 (Vista 默认为 OK ). 参考 附录 查看可能的值.
@OSArch 将返回这些值中的其一: "X86", "IA64", "X64" - 这是当前运行的操作系统的构架.
@OSLang
返回表示操作系统语言的编号(如0804).详情请查看 附录 里面的值.
@OSType
NT/2000/XP/2003/Vista/2008/Win7/2008R2 系统返回 "WIN32_NT" .
@OSVersion
返回一个下面的值: "WIN_2008R2", "WIN_7", "WIN_2008", "WIN_VISTA", "WIN_2003", "WIN_XP", "WIN_XPe", "WIN_2000".
@OSBuild
返回操作系统的内部标号(build号),如:Windows 2003 Server 返回的是 3790
@OSServicePack
返回服务包(Service pack)信息,比如 "Service Pack 3"
@ComputerName
返回计算机名
@UserName
当前登陆的用户名称
@IPAddress1
第一个网络适配器的 IP 地址.在某些电脑上可能会返回 127.0.0.1
@IPAddress2
第二个网络适配器的 IP 地址.若不存在则返回 0.0.0.0
@IPAddress3 第三个网络适配器的 IP 地址.若不存在则返回 0.0.0.0
@IPAddress4 第四个网络适配器的 IP 地址.若不存在则返回 0.0.0.0
@DesktopHeight
以象素为单位的屏幕高度(垂直分辨率),如 768
@DesktopWidth
以象素为单位的屏幕宽度(水平分辨率),如 1024
@DesktopDepth 屏幕的深度(颜色质量),以每象素的位数为单位,如 32
@DesktopRefresh 屏幕刷新率,以赫兹为单位,如 85 .
页:
[1]