Jump to content

CodeMaster Rapture

Active Members
  • Posts

    167
  • Joined

  • Last visited

Everything posted by CodeMaster Rapture

  1. I don't see a problem with your code, but I'm still a novice in C++ at best. So, I take it that the parser for this language is able to pass pointers properly. For example: Global $a_Array[3] = [1,2,3] Global $a_NewArray[3] = [0,0,0] $a_Array = $a_NewArray Even though we the developers cannot see/alter them. Just thought it was odd. I was expecting a handle/pointer. I did come up with my own UDF to compare arrays properly, but it is rather slow when comparing 3+ dimensional arrays (obviously).
  2. Hello, I had an odd idea in my head to try and compare arrays as a whole to each other to see what might be true. Can someone explain the following to me? Global $a_Values[3] = [1,2,3] Global $a_Stuff[3] = [0,0,0] If ($a_Values == $a_Stuff) Then MsgBox(0,"Equal!","-----------" & @CRLF & $a_Stuff & @CRLF & $a_Values & @CRLF & "-----------") Else MsgBox(0,"Not Equal!","-----------" & @CRLF & $a_Stuff & @CRLF & $a_Values & @CRLF & "-----------") EndIf This code is always true and the MsgBox always returns: ----------- ----------- If I refer to an entire array, I figured that it would return the pointer to the array. Why does it return ""?
  3. Well, first off, at the bottom of your script is your WEnd. So, everytime it loops, it is recreating EVERYTHING (functions and all). Second off, your Switch statment is ended with an EndIF instead of EndSwitch. From there you got some more clean up to do.
  4. Hey all, I'm writing a test-bed for some telnet automation and trying to create a recv'd history so I can do auto-login and/or send commands based off of what the server says. I know the problem resides in my recv function, but I'm at a loss to where I'm getting extra @CRLFs from. Here is my code: Func Telnet_Recv($hSocket,$maxlen = 65536) Local $Data = TCPRecv($hSocket,$maxlen) If (StringLen($Data) == 0) Then Return False EndIf $Data = StringReplace($Data,@LF & @CR,@CRLF) ;Deal with older linux telnet servers that only send \n\r and replace with \r\n _AddLog("Telnet_Recv: Received (" & StringLen($Data) & " characters)" & @CRLF & "{" & @CRLF & $Data & @CRLF & "}") $Data = StringSplit($Data,@CRLF) ;Split up my data into an array... _ArrayDelete($Data,0) ;Element 0 is number of lines, so delete this element... _ArrayConcatenate($Telnet_Buffer,$Data) ;Concatenate the new data into my buffer If (UBound($Telnet_Buffer) > 2000) Then ;If my buffer has grown over its limit ReDim $Telnet_Buffer[2000] ;redim it. EndIf ;Refresh my recv'd buffer editbox if new lines were recv'd If (GUICtrlRead($hGUI_LBL_Lines) <> ("Lines: " & (UBound($Telnet_Buffer)-1))) Then ;Ugly logic, I know, temporary debug code... Local $newData = _ArrayToString($Telnet_Buffer,@CRLF,1) ;Turn my buffer array into one big string GUICtrlSetData($hGUI_EDT_Lines,$newData) ;Copy it to my editbox for viewing GUICtrlSetData($hGUI_LBL_Lines,(UBound($Telnet_Buffer)-1)) ;Update my label telling me the size of my buffer EndIf Return True EndFunc So what I'm getting in my log is: Telnet_Startup: Succeeded! Telnet_Connect: Connected to www.temporal-rifts.org(216.136.9.5):7887 successfully! Telnet_Recv: Received (1460 characters) { + . ! ! ! |>>> |>>> ! |>>> |>>> |>>> |>>> |_ _ _ |_ |_ _ _ |_ | |_| |_| |_| | | |_| |_| |_| | \___________/ __ __ __ __ __ __ \___________/ |%, ,%|__ | |_| |_| |_| |_| |_| | __|%, ,%| |-% .-.-| |/ [][][][][][][][][] \| |-.-. %- | | %, | | | [] Welcome [] | | | ,% | | -%|_| | [] to [] | |_|%- | | ,- | [] [] | -, | | ,% %, | [] Temporal [] | ,% %, | `` |-.-. % | [] Rifts [] | % .-.-| |%| | -%, | []__________________________[] | ,%- | |%| | |_| ,%| [] [] |%, |_| | | ,%,%-| [] Based on Rom 2.4 [] |-%,%, | |,%-% %-,| [] [] |,%, -%, | %| %- | [] Heavily Modified [] | -%, -%,|% %%%-%,- | [] [] | -,%-%%% %%%%%][][][][]\___[] []___/[][][][][%%%%% %lc%%][][][][][]-"^"- -"^"-[][][][][][%%%%% -"^"-"^"-"^"-"^"- - } Telnet_Recv: Received (240 characters) { "^"-"^"-"^"-"^"- This is an RP encouraged mud. Please choose an appropriate name for your character. If you fail to do so, you will be asked to choose a more appropriate one upon creation. By what name do you wish to be known? } And what I'm getting in my editbox is: ###START### + . ! ! ! |>>> |>>> ! |>>> |>>> |>>> |>>> |_ _ _ |_ |_ _ _ |_ | |_| |_| |_| | | |_| |_| |_| | \___________/ __ __ __ __ __ __ \___________/ |%, ,%|__ | |_| |_| |_| |_| |_| | __|%, ,%| |-% .-.-| |/ [][][][][][][][][] \| |-.-. %- | | %, | | | [] Welcome [] | | | ,% | | -%|_| | [] to [] | |_|%- | | ,- | [] [] | -, | | ,% %, | [] Temporal [] | ,% %, | `` |-.-. % | [] Rifts [] | % .-.-| |%| | -%, | []__________________________[] | ,%- | |%| | |_| ,%| [] [] |%, |_| | | ,%,%-| [] Based on Rom 2.4 [] |-%,%, | |,%-% %-,| [] [] |,%, -%, | %| %- | [] Heavily Modified [] | -%, -%,|% %%%-%,- | [] [] | -,%-%%% %%%%%][][][][]\___[] []___/[][][][][%%%%% %lc%%][][][][][]-"^"- -"^"-[][][][][][%%%%% -"^"-"^"-"^"-"^"- - "^"-"^"-"^"-"^"- This is an RP encouraged mud. Please choose an appropriate name for your character. If you fail to do so, you will be asked to choose a more appropriate one upon creation. By what name do you wish to be known? ###END### As you can see, my buffer is getting 2 sets of @CRLFs per line somehow. Any clues? -CMR
  5. Wierd. Maybe a bug in StringFormat?
  6. You could write a hack to do it. Something like: ;Inside your GUIGetMsg() Loops Case ($GUI_EVENT_SECONDARY_DOWN) If (WinActive("Your GUI's Title")) Then Send("^c") ;To copy highlighted text EndIf Case ($GUI_EVENT_SECONDARY_UP) If (WinActive("Your GUI's Title")) Then $CopiedText = ClipGet() If (Not @error) Then $MouseInfo = GUIGetCursorInfo($Your_GUI_Handle) If ($MouseInfo[4] == $InputBoxOnRight_Handle) Then GUICtrlSetData($InputBoxOnRight_Handle,$CopiedText) EndIf EndIf EndIf Ugly, but it would work (well, check syntax cuz that's 100% memory). -CMR
  7. Try doing something like: $runstring = @ComSpec & " /c " & StringFormat('copy %s C:\test\C_M_F.txt', $sFile1) MsgBox(0,"Runstring",$runstring) My guess is that @ComSpec isn't being parsed properly because of: Online Docs: value of %comspec%, the SPECified secondary COMmand interpreter; primarily for command line uses, e.g. Run(@ComSpec & " /k help | more") Which means %c and % in %comspec% might be the culprit. Since StringFormat might be taking it literally. -CMR
  8. Nope. The problem is, Dx/OpenGL in fullscreen mode override windows's GUIMsg pump and sometimes keyboard msg pump. You would have to either force the application out of fullscreen mode and/or hook the DLL (which is considered cheating by most games and if this is for CSS, instant ban). You may want to look into playing your game in windowed mode and see if there is a way to remove the title bar/border and use Au3 to maximize it. That way uoi can do your overlay. -CMR
  9. Have you tried MsgBox(0,"Runstring",$runstring) to see if it is even a valid run command?
  10. Please note that WinSetOnTop() does not work for most DirectX and OpenGL fullscreen applications.
  11. Sounds awfully malicious...
  12. Nice! Thanx for the insight nobbe!
  13. And I'd like to mention that a pixel checksum for the same unaltered area isn't always the same. Not sure why...
  14. From the helpfile: "speed [optional] the speed to move the mouse in the range 1 (fastest) to 100 (slowest). A speed of 0 will move the mouse instantly. Default speed is 10." Try changing your MouseClick($x,$y) to MouseClick($x,$y,0) -CMR
  15. MsCreator, I'm not sure what you mean by CallBack IDs, can you give me an example? -CMR
  16. Greetings, I designed this set of UDFs because I wanted to use multiple functions for Adlib'ing. I also added an enhancement that will allow you to pass arguments to your adlib'ed functions. Granted, it is limited to whatever the built-in Call() function can handle, but I still think it is useful none the less. The _Adlib_Handler() function is not extremely time accurate, but it is pretty close on my machine. It will vary from computer to computer. If there are any bugs, let me know and I'll fix them. AdlibHandler.au3 #cs ---------------------------------------------------------------------------- AutoIt Version: 3.2.10.0 Author: CodeMaster Rapture Script Function: Provides extra functionality to built-in AdlibEnable/AdlibDisable functions. #ce ---------------------------------------------------------------------------- #include <Array.au3> Global $Adlib_Counters[1] = [0] Global $Adlib_Func_Names[1] = [0] Global $Adlib_Func_Params[1] = [0] Global $Adlib_Func_Timers[1] = [0] ;=============================================================================== ; ; Function Name: _Adlib_Handler() ; ; Parameter(s): None ; Requirement(s): Place AdlibEnable("_Adlib_Handler",XXX) at the begining of your script. ; Replace XXX with a time in milliseconds you want this function polled. ; Alternatively you can place _Adlib_Handler() in your main loop, but I recommend a Sleep(50) or higher in that same loop. ; Return Value(s): None ; Author(s): CodeMaster Rapture ; Notes(s): ; This Adlib Enhancement can be inaccurate depending on your system and/or proccessor. Not recommended if you need accurate timing. ; You can disable this function at anytime via AdlibDisable("_Adlib_Handler") or by your own mechanics if you use the alternate method. ; ;===================================================================== Func _Adlib_Handler() If ($Adlib_Counters[0] == 0) Then Return Local $iter, $bDoesNotExist = False For $iter = 1 To $Adlib_Counters[0] If (TimerDiff($Adlib_Counters[$iter]) >= $Adlib_Func_Timers[$iter]) Then Local $a_Params = StringSplit($Adlib_Func_Params[$iter],"|") If (@error) Then If ($a_Params[1] == "") Then Call($Adlib_Func_Names[$iter]) If (@error) Then MsgBox(16,"Adlib Handler Error","Function '" & $Adlib_Func_Names[$iter] & "' does not exist." & @CRLF & "Deleting bad function.") _Adlib_DeleteFunction($Adlib_Func_Names[$iter]) Return EndIf Else Call($Adlib_Func_Names[$iter],$a_Params[1]) If (@error) Then MsgBox(16,"Adlib Handler Error","Function '" & $Adlib_Func_Names[$iter] & "' does not exist." & @CRLF & "Deleting bad function.") _Adlib_DeleteFunction($Adlib_Func_Names[$iter]) Return EndIf EndIf Else $a_Params[0] = "CallArgArray" Call($Adlib_Func_Names[$iter],$a_Params) If (@error) Then MsgBox(16,"Adlib Handler Error","Function '" & $Adlib_Func_Names[$iter] & "' does not exist." & @CRLF & "Deleting bad function.") _Adlib_DeleteFunction($Adlib_Func_Names[$iter]) Return EndIf EndIf $Adlib_Counters[$iter] = TimerInit() EndIf Next EndFunc ;=============================================================================== ; ; Function Name: _Adlib_AddFunction() ; ; Parameter(s): $sFunctionName - Name of the function to be called without the trailing () or parameters. ; $sParams - [optional] Any parameters you want to pass to the function seperated by "|". ; $iTime - [optional] (default = 100) The amount of time (in milliseconds) to wait between function calls. ; Must be higher than 10ms. If not, it will be set to 100ms anyways. ; Requirement(s): None ; Return Value(s): On Success - Returns True ; On Failure - Returns False ; @error=1 Invalid function name (as in, it wasn't a string or was left blank) ; @error=2 Invalid time format. Cannot be a string or float. ; @error=3 For some reason, your function could not be added to the queue (internal Au3 problem) ; Author(s): CodeMaster Rapture ; Notes(s): ; Usage Example: ; _Adlib_AddFunction("myAddNumbers","123|569",1000) ; ; Limitations: ; You cannot use variables ByRef as parameters. ; You cannot pass an array as a parameter unless you want to use _ArrayToString() on it. ; All parameters will be passed as strings. ; ;===================================================================== Func _Adlib_AddFunction($sFunctionName,$sParams = "",$iTime = 100) If (Not IsString($sFunctionName) Or ($sFunctionName == "")) Then SetError(1) Return False EndIf If (Not IsInt($iTime)) Then SetError(2) Return False EndIf If ($iTime < 10) Then $iTime = 10 _ArrayAdd($Adlib_Counters,TimerInit()) If (@error) Then SetError(3) Return False EndIf _ArrayAdd($Adlib_Func_Names,$sFunctionName) If (@error) Then _ArrayPop($Adlib_Counters) SetError(3) Return False EndIf _ArrayAdd($Adlib_Func_Params,$sParams) If (@error) Then _ArrayPop($Adlib_Func_Names) ;Pop the function name in order to keep Adlib_Func_X arrays in sync SetError(3) Return False EndIf _ArrayAdd($Adlib_Func_Timers,$iTime) If (@error) Then _ArrayPop($Adlib_Func_Names) ;Pop the function name in order to keep Adlib_Func_X arrays in sync _ArrayPop($Adlib_Func_Params) ;Pop the function params in order to keep Adlib_Func_X arrays in sync SetError(3) Return False EndIf $Adlib_Counters[0] += 1 $Adlib_Func_Names[0] += 1 $Adlib_Func_Params[0] += 1 $Adlib_Func_Timers[0] += 1 Return True EndFunc ;=============================================================================== ; ; Function Name: _Adlib_DeleteFunction() ; ; Parameter(s): $sFunctionName - Name of the function to be deleted from the Adlib Handler. ; Requirement(s): None ; Return Value(s): On Success - Returns True ; On Failure - Returns False ; @error=1 Invalid function name (as in, it wasn't a string or was left blank) ; @error=2 $sFunctionName not found. ; Author(s): CodeMaster Rapture ; Notes(s): ; Usage Example: ; _Adlib_DeleteFunction("myAddNumbers") ; ; This function will delete the first occurence of the function name. ; Keep this in mind if you add the same function more than once (but with different parameters for example). ; ;===================================================================== Func _Adlib_DeleteFunction($sFunctionName) If ((Not IsString($sFunctionName)) Or ($sFunctionName == "")) Then SetError(1) Return False EndIf Local $iElement $iElement = _ArraySearch($Adlib_Func_Names,$sFunctionName,1,$Adlib_Func_Names[0],1) If ($iElement > 0) Then _ArrayDelete($Adlib_Counters,$iElement) _ArrayDelete($Adlib_Func_Names,$iElement) _ArrayDelete($Adlib_Func_Params,$iElement) _ArrayDelete($Adlib_Func_Timers,$iElement) $Adlib_Counters[0] -= 1 $Adlib_Func_Names[0] -= 1 $Adlib_Func_Params[0] -= 1 $Adlib_Func_Timers[0] -= 1 Return True EndIf SetError(2) Return False EndFunc
  17. Maybe because you are trying to read and write the same file at the same time? Func _BinaryWriteFile($f_Path) _FileCreate($f_Path & $f_type[0]) $f_Open = FileOpen($f_Path & $f_type[0], 17) ;Opened here... FileWrite($f_Open, $recv) ;Wrote here FileClose($f_Open) ;**********Try adding this?******** $f2_Open = FileOpen($f_Path & $f_Type[0], 16) ;Opened again here? $f_read = FileRead($f2_Open) FileClose($f2_Open) ;*** And add this maybe? *** If $f_read = "" Then Return 0 SetError(1) Else Return 1 Endif Endfunc
  18. Alrighty, So I've got this little app that moves windows around for me and I'm trying to keep a list of certain windows to look for for my layouts. I've got it working, but when I tried to add a little debug window that would show me what windows are active, it just craps out on me. I'm using AdlibEnable() to check for new windows and/or non-existant windows and update the list appropriately. The goofy part is the _CheckForNewWindows() function is called by AdlibEnable(), but the _ClearDeadWindows() function is NEVER called... Why??? Here's my code: #include <GuiConstants.au3> Opt("MouseCoordMode",1) ;By screen Opt("WinTitleMatchMode",3) ;Exact Match AdlibEnable("_ClearDeadWindows",1000) AdlibEnable("_CheckForNewWindows",3000) HotKeySet("{F9}","_LayoutOne") HotKeySet("{F10}","_LayoutTwo") HotKeySet("{F11}","_LayoutThree") Global $MAX_WINDOWS = 3 Global $MAX_PRESETS = 3 Global $a_Windows[$MAX_WINDOWS] = [0,0,0] Global $a_WindowPreset[$MAX_PRESETS][4] ;Preset for window 1 (1288x852) $a_WindowPreset[0][0] = 0 ;Xpos $a_WindowPreset[0][1] = 0 ;Ypos $a_WindowPreset[0][2] = 1288 ;Width $a_WindowPreset[0][3] = 768 ;Height ;Preset for window 2 (644x256) $a_WindowPreset[1][0] = 0 $a_WindowPreset[1][1] = 768 $a_WindowPreset[1][2] = 640 $a_WindowPreset[1][3] = 256 ;Preset for window 3 (644x256) $a_WindowPreset[2][0] = 640 $a_WindowPreset[2][1] = 768 $a_WindowPreset[2][2] = 640 $a_WindowPreset[2][3] = 256 $GUI = GUICreate("Layout Manager",640,256) $lst_Windows = GUICtrlCreateList("",0,0,640,265) GUISetState(@SW_SHOW) While 1 If (GUIGetMsg() == $GUI_EVENT_CLOSE) Then Exit WEnd Func _SetWindowToPreset($Window,$Preset) If (Not WinExists($a_Windows[$Window])) Then Return EndIf WinMove($a_Windows[$Window], "",$a_WindowPreset[$Preset][0],$a_WindowPreset[$Preset][1],$a_WindowPreset[$Preset][2],$a_WindowPreset[$Preset][3]) EndFunc Func _LayoutOne() _SetWindowToPreset(0,0) _SetWindowToPreset(1,1) _SetWindowToPreset(2,2) EndFunc Func _LayoutTwo() _SetWindowToPreset(1,0) _SetWindowToPreset(0,1) _SetWindowToPreset(2,2) EndFunc Func _LayoutThree() _SetWindowToPreset(2,0) _SetWindowToPreset(1,1) _SetWindowToPreset(0,2) EndFunc Func _IsWindowInList($hWnd) Local $iter_Windows For $iter_Windows = 0 To $MAX_WINDOWS-1 If ($a_Windows[$iter_Windows] == $hWnd) Then Return True Next ;End MAX_WINDOWS Return False EndFunc Func _CheckForNewWindows() Local $iter_WList = 0, $iter_Windows = 0 ;Check for new windows: $Window_List = WinList("Wordpad") For $iter_WList = 1 To $Window_List[0][0] For $iter_Windows = 0 To $MAX_WINDOWS-1 If (_IsWindowInList($Window_List[$iter_WList][1])) Then ExitLoop ;Add new window into our list If (Not $a_Windows[$iter_Windows]) Then $a_Windows[$iter_Windows] = $Window_List[$iter_WList][1] ;Handle GUICtrlSetData($lst_Windows,WinGetTitle($a_Windows[$iter_Windows]) & " (" & $a_Windows[$iter_Windows] & ")|") Return EndIf Next ; End MAX_WINDOWS Next ;End Window_List EndFunc Func _ClearDeadWindows() MsgBox(0,"ClearDeadWindows","Called.") Local $iter_Windows GUICtrlSetData($lst_Windows,"") For $iter_Windows = 0 To $MAX_WINDOWS-1 If (WinExists($a_Windows[$iter_Windows])) Then GUICtrlSetData($lst_Windows,WinGetTitle($a_Windows[$iter_Windows]) & " (" & $a_Windows[$iter_Windows] & ")|") Else $a_Windows[$iter_Windows] = 0 EndIf Next ;End MAX_WINDOWS EndFunc As you can see, I added a MsgBox to _ClearDeadWindows() and it never pops up. Am I missing something? Just in case this is a computer specific problem, here's what I'm running: Windows XP Professional 64-Bit SP2 AMD Athlon 64 FX-60 8GB Ram AutoIt 3.2.10.0 SciTE 1.75 -CMR
  19. Hey there, I'm working on a simple script to resize and move some windows (tile them). I've got the foundation working. I was curious if it is possible to change the styles/ex-styles of windows not created through Au3. I want to strip the titlebars and borders from 3 windows so all I get is the client area. Any suggestions (Au3, C++, or even C#)? Obviously GUISetStyle() doesn't work because I didn't create the window in Au3 (even if I do pass the handle). Here's my code so far: HotKeySet("{F9}","_LayoutOne") HotKeySet("{F10}","_LayoutTwo") HotKeySet("{F11}","_LayoutThree") Opt("MouseCoordMode",1) Global $a_WindowInfo[3][5] ;[X][0] = Window Title ;[X][1] = Current X Position ;[X][2] = Current Y Position ;[X][3] = Current Width ;[X][4] = Current Height $a_WindowInfo[0][0] = "myNotepad One" $a_WindowInfo[1][0] = "myNotepad Two" $a_WindowInfo[2][0] = "myNotepad Three" Global $a_WindowPreset[3][4] ;Preset for window 1 $a_WindowPreset[0][0] = -4 ;Xpos $a_WindowPreset[0][1] = -30 ;Ypos $a_WindowPreset[0][2] = 1288 ;Width $a_WindowPreset[0][3] = 824 ;Height ;Preset for window 2 $a_WindowPreset[1][0] = -4 $a_WindowPreset[1][1] = 764 $a_WindowPreset[1][2] = 645 $a_WindowPreset[1][3] = 265 ;Preset for window 3 $a_WindowPreset[2][0] = 640 $a_WindowPreset[2][1] = 764 $a_WindowPreset[2][2] = 645 $a_WindowPreset[2][3] = 265 While 1 If (WinActive("Notepad")) Then $sz_Rename = InputBox("Setup","Rename it to what?") WinSetTitle("Notepad","",$sz_Rename) EndIf Sleep(100) WEnd Func _SetWindowToPreset($Char,$Preset) If (Not WinExists($a_WindowInfo[0][0]) Or Not WinExists($a_WindowInfo[1][0]) Or Not WinExists($a_WindowInfo[2][0])) Then Return EndIf $a_WindowInfo[$Char][1] = $a_WindowPreset[$Preset][0] $a_WindowInfo[$Char][2] = $a_WindowPreset[$Preset][1] $a_WindowInfo[$Char][3] = $a_WindowPreset[$Preset][2] $a_WindowInfo[$Char][4] = $a_WindowPreset[$Preset][3] EndFunc Func _LayoutOne() _SetWindowToPreset(0,0) _SetWindowToPreset(1,1) _SetWindowToPreset(2,2) _MoveEm() EndFunc Func _LayoutTwo() _SetWindowToPreset(1,0) _SetWindowToPreset(0,1) _SetWindowToPreset(2,2) _MoveEm() EndFunc Func _LayoutThree() _SetWindowToPreset(2,0) _SetWindowToPreset(1,1) _SetWindowToPreset(0,2) _MoveEm() EndFunc Func _MoveEm() If (Not WinExists($a_WindowInfo[0][0]) Or Not WinExists($a_WindowInfo[1][0]) Or Not WinExists($a_WindowInfo[2][0])) Then Return EndIf WinMove($a_WindowInfo[0][0],"",$a_WindowInfo[0][1],$a_WindowInfo[0][2],$a_WindowInfo[0][3],$a_WindowInfo[0][4]) WinMove($a_WindowInfo[1][0],"",$a_WindowInfo[1][1],$a_WindowInfo[1][2],$a_WindowInfo[1][3],$a_WindowInfo[1][4]) WinMove($a_WindowInfo[2][0],"",$a_WindowInfo[2][1],$a_WindowInfo[2][2],$a_WindowInfo[2][3],$a_WindowInfo[2][4]) EndFunc Thanx in advance, CMR
  20. Thank you, but I was looking for something a little more elegant. I was going to take this route myself, but hoping someone knew of a good API/DLL I could use for this instead. -CMR
  21. You also try ControlSend to the dialogbox. I use it on slower machines.
  22. Hey all, I'm working on a project where I need to hyperterminal and/or telnet into a series of routers and check configurations and make changes. Any suggestions on APIs and/or DLLs I can use to achieve this? I've already written most of the front end stuff in Au3, just need the Telnet/Hyperterminal code to finish it off. Thanx, CMR
×
×
  • Create New...