Доброго времени суток, уважаемые форумчане. Никак не получется передать параметр, через Run, если присутствует пробел (кавычки пробовал).
Код не мой, но разобран и подогнан под нужды из нескольких скриптов:
1.exe
2.exe
если в логине (или пароле) присутствует пробел, то данные передаются не корректно, а если &$vLogin& взять в кавычки, то вместо данных передается - $vLogin :(
Код не мой, но разобран и подогнан под нужды из нескольких скриптов:
1.exe
Код:
#include <EditConstants.au3>
GUICreate("Форма ввода",250,100,-1,-1)
$sLogin = GUICtrlCreateInput('', 10, 10, 100, 20)
$sPass = GUICtrlCreateInput('', 10, 50, 100, 20,$ES_PASSWORD)
$sButton = GUICtrlCreateButton("Enter", 150, 30, 60, 20)
GUISetState()
While 1
Switch GUIGetMsg()
Case -3
Exit
Case $sButton
Run( '2.exe /login="' & GUICtrlRead($sLogin) & '" /password="' & GUICtrlRead($sPass) & '"' )
Exit
EndSwitch
WEnd
2.exe
Код:
Local $vLogin = StringRegExp( $CmdLineRaw, '/login="([^\"]+)"', 1 )
If IsArray( $vLogin ) Then $vLogin = $vLogin[0]
Local $vPass = StringRegExp( $CmdLineRaw, '/password="([^\"]+)"', 1 )
If IsArray( $vPass ) Then $vPass = $vPass[0]
;MsgBox( 64, "", "Login=" & $vLogin & @LF & "Pass=" & $vPass )
Run ('"C:\Program Files\1cv82\8.2.19.76\bin\1cv8.exe" ENTERPRISE /S xxx.xxx.xxx.xxx\xxx /N '&$vLogin&' /P '&$vPass&'')
если в логине (или пароле) присутствует пробел, то данные передаются не корректно, а если &$vLogin& взять в кавычки, то вместо данных передается - $vLogin :(