grimmlock Posted December 6, 2012 Posted December 6, 2012 Is it possible to "DIM" or Hide GUITextLabels and GUITextInputs based on what is selected in a GUICombo? Thanks Grimm Thanks Grimm
Moderators Melba23 Posted December 6, 2012 Moderators Posted December 6, 2012 grimmlock,Setting the state of the control to $GUI_DISABLE might be what you are looking for. Perhaps if you posted a short example script we could offer more pertinent advice.... M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
grimmlock Posted December 6, 2012 Author Posted December 6, 2012 (edited) Thank you for the reply expandcollapse popupLocal $hMainwindow = GUICreate("HR Employee App", 300, 600) GUICtrlCreateLabel("HR Employee App", 30, 10, 290, 40) GUICtrlSetFont(-1, 20, 800); bold GUICtrlCreateLabel($sText1, 25, 60) GUICtrlCreateLabel($sText2, 25, 78) Local $hOkButton = GUICtrlCreateButton("&Send", 200, 565, 80) GUISetState() GUICtrlCreateLabel("&Employee:", 25, 78, 75) local $hCombo=GUICtrlCreateCombo("", 115, 75, 145) ; create first item GUICtrlSetData(-1, "New|Term|Transfer", "New") ; add other item snd set a new default GUICtrlCreateLabel("&Employee Name:", 25, 103, 85) local $hInputText = GUICtrlCreateInput("", 115, 100, 145) GUICtrlCreateLabel("&Current Position:", 25, 128, 85) local $hInputText2 = GUICtrlCreateInput("", 115, 125, 145) GUICtrlCreateLabel("&New Position:", 25, 153, 85) local $hInputText3 = GUICtrlCreateInput("", 115, 150, 145) GUICtrlCreateLabel("&Current Location:", 25, 178, 85) local $hInputText4 = GUICtrlCreateInput("", 115, 175, 145) GUICtrlCreateLabel("&New Location:", 25, 203, 85) local $hInputText5 = GUICtrlCreateInput("", 115, 200, 145) GUICtrlCreateLabel("&Last Date/Time:", 25, 228, 85) local $hInputText6 = GUICtrlCreateDate("", 115, 225, 145) GUICtrlCreateLabel("&Start Date/Time:", 25, 253, 85) local $hInputText7 = GUICtrlCreateDate("", 115, 250, 145) GUICtrlCreateLabel("&Copier Code:", 25, 278, 85) local $hInputText8 = GUICtrlCreateCheckbox("", 115, 275, 145, 20) GUICtrlCreateLabel("&Notes:", 25, 330, 75) local $hInputText9 = GUICtrlCreateInput("", 25, 345, 235, 200) Edited December 6, 2012 by grimmlock Thanks Grimm
Moderators Melba23 Posted December 6, 2012 Moderators Posted December 6, 2012 grimmlock, And what is that incomplete not-runnable snippet supposed to do? I cannot read your mind - give me a clue. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
grimmlock Posted December 6, 2012 Author Posted December 6, 2012 (edited) sorry let me include the whole script What I was hoping for is a way to hide some of the fields depending on what was chosen in the drop down menu. Example, if you select new from the drop down list, then you would not need to see or fill in the "Current Location", "Current Position", or "Last Date" field. However you would want to fill those fields in if the employee was transfering to a new position, or leaving the organization. I hope that helps explain what I am looking for. And thanks! expandcollapse popup#cs ---------------------------------------------------------------------------- AutoIt Version: 3.3.8.1 Author: Me Script Function: Send tickets to helpdesk Template AutoIt script. #ce ---------------------------------------------------------------------------- ; Script Start - Add your code below here #include <ButtonConstants.au3> #include <EditConstants.au3> #include <Constants.au3> #include <GUIConstantsEx.au3> #include <GUIListBox.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> _main() Func _Main() Local $sUsername = @UserName ; User Name Local $sComputername = @ComputerName ; Computer Name Local $sText1 = ""; Output text for message box. Local $sText2 = ""; Output text for message box. Local $combo1 = ""; Output text for combo box. Local Const $sDomain = 'domain.com' Local Const $sServer = "mail" & '.' & $sDomain Local Const $sSupportEmail = "user" & '@' & $sDomain ClipPut($sServer) Local $hMainwindow = GUICreate("HR Employee App", 300, 600) GUICtrlCreateLabel("HR Employee App", 30, 10, 290, 40) GUICtrlSetFont(-1, 20, 800); bold GUICtrlCreateLabel($sText1, 25, 60) GUICtrlCreateLabel($sText2, 25, 78) Local $hOkButton = GUICtrlCreateButton("&Send", 200, 565, 80) GUISetState() GUICtrlCreateLabel("&Employee:", 25, 78, 75) local $hCombo1=GUICtrlCreateCombo("", 115, 75, 145) ; create first item GUICtrlSetData(-1, "New|Term|Transfer", "New") ; add other item snd set a new default GUICtrlCreateLabel("&Employee Name:", 25, 103, 85) local $hInputText1 = GUICtrlCreateInput("", 115, 100, 145) GUICtrlCreateLabel("&Current Position:", 25, 128, 85) local $hInputText2 = GUICtrlCreateInput("", 115, 125, 145) GUICtrlCreateLabel("&New Position:", 25, 153, 85) local $hInputText3 = GUICtrlCreateInput("", 115, 150, 145) GUICtrlCreateLabel("&Current Location:", 25, 178, 85) local $hInputText4 = GUICtrlCreateInput("", 115, 175, 145) GUICtrlCreateLabel("&New Location:", 25, 203, 85) local $hInputText5 = GUICtrlCreateInput("", 115, 200, 145) GUICtrlCreateLabel("&Notes:", 25, 330, 75) local $hInputText6 = GUICtrlCreateInput("", 25, 345, 235, 200) GUICtrlCreateLabel("&Last Date/Time:", 25, 228, 85) local $hInputDate1 = GUICtrlCreateDate("", 115, 225, 145) GUICtrlCreateLabel("&Start Date/Time:", 25, 253, 85) local $hInputDate2 = GUICtrlCreateDate("", 115, 250, 145) GUICtrlCreateLabel("&Copier Code:", 25, 278, 85) local $hInputCheckbox1 = GUICtrlCreateCheckbox("Yes", 115, 275, 145, 20) While 1 Switch GUIGetMsg() Case $hOkButton $msg = "Subject: " & GUICtrlRead($hCombo1) & @CRLF & @CRLF & "Employee Name: " & GUICtrlRead($hInputText1) & @CRLF & @CRLF & "Current Position: " & GUICtrlRead($hInputText2) & @CRLF & @CRLF & "New Position: " & GUICtrlRead($hInputText3) & @CRLF & @CRLF & "Current Location: " & GUICtrlRead($hInputText4) & @CRLF & @CRLF & "New Location: " & GUICtrlRead($hInputText5) & @CRLF & @CRLF & "Last Date :" & GUICtrlRead($hInputDate1) & @CRLF & @CRLF & "Start Date :" & GUICtrlRead($hInputDate2) & @CRLF & @CRLF & "Copier Code: " & GUICtrlRead($hInputCheckbox1) & @CRLF & @CRLF & "Notes: " & GUICtrlRead($hInputText6) & @CRLF & @CRLF & "" & $sText1 & $sText2 & _wmigetcompinfo() OKButton($sServer, $sUsername, $sUsername & '@' & $sDomain, $sSupportEmail, "Employee: "&GUICtrlRead($hCombo1), $msg) ;- Case $hEmail ;- OnEmail($sSupportEmail) Case $GUI_EVENT_CLOSE Exit ;~ Send() EndSwitch WEnd EndFunc ;==>_Main Func _AddHorzSep($iX, $iY, $iW) GUICtrlCreateLabel("", $iX, $iY, $iW, 1) GUICtrlSetBkColor(-1, 0x000000) EndFunc ;==>_AddHorzSep Func _wmigetcompinfo($strComputer = "localhost") ; Generated by AutoIt Scriptomatic November 30, 2012 $wbemFlagReturnImmediately = 0x10 $wbemFlagForwardOnly = 0x20 $colItems = "" $sOutput = "" ;- $sOutput &= "Computer: " & $strComputer & @CRLF $sOutput &= "" $objWMIService = ObjGet("winmgmts:" & $strComputer & "rootCIMV2") $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystem", "WQL", _ $wbemFlagReturnImmediately + $wbemFlagForwardOnly) If IsObj($colItems) Then For $objItem In $colItems $sOutput &= "Computer Status: " & $objItem.Status & @CRLF Next Else Return ("WMI not functional") EndIf $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystemProduct", "WQL", _ $wbemFlagReturnImmediately + $wbemFlagForwardOnly) ;- If IsObj($colItems) Then ;- For $objItem In $colItems ;- MsgBox(0,"","SerialNumber" & $objItem.IdentifyingNumber) ;- $sOutput &= "SerialNumber: " & $objItem.IdentifyingNumber & @CRLF ;- Next Return ($sOutput) ;- EndIf EndFunc ;==>_wmigetcompinfo Func WMIDateStringToDate($dtmDate) Return (StringMid($dtmDate, 5, 2) & "/" & _ StringMid($dtmDate, 7, 2) & "/" & StringLeft($dtmDate, 4) _ & " " & StringMid($dtmDate, 9, 2) & ":" & StringMid($dtmDate, 11, 2) & ":" & StringMid($dtmDate, 13, 2)) EndFunc ;==>WMIDateStringToDate Func OKButton($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject, $s_Body) $rc = _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject, $s_Body) ProgressOn("Progress", "Submitting your ticket...", "0 percent") For $i = 0 to 100 step 20 sleep(500) ProgressSet( $i, $i & " percent") Next ProgressSet(100 , "Done", "Complete") sleep(500) ProgressOff() If @error Then MsgBox(0, "Error sending message", "Error code:" & @error & " Description:" & $rc) Else MsgBox(0, "HelpDesk App", "Your ticket has been submitted successfully") ;~ else EndIf Exit EndFunc ;==>OKButton Func OnEmail($sSupportEmail) Run(@ComSpec & " /c " & 'start mailto:' & $sSupportEmail, "", @SW_HIDE) EndFunc ;==>OnEmail Func CLOSEClicked() ;Note: at this point @GUI_CTRLID would equal $GUI_EVENT_CLOSE, ;and @GUI_WINHANDLE would equal $hMainwindow Exit EndFunc ;==>CLOSEClicked ; ; The UDF Func _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject = "", $sBody = "", $s_AttachFiles = "", $s_CcAddress = "", $s_BccAddress = "", $s_Importance = "Normal", $s_Username = "", $s_Password = "", $IPPort = 25, $ssl = 0) Global $oMyRet[2] Global $oMyError = ObjEvent("AutoIt.Error", "MyErrFunc") Local $objEmail = ObjCreate("CDO.Message") $objEmail.From = '"' & $s_FromName & '" <' & $s_FromAddress & '>' $objEmail.To = $s_ToAddress Local $i_Error = 0 Local $i_Error_desciption = "" If $s_CcAddress <> "" Then $objEmail.Cc = $s_CcAddress If $s_BccAddress <> "" Then $objEmail.Bcc = $s_BccAddress $objEmail.Subject = $s_Subject If StringInStr($sBody, "<") And StringInStr($sBody, ">") Then $objEmail.HTMLBody = $sBody Else $objEmail.Textbody = $sBody & @CRLF EndIf If $s_AttachFiles <> "" Then Local $S_Files2Attach = StringSplit($s_AttachFiles, ";") For $x = 1 To $S_Files2Attach[0] $S_Files2Attach[$x] = _PathFull($S_Files2Attach[$x]) ;~ ConsoleWrite('@@ Debug : $S_Files2Attach[$x] = ' & $S_Files2Attach[$x] & @LF & '>Error code: ' & @error & @LF) ;### Debug Console If FileExists($S_Files2Attach[$x]) Then ConsoleWrite('+> File attachment added: ' & $S_Files2Attach[$x] & @LF) $objEmail.AddAttachment($S_Files2Attach[$x]) Else ConsoleWrite('!> File not found to attach: ' & $S_Files2Attach[$x] & @LF) SetError(1) Return 0 EndIf Next EndIf $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = $s_SmtpServer If Number($IPPort) = 0 Then $IPPort = 25 $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = $IPPort ;Authenticated SMTP If $s_Username <> "" Then $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = $s_Username $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = $s_Password EndIf If $ssl Then $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True EndIf ;Update settings $objEmail.Configuration.Fields.Update ; Set Email Importance Switch $s_Importance Case "High" $objEmail.Fields.Item("urn:schemas:mailheader:Importance") = "High" Case "Normal" $objEmail.Fields.Item("urn:schemas:mailheader:Importance") = "Normal" Case "Low" $objEmail.Fields.Item("urn:schemas:mailheader:Importance") = "Low" EndSwitch $objEmail.Fields.Update ; Sent the Message $objEmail.Send If @error Then SetError(2) Return $oMyRet EndIf $objEmail = "" EndFunc ;==>_INetSmtpMailCom ; ; ; Com Error Handler Func MyErrFunc() $HexNumber = Hex($oMyError.number, 8) $oMyRet[0] = $HexNumber $oMyRet = StringStripWS($oMyError.description, 3) ConsoleWrite("### COM Error ! Number: " & $HexNumber & " ScriptLine: " & $oMyError.scriptline & " Description:" & $oMyRet & @LF) SetError(1); something to check for when this function returns Return EndFunc ;==>MyErrFunc Edited December 7, 2012 by grimmlock Thanks Grimm
UEZ Posted December 6, 2012 Posted December 6, 2012 Something like that here? expandcollapse popup#cs ---------------------------------------------------------------------------- AutoIt Version: 3.3.8.1 Author: Me Script Function: Send tickets to helpdesk Template AutoIt script. #ce ---------------------------------------------------------------------------- ; Script Start - Add your code below here #include <File.au3> #include <GUIConstantsEx.au3> _main() Func _Main() Local $sUsername = @UserName ; User Name Local $sComputername = @ComputerName ; Computer Name Local $sText1 = ""; Output text for message box. Local $sText2 = ""; Output text for message box. Local $combo1 = ""; Output text for combo box. Local Const $sDomain = 'domain.com' Local Const $sServer = "mail" & '.' & $sDomain Local Const $sSupportEmail = "user" & '@' & $sDomain ClipPut($sServer) Local $hMainwindow = GUICreate("HR Employee App", 300, 600) GUICtrlCreateLabel("HR Employee App", 30, 10, 290, 40) GUICtrlSetFont(-1, 20, 800); bold GUICtrlCreateLabel($sText1, 25, 60) GUICtrlCreateLabel($sText2, 25, 78) Local $hOkButton = GUICtrlCreateButton("&Send", 200, 565, 80) GUISetState() GUICtrlCreateLabel("&Employee:", 25, 78, 75) Local $hCombo1 = GUICtrlCreateCombo("", 115, 75, 145) ; create first item GUICtrlSetData(-1, "New|Term|Transfer", "New") ; add other item snd set a new default GUICtrlCreateLabel("&Employee Name:", 25, 103, 85) Local $hInputText1 = GUICtrlCreateInput("", 115, 100, 145) GUICtrlCreateLabel("&Current Position:", 25, 128, 85) Local $hInputText2 = GUICtrlCreateInput("", 115, 125, 145) GUICtrlCreateLabel("&New Position:", 25, 153, 85) Local $hInputText3 = GUICtrlCreateInput("", 115, 150, 145) GUICtrlCreateLabel("&Current Location:", 25, 178, 85) Local $hInputText4 = GUICtrlCreateInput("", 115, 175, 145) GUICtrlCreateLabel("&New Location:", 25, 203, 85) Local $hInputText5 = GUICtrlCreateInput("", 115, 200, 145) GUICtrlCreateLabel("&Notes:", 25, 330, 75) Local $hInputText6 = GUICtrlCreateInput("", 25, 345, 235, 200) GUICtrlCreateLabel("&Last Date/Time:", 25, 228, 85) Local $hInputDate1 = GUICtrlCreateDate("", 115, 225, 145) GUICtrlCreateLabel("&Start Date/Time:", 25, 253, 85) Local $hInputDate2 = GUICtrlCreateDate("", 115, 250, 145) GUICtrlCreateLabel("&Copier Code:", 25, 278, 85) Local $hInputCheckbox1 = GUICtrlCreateCheckbox("Yes", 115, 275, 145, 20) GUICtrlSetState($hInputText2, $GUI_DISABLE) GUICtrlSetState($hInputText4, $GUI_DISABLE) GUICtrlSetState($hInputDate1, $GUI_DISABLE) While 1 Switch GUIGetMsg() Case $hOkButton $msg = "Subject: " & GUICtrlRead($hCombo1) & @CRLF & @CRLF & "Employee Name: " & GUICtrlRead($hInputText1) & @CRLF & @CRLF & "Current Position: " & GUICtrlRead($hInputText2) & @CRLF & @CRLF & "New Position: " & GUICtrlRead($hInputText3) & @CRLF & @CRLF & "Current Location: " & GUICtrlRead($hInputText4) & @CRLF & @CRLF & "New Location: " & GUICtrlRead($hInputText5) & @CRLF & @CRLF & "Last Date :" & GUICtrlRead($hInputDate1) & @CRLF & @CRLF & "Start Date :" & GUICtrlRead($hInputDate2) & @CRLF & @CRLF & "Copier Code: " & GUICtrlRead($hInputCheckbox1) & @CRLF & @CRLF & "Notes: " & GUICtrlRead($hInputText6) & @CRLF & @CRLF & "" & $sText1 & $sText2 & _wmigetcompinfo() OKButton($sServer, $sUsername, $sUsername & '@' & $sDomain, $sSupportEmail, "Employee: " & GUICtrlRead($hCombo1), $msg) ;- Case $hEmail ;- OnEmail($sSupportEmail) Case $GUI_EVENT_CLOSE Exit Case $hCombo1 Switch GUICtrlRead($hCombo1) Case "New" GUICtrlSetState($hInputText2, $GUI_DISABLE) GUICtrlSetState($hInputText4, $GUI_DISABLE) GUICtrlSetState($hInputDate1, $GUI_DISABLE) Case Else GUICtrlSetState($hInputText2, $GUI_ENABLE) GUICtrlSetState($hInputText4, $GUI_ENABLE) GUICtrlSetState($hInputDate1, $GUI_ENABLE) EndSwitch ;~ Send() EndSwitch WEnd EndFunc ;==>_Main Func _AddHorzSep($iX, $iY, $iW) GUICtrlCreateLabel("", $iX, $iY, $iW, 1) GUICtrlSetBkColor(-1, 0x000000) EndFunc ;==>_AddHorzSep Func _wmigetcompinfo($strComputer = "localhost") ; Generated by AutoIt Scriptomatic November 30, 2012 $wbemFlagReturnImmediately = 0x10 $wbemFlagForwardOnly = 0x20 $colItems = "" $sOutput = "" ;- $sOutput &= "Computer: " & $strComputer & @CRLF $sOutput &= "" $objWMIService = ObjGet("winmgmts:" & $strComputer & "rootCIMV2") $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystem", "WQL", _ $wbemFlagReturnImmediately + $wbemFlagForwardOnly) If IsObj($colItems) Then For $objItem In $colItems $sOutput &= "Computer Status: " & $objItem.Status & @CRLF Next Else Return ("WMI not functional") EndIf $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystemProduct", "WQL", _ $wbemFlagReturnImmediately + $wbemFlagForwardOnly) ;- If IsObj($colItems) Then ;- For $objItem In $colItems ;- MsgBox(0,"","SerialNumber" & $objItem.IdentifyingNumber) ;- $sOutput &= "SerialNumber: " & $objItem.IdentifyingNumber & @CRLF ;- Next Return ($sOutput) ;- EndIf EndFunc ;==>_wmigetcompinfo Func WMIDateStringToDate($dtmDate) Return (StringMid($dtmDate, 5, 2) & "/" & _ StringMid($dtmDate, 7, 2) & "/" & StringLeft($dtmDate, 4) _ & " " & StringMid($dtmDate, 9, 2) & ":" & StringMid($dtmDate, 11, 2) & ":" & StringMid($dtmDate, 13, 2)) EndFunc ;==>WMIDateStringToDate Func OKButton($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject, $s_Body) $rc = _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject, $s_Body) ProgressOn("Progress", "Submitting your ticket...", "0 percent") For $i = 0 To 100 Step 20 Sleep(500) ProgressSet($i, $i & " percent") Next ProgressSet(100, "Done", "Complete") Sleep(500) ProgressOff() If @error Then MsgBox(0, "Error sending message", "Error code:" & @error & " Description:" & $rc) Else MsgBox(0, "YVL HelpDesk App", "Your ticket has been submitted successfully") ;~ else EndIf Exit EndFunc ;==>OKButton Func OnEmail($sSupportEmail) Run(@ComSpec & " /c " & 'start mailto:' & $sSupportEmail, "", @SW_HIDE) EndFunc ;==>OnEmail Func CLOSEClicked() ;Note: at this point @GUI_CTRLID would equal $GUI_EVENT_CLOSE, ;and @GUI_WINHANDLE would equal $hMainwindow Exit EndFunc ;==>CLOSEClicked ; ; The UDF Func _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject = "", $sBody = "", $s_AttachFiles = "", $s_CcAddress = "", $s_BccAddress = "", $s_Importance = "Normal", $s_Username = "", $s_Password = "", $IPPort = 25, $ssl = 0) Global $oMyRet[2] Global $oMyError = ObjEvent("AutoIt.Error", "MyErrFunc") Local $objEmail = ObjCreate("CDO.Message") $objEmail.From = '"' & $s_FromName & '" <' & $s_FromAddress & '>' $objEmail.To = $s_ToAddress Local $i_Error = 0 Local $i_Error_desciption = "" If $s_CcAddress <> "" Then $objEmail.Cc = $s_CcAddress If $s_BccAddress <> "" Then $objEmail.Bcc = $s_BccAddress $objEmail.Subject = $s_Subject If StringInStr($sBody, "<") And StringInStr($sBody, ">") Then $objEmail.HTMLBody = $sBody Else $objEmail.Textbody = $sBody & @CRLF EndIf If $s_AttachFiles <> "" Then Local $S_Files2Attach = StringSplit($s_AttachFiles, ";") For $x = 1 To $S_Files2Attach[0] $S_Files2Attach[$x] = _PathFull($S_Files2Attach[$x]) ;~ ConsoleWrite('@@ Debug : $S_Files2Attach[$x] = ' & $S_Files2Attach[$x] & @LF & '>Error code: ' & @error & @LF) ;### Debug Console If FileExists($S_Files2Attach[$x]) Then ConsoleWrite('+> File attachment added: ' & $S_Files2Attach[$x] & @LF) $objEmail.AddAttachment($S_Files2Attach[$x]) Else ConsoleWrite('!> File not found to attach: ' & $S_Files2Attach[$x] & @LF) SetError(1) Return 0 EndIf Next EndIf $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = $s_SmtpServer If Number($IPPort) = 0 Then $IPPort = 25 $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = $IPPort ;Authenticated SMTP If $s_Username <> "" Then $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = $s_Username $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = $s_Password EndIf If $ssl Then $objEmail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True EndIf ;Update settings $objEmail.Configuration.Fields.Update ; Set Email Importance Switch $s_Importance Case "High" $objEmail.Fields.Item("urn:schemas:mailheader:Importance") = "High" Case "Normal" $objEmail.Fields.Item("urn:schemas:mailheader:Importance") = "Normal" Case "Low" $objEmail.Fields.Item("urn:schemas:mailheader:Importance") = "Low" EndSwitch $objEmail.Fields.Update ; Sent the Message $objEmail.Send If @error Then SetError(2) Return $oMyRet EndIf $objEmail = "" EndFunc ;==>_INetSmtpMailCom ; ; ; Com Error Handler Func MyErrFunc() $HexNumber = Hex($oMyError.number, 8) $oMyRet[0] = $HexNumber $oMyRet = StringStripWS($oMyError.description, 3) ConsoleWrite("### COM Error ! Number: " & $HexNumber & " ScriptLine: " & $oMyError.scriptline & " Description:" & $oMyRet & @LF) SetError(1); something to check for when this function returns Return EndFunc ;==>MyErrFunc Br, UEZ Please don't send me any personal message and ask for support! I will not reply! Selection of finest graphical examples at Codepen.io The own fart smells best! ✌Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!¯\_(ツ)_/¯ ٩(●̮̮̃•̃)۶ ٩(-̮̮̃-̃)۶ૐ
kylomas Posted December 6, 2012 Posted December 6, 2012 grimmlock, Are you expecting the & in front of the label control text to work like a menu (alt+underlined letter)? If so, it is not working for me. I am not aware that this applies to label controls, if so, please advise. kylomas Forum Rules Procedure for posting code "I like pigs. Dogs look up to us. Cats look down on us. Pigs treat us as equals." - Sir Winston Churchill
grimmlock Posted December 7, 2012 Author Posted December 7, 2012 UEZ, That is what I was looking for, I made a minor change and used $GUI_HIDE instead of $GUI_DISABLE, as I wanted the user/client to just see the available fields. Thank you Grimm Thanks Grimm
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now