[R] Petit souci pour éditer un fichier.vbs
Posté : ven. 19 janv. 2018 16:47
Bonjour à tous(tes),
Je code un petit programme qui génère des messages au format vbs.
J'ai un soucis lors de l'édition du message saisi. En effet j’utilise "GUICtrlCreateEdit" afin de permettre un retour à la ligne lors de la saisie du message.
(car je n'arrive pas à faire avec "GUICtrlCreateInput")
le retour à la ligne génère des erreurs car il manque des guillemets à la fin de - ligne 1- et au début - ligne 2 - et les "& vbCrLf &" etc....
J'avoue que je suis à cours de solution (à moins de créer dans la gui une zone de saisie "GUICtrlCreateInput" pour chaque lignes)
Voici le script et merci d'avance
Je code un petit programme qui génère des messages au format vbs.
J'ai un soucis lors de l'édition du message saisi. En effet j’utilise "GUICtrlCreateEdit" afin de permettre un retour à la ligne lors de la saisie du message.
(car je n'arrive pas à faire avec "GUICtrlCreateInput")
le retour à la ligne génère des erreurs car il manque des guillemets à la fin de - ligne 1- et au début - ligne 2 - et les "& vbCrLf &" etc....
J'avoue que je suis à cours de solution (à moins de créer dans la gui une zone de saisie "GUICtrlCreateInput" pour chaque lignes)

Voici le script et merci d'avance

#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=icone.ico
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <FileConstants.au3>
#include <MsgBoxConstants.au3>
#include <ComboConstants.au3>
#include <File.au3>
#include <Array.au3>
#include <ButtonConstants.au3>
#include <DateTimeConstants.au3>
#include <EditConstants.au3>
#include <date.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
$sDate = _NowDate ( )
$sTime = _NowTime ( )
#Region ### START Koda GUI section ### Form=C:\Users\jeanmimi\Desktop\liveup\admin2.kxf
Global $Form1 = GUICreate("Live-Up Administrateur", 528, 597, 224, 232)
Global $MenuItem2 = GUICtrlCreateMenu("&Menu")
Global $MenuItem4 = GUICtrlCreateMenuItem("Tutoriel", $MenuItem2)
Global $MenuItem3 = GUICtrlCreateMenuItem("Rapport LiveUp", $MenuItem2)
GUISetBkColor(0xFFFFFF)
Global $Group1 = GUICtrlCreateGroup(" Saisir votre message ", 16, 100, 377, 313)
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
$Input1 = GUICtrlCreateEdit("", 40, 140, 329, 201)
; test GUICtrlCreateInput VS GUICtrlCreateEdit >> $Input1 = GUICtrlCreateInput("", 40, 140, 329, 201) >> Pas de retour à la ligne possible à l'édition
GUICtrlCreateGroup("", -99, -99, 1, 1)
Global $Button1 = GUICtrlCreateButton("Envoyer le message", 104, 352, 211, 41)
; Listing dossiers
Global $aScriptDir = _FileListToArray(@ScriptDir, "*", $FLTA_FOLDERS, 0)
; Crée un fichier dans le répertoire du script.
Global $sFilePath = @ScriptDir & "\nni.txt"
;export du noms des dossiers nni dans fichier nni.txt
_FileWriteFromArray($sFilePath, $aScriptDir, 1)
Global $liste = GUICtrlCreateEdit("", 408, 140, 97, 257, $ES_AUTOVSCROLL + $WS_VSCROLL)
Global $Read1 = FileRead (@ScriptDir & "\nni.txt")
GUICtrlSetData($Liste, $Read1, 1)
Global $Group2 = GUICtrlCreateGroup(" Contacts ", 400, 100, 113, 313)
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
GUICtrlCreateGroup("", -99, -99, 1, 1)
Global $Pic1 = GUICtrlCreatePic("liveup.JPG", 104, 16, 329, 79)
Global $Pic2 = GUICtrlCreatePic("vaguebmp.bmp", 0, 416, 527, 160)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
Case $msg = $Button1
Valider()
Case $msg = $MenuItem4
Tuto()
Case $msg = $MenuItem2
Rapport()
EndSelect
WEnd
Func VAlider()
$sDate = _NowDate ( )
$sTime = _NowTime ( )
$valideur = @UserName
$ecri2 = guictrlread($Input1)
if $ecri2 <> "" then
_FileCreate(@ScriptDir & "\test.vbs")
Local $file2 = FileOpen(@ScriptDir & "\test.vbs", BitOR($FO_ANSI, $FO_APPEND, $FO_CREATEPATH))
FileWrite($file2, 'MsgBox ' &'"' & $ecri2 & '"')
FileClose($file2)
;édition du rapport
FileWrite(@scriptdir & "\rapport.csv",$sDate & ";" & $ecri2 & ";" & $sDate & ";" & $valideur & @CRLF)
MsgBox(0, "test ok", "Message édité avec succès ! ", 3)
Exit
;suite script si zone saisie vide
Else
MsgBox(0, "Attention", " Vous devez remplir la partie " & '"' & "Saisir votre message" & '"')
EndIf
EndFunc
Func Tuto()
ShellExecute(@scriptdir & "\tutoriel.pdf")
EndFunc
Func Rapport()
; en attente
EndFunc
#AutoIt3Wrapper_Icon=icone.ico
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <FileConstants.au3>
#include <MsgBoxConstants.au3>
#include <ComboConstants.au3>
#include <File.au3>
#include <Array.au3>
#include <ButtonConstants.au3>
#include <DateTimeConstants.au3>
#include <EditConstants.au3>
#include <date.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
$sDate = _NowDate ( )
$sTime = _NowTime ( )
#Region ### START Koda GUI section ### Form=C:\Users\jeanmimi\Desktop\liveup\admin2.kxf
Global $Form1 = GUICreate("Live-Up Administrateur", 528, 597, 224, 232)
Global $MenuItem2 = GUICtrlCreateMenu("&Menu")
Global $MenuItem4 = GUICtrlCreateMenuItem("Tutoriel", $MenuItem2)
Global $MenuItem3 = GUICtrlCreateMenuItem("Rapport LiveUp", $MenuItem2)
GUISetBkColor(0xFFFFFF)
Global $Group1 = GUICtrlCreateGroup(" Saisir votre message ", 16, 100, 377, 313)
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
$Input1 = GUICtrlCreateEdit("", 40, 140, 329, 201)
; test GUICtrlCreateInput VS GUICtrlCreateEdit >> $Input1 = GUICtrlCreateInput("", 40, 140, 329, 201) >> Pas de retour à la ligne possible à l'édition
GUICtrlCreateGroup("", -99, -99, 1, 1)
Global $Button1 = GUICtrlCreateButton("Envoyer le message", 104, 352, 211, 41)
; Listing dossiers
Global $aScriptDir = _FileListToArray(@ScriptDir, "*", $FLTA_FOLDERS, 0)
; Crée un fichier dans le répertoire du script.
Global $sFilePath = @ScriptDir & "\nni.txt"
;export du noms des dossiers nni dans fichier nni.txt
_FileWriteFromArray($sFilePath, $aScriptDir, 1)
Global $liste = GUICtrlCreateEdit("", 408, 140, 97, 257, $ES_AUTOVSCROLL + $WS_VSCROLL)
Global $Read1 = FileRead (@ScriptDir & "\nni.txt")
GUICtrlSetData($Liste, $Read1, 1)
Global $Group2 = GUICtrlCreateGroup(" Contacts ", 400, 100, 113, 313)
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
GUICtrlCreateGroup("", -99, -99, 1, 1)
Global $Pic1 = GUICtrlCreatePic("liveup.JPG", 104, 16, 329, 79)
Global $Pic2 = GUICtrlCreatePic("vaguebmp.bmp", 0, 416, 527, 160)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
Case $msg = $Button1
Valider()
Case $msg = $MenuItem4
Tuto()
Case $msg = $MenuItem2
Rapport()
EndSelect
WEnd
Func VAlider()
$sDate = _NowDate ( )
$sTime = _NowTime ( )
$valideur = @UserName
$ecri2 = guictrlread($Input1)
if $ecri2 <> "" then
_FileCreate(@ScriptDir & "\test.vbs")
Local $file2 = FileOpen(@ScriptDir & "\test.vbs", BitOR($FO_ANSI, $FO_APPEND, $FO_CREATEPATH))
FileWrite($file2, 'MsgBox ' &'"' & $ecri2 & '"')
FileClose($file2)
;édition du rapport
FileWrite(@scriptdir & "\rapport.csv",$sDate & ";" & $ecri2 & ";" & $sDate & ";" & $valideur & @CRLF)
MsgBox(0, "test ok", "Message édité avec succès ! ", 3)
Exit
;suite script si zone saisie vide
Else
MsgBox(0, "Attention", " Vous devez remplir la partie " & '"' & "Saisir votre message" & '"')
EndIf
EndFunc
Func Tuto()
ShellExecute(@scriptdir & "\tutoriel.pdf")
EndFunc
Func Rapport()
; en attente
EndFunc