Jump to content
FMS

error in returning valeus

Recommended Posts

FMS

Hello,

I'm rather new at Autoit (picked it up again afther a couple of years) but i dont know what I'm doing wrong here.
I hope somebody can help me making this script "better readeble" and explain what I'm doing wrong here.
The thing that i want to do here is making a tool that helps me whit doing mine work.
Also want to do the "ping" command in the background whit only a msgbox if ok or not.
In the code I'm writing now I'm using Send commands but know that there is a better way for this.

At this point there is a error also whish i do not udnerstand where it is comming from.
the error i get is:

MsgBox($MB_SYSTEMMODAL, "Error", " Error no IP or name is filled in")
MsgBox(^ ERROR

Could somebody help me whit looking at this code?
 

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


$Form1 = GUICreate("Form1", 385, 112, 192, 124)
$iIP = GUICtrlCreateInput("", 80, 16, 209, 21)
$btn_ping = GUICtrlCreateButton("Ping", 24, 56, 89, 25)
$btn_vnc = GUICtrlCreateButton("VNC", 136, 56, 89, 25)
$btn_evr = GUICtrlCreateButton("Eventvieuwer", 248, 56, 89, 25)
GUISetState(@SW_SHOW)

Func check_input()
   If GUICtrlRead($iIP) = "" Then
        Return False
    Else
        Return True
    Endif
 EndFunc

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
         Case $btn_ping
            $check = check_input()
            If ($check = False) Then
               Run ("cmd.exe")
               WinWaitActive("C:\WINDOWS\system32\cmd.exe")
               Send ("ping " & GUICtrlRead($iIP) & "{ENTER}")
               WinClose ("C:\WINDOWS\system32\cmd.exe")
               ;if ping OK then msgbox OK else NOK
            Else
               MsgBox($MB_SYSTEMMODAL, "Error", " Error no IP or name is filled in")
            EndIf
         Case $btn_vnc
            $check = check_input()
            If ($check = False) Then
               Run ("cmd.exe")
               WinWaitActive("C:\WINDOWS\system32\cmd.exe")
               Send ("eventvwr.exe " & GUICtrlRead($iIP) & "{ENTER}")
               WinClose ("C:\WINDOWS\system32\cmd.exe")
            Else
               MsgBox($MB_SYSTEMMODAL, "Error", " Error no IP or name is filled in")
            EndIf
         Case $btn_evr
            $check = check_input()
            If ($check = False) Then
               Run ("cmd.exe")
               WinWaitActive("C:\WINDOWS\system32\cmd.exe")
               Send ("vncviewer " & GUICtrlRead($iIP) & "{ENTER}")
               WinClose ("C:\WINDOWS\system32\cmd.exe")
            Else
               MsgBox($MB_SYSTEMMODAL, "Error", " Error no IP or name is filled in")
            EndIf
    EndSwitch
 WEnd

 


as finishing touch god created the dutch

Share this post


Link to post
Share on other sites
water

You need to add

#include <MsgBoxConstants.au3>

at the top of your script.


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites
FMS

thanks - added :)
Do you also know how to ping in the background and iff result is good a massagebox apears?

thanks in advanced


as finishing touch god created the dutch

Share this post


Link to post
Share on other sites
water

AutoIt offers a Ping function. So there is no need to run CMD.


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites
FMS

thanks this helps a lot...
The thing is :
the ping command is very usefull for the 1st button.
for the other buttons (VNC and eventviewer) I want to run like a batch script and I only know to do it whit "in screen"  commands like "Send" ,
Could u help me whit this? :

VNC button:

set /p ipadres=Wwhat is the IP of machine?
:LOOP
ping %ipadres% -w 1 > nul
IF ERRORLEVEL 1 GOTO :DEAD
IF ERRORLEVEL 0 GOTO :ALIVE
:DEAD
Echo Time-Out on %ipadres%...
GOTO :LOOP
:ALIVE
ECHO The machine is online and VNC wil be started
cd\
cd "C:\Program Files\Realvnc\vnc4"
vncviewer %ipadres%

cls

 

EVENTVIEWER button:

set /p ipadres=What is the IP of the machine?
net use z: /DELETE /Y
net use z: \\%ipadres%\C$ /user:username password
CLS
ECHO Event Viewer will be started...
c:\WINDOWS\system32\eventvwr.exe %ipadres%
CLS
ECHO Event Viewer wordt gestart...
ping -n 20 127.0.0.1 > nul
net use z: /DELETE /Y

 


as finishing touch god created the dutch

Share this post


Link to post
Share on other sites
water

Should be quite easy:

$sIP = InputBox("Prompt", "What is the IP of the machine?")
If Ping($sIP) > 0 Then
    Run("C:\Program Files\Realvnc\vnc4\vncviewer.exe " & $sIP)
Else
    MsgBox($MB_ICONERROR, "Error", $sIP & " is dead. @error = " & @error)
EndIf

 


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites
FMS

who knows,....
this will make mine code a lot simpler and shorter!
Many thanks :)


as finishing touch god created the dutch

Share this post


Link to post
Share on other sites
water

:)


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • lenclstr746
      By lenclstr746
      HELLO GUYS
      I'm a work on a background see and click bot project 
      I can complete it if your help me
      (using imagesearch , gdi+ and  fastfind)
    • nacerbaaziz
      By nacerbaaziz
      Hi dear
      With this script you can print Unicode text in the CMD screen
      the script is  easy to use
      just you  write the text that contains Unicode in the first input
      and the script automatically reflect the code in the second input
       you can copy the text to the clipboard
      or you can try printing the text in the CMD window
      I apologize to everyone for colors and shape if not appropriate
      I'm a blind man and I do not see
      Thank you for your understanding
      Greetings to all of youCmdUtM.au3
    • Simpel
      By Simpel
      Hi.
      Thanks to this post (https://www.autoitscript.com/forum/topic/189553-writing-to-cmd/?do=findComment&comment=1361142) I can now write a helpfile to the cmd when for instance passing parameter -h or -help at cmd. But then cmd is blocked by the script (I had to free it with CTRL+BREAK):
      #include <WinAPI.au3> _WinAPI_AttachConsole() $hConsole = _WinAPI_GetStdHandle(1) _WinAPI_WriteConsole($hConsole, "Print helpfile................" & @CRLF) Inside MSDN Library then I found this sentence: A process can use the FreeConsole function to detach itself from its console.
      But I don't find something like _WinAPI_FreeConsole(). How can I do it in another way?
      Regards, Conrad
    • TheAutomator
      By TheAutomator
      A fullscreen console with custom commands!

      Introduction:
      Hi everyone!
      This funny project started as a question in the help section:
      https://www.autoitscript.com/forum/topic/174404-edit-detect-key-before-updating-content/
      I'd like to share this script with everyone that is interested. 
       
      Why would I want it?
      You like the old style fullscreen console (like in the old day's), You can add custom commands, You can customize the font a lot more compared to cmd.exe, You can share ideas or add tweaks to the script.  
      Still to do:
      Write a simple custom programming language to implement this tool. Writing a little help file / pdf to describe my little programming language. Add little sound effects like a beep if there is a syntax error (optional). Clean up and modify Console.Au3 content. Add an option to have to type a login password (optional). Make an optional installer that also gives scripts for this tool a custom icon and open with command. ...Call Neo?  
      Thanks to:
      xxaviarxx: debugging, some ideas. jguinch: debugging, adding a bunch of tweaks and ideas. kylomas: debugging, new ideas.  
      Edits and updates:
      Added usage of tab key in edit control Edit has focus now on startup I'm currently rewriting a simple custom programming language to implement this tool.  
      UDF download: Console.au3
       
      Regards
      TheAutomator
    • ur
      By ur
      When we run our exe from any service or through any background process, it won't interact with the applications running in the foreground, I mean launched when the user is logged in or in GUI mode.
       
      Let's say, the onedrive sync app can't be detected from the exe we created and running it in background.

      I tried both options below.

       
      Any Idea how to interact with foreground processes using AuotIT code.

      Other than telling to launch the exe also in foreground.
×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.