【已解决】 如何选择并执行EXE文件
本帖最后由 dnvplj 于 2015-3-7 14:37 编辑请问各位朋友:在下图中如何选择\Soft\1.EXE文件(任意分区)并显示路径,按“执行”后1.EXE文件运行安装程序。
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 396, 109, 192, 124)
$Group2 = GUICtrlCreateGroup("", 8, 8, 385, 97)
GUICtrlCreateInput("", 16, 24, 313, 21)
$Button1 = GUICtrlCreateButton("选择", 336, 24, 49, 25)
$Button2 = GUICtrlCreateButton("执 行", 232, 64, 73, 33)
$Button3 = GUICtrlCreateButton("退 出", 312, 64, 73, 33)
$Label1 = GUICtrlCreateLabel("可选任意分区文件(U盘)", 16, 72, 200, 25)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
FileOpenDialog('选择文件','','exe文件(*.exe)',1)
Case $Button2
Case $Button3
Exit
EndSwitch
WEnd
回复 1# dnvplj
$Input = GUICtrlCreateInput("", 16, 24, 313, 21)
Case $Button1
$Inputa = FileOpenDialog('选择文件', '', 'exe文件(*.exe)', 1, '', $Form1)
GUICtrlSetData($Input, $Inputa)
Case $Button2
RunWait("" & GUICtrlRead($Input)) 回复 2# chzj589
首先感谢2楼朋友的回复,现存在2个问题:
1、返回的路径显示为一个“4”,没有返回完整的路径
2、文件选择后,点“执行”没有反映,程序没有运行。
回复 3# dnvplj
代码你是怎样加进去的?我自己有调试通过的 回复 4# chzj589
按2楼的代码加的 回复 5# dnvplj
贴出来看一下,可能加错了。 #include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=D:\我的文档\Desktop\4-1\4-01.kxf
Global $gu_Form2 = GUICreate("文件选择", 391, 103, 193, 125)
Global $gu_Group1 = GUICtrlCreateGroup("", 8, 8, 377, 89)
Global $gu_Input1 = GUICtrlCreateInput("", 16, 24, 297, 21)
Global $gu_Button1 = GUICtrlCreateButton("选择", 321, 21, 57, 25)
Global $gu_Button2 = GUICtrlCreateButton("执行", 240, 56, 65, 33)
Global $gu_Button3 = GUICtrlCreateButton("退出", 313, 56, 65, 33)
Global $gu_Label1 = GUICtrlCreateLabel("请选择正确的EXE文件", 16, 64, 164, 24)
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $gu_Button1
$gu_Inputa1 = FileOpenDialog('选择文件', '', 'exe文件(*.exe)', 1, '', $gu_Form2)
GUICtrlSetData($gu_Input1, $gu_Input1)
Case $gu_Button2
RunWait("" & GUICtrlRead($gu_Input1))
Case $gu_Button3
Exit
EndSwitch
WEnd
回复 7# dnvplj
这句错了:
GUICtrlSetData($gu_Input1, $gu_Input1)
应该是:
GUICtrlSetData($gu_Input1, $gu_Inputa1) FileOpenDialog帮助里有实例 回复 8# chzj589
这回可以了,谢谢你朋友。
页:
[1]