panda 发表于 2012-1-4 10:40:38

[已解决]关于RegWrite在win7 64位下的使用

本帖最后由 panda 于 2012-1-4 11:28 编辑

$i = RegWrite("HKEY_LOCAL_MACHINE\", "TestKey", "REG_SZ", "Hello this is a test")
MsgBox(0,0,@error)
MsgBox(0,0,$i)

上面这一段程序,在win2003 32位下运行没问题,但在win7 64位下有错误,@error为1,$i为0,不知道为什么?。。

hzxymkb 发表于 2012-1-4 10:41:45

用户没有权限!

panda 发表于 2012-1-4 10:49:11

回复 2# hzxymkb

其实我也有想过是这个原因,但怎样去获得权限呢?谢谢了{:face (382):}

kk_lee69 发表于 2012-1-4 10:56:34

不是的是因為你語法錯誤
RegWrite("HKLM64\", "TestKey", "REG_SZ", "Hello this is a test")

這樣就可以了.....你注意看看 RegWrite 幫助檔案   上面有提到64位元 要在 後面 加上 64 兩個字

kk_lee69 发表于 2012-1-4 10:59:01

權限提升   可以使用 #RequireAdmin這個語法加在程式一開始就可以了

不過 如果 對方的電腦 安全性的設置更嚴格.....就必須要 另外的方法提升權限了

panda 发表于 2012-1-4 11:04:34

回复 4# kk_lee69

这个我看过了,不加也没事
$i = RegWrite("HKEY_Current_USER\", "TestKey", "REG_SZ", "Hello this is a test")
MsgBox(0,0,@error)
MsgBox(0,0,$i)
这一段代码在我的win7 64位运行也没问题的,我也不知道为什么和帮助上有点不一样,可能是以前的autoit版本需要加64吧
我搞不懂的是64位机上HKEY_Current_USER和 HKEY_LOCAL_MACHINE居然有区别

panda 发表于 2012-1-4 11:10:00

{:face (88):}回复 5# kk_lee69

谢谢,解决了,就是权限的问题

panda 发表于 2012-1-4 11:10:32

加上#RequireAdmin就ok了
页: [1]
查看完整版本: [已解决]关于RegWrite在win7 64位下的使用