boyhong 发表于 2014-5-2 00:32:26

脚本运行过程中请求管理员权限--win7

#RequireAdmin
;不管本预处理命令放在何处都会在程序开始时请求权限

现在问题是:脚本中只有某几个很小的功能模块需要请求下管理员权限? 其它不用....

能否在脚本运行过程中,若用户触发这些特殊的功能,就弹出脚本请求管理员权限,然后从头运行也行呀~~~
愁.
另: 若一上来请求了管理员权限,在WIN7开启了UAC下(不能关闭UAC),在开机启动项里的脚本,是无法启动的.

各位大侠,你们如何解决的?

light_he 发表于 2014-5-2 12:36:43

请参考:

http://au3.cc/forum.php?mod=viewthread&tid=175&extra=page%3D1

boyhong 发表于 2014-5-2 12:47:53

请参考:
light_he 发表于 2014-5-2 12:36 http://61.153.183.105/images/common/back.gif


    请求当前用户管理权限,而不是Runas其它用户,一楼贴末还有个带UAC的开机启动失效问题…
还是感谢您的热心,问题是UAC不关的情况下。

light_he 发表于 2014-5-2 13:11:32

本帖最后由 light_he 于 2014-5-2 13:24 编辑

没环境,没测试
        ifNot isAdmin() Then
                #RequireAdmin

      else
                       MsgBox(0,0,"管理员")
        EndIf

chishingchan 发表于 2014-5-3 10:36:46

省一个单词{:face (356):}ifisAdmin() Then
MsgBox(0,0,"管理员")
else
#RequireAdmin
EndIf

boyhong 发表于 2014-5-3 18:49:52

没环境,没测试
light_he 发表于 2014-5-2 13:11 http://61.153.183.105/images/common/back.gif


    请看我一楼贴子中的第二行。

boyhong 发表于 2014-5-3 18:52:04

省一个单词
chishingchan 发表于 2014-5-3 10:36 http://61.153.183.105/images/common/back.gif


    预处理命令放在任意处均会在脚本一开始就运行。详见我一楼贴中第二行。

light_he 发表于 2014-5-3 21:20:27

#RequireAdmin预处理命令本质上和runas administrators是一样的
这样,何不在需要管理员权限运行的地方出现一个gui提示输入管理员帐号和密码,再重新运行script
RunAs("管理员帐号","","密码",0,@ScriptFullPath)

boyhong 发表于 2014-5-4 20:02:16

#RequireAdmin预处理命令本质上和runas administrators是一样的
这样,何不在需要管理员权限运行的地方出 ...
light_he 发表于 2014-5-3 21:20 http://61.153.183.105/images/common/back.gif


    Win7的UAC兄可用过?

lixiaolong 发表于 2014-5-4 21:21:20

回复 1# boyhong #Region
#PRE_Outfile=A.exe
#PRE_UseUpx=n
#PRE_Res_requestedExecutionLevel=None
#EndRegion
#Region
#EndRegion

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Example()

Func Example()
        Local $hGUI = GUICreate("GUI 示例", 400, 100)
        $btn = GUICtrlCreateButton("ok", 50, 20, 50, 50)
        GUISetState(@SW_SHOW, $hGUI)

        While 1
                Switch GUIGetMsg()
                        Case $GUI_EVENT_CLOSE
                                ExitLoop
                        Case $btn
                                ; 请求管理员权限
                                ShellExecute("C:\Windows\system32\notepad.exe", "", "", "runas")
                EndSwitch
        WEnd
        GUIDelete($hGUI)
EndFunc

boyhong 发表于 2014-5-18 08:57:57

感谢大咖的关注.强。回头试试这种另辟其径。再次感谢。
页: [1]
查看完整版本: 脚本运行过程中请求管理员权限--win7