Sign in to follow this  
Followers 0
Thijs

Unable to send the 'SOH' character

8 posts in this topic

#1 ·  Posted (edited)

Hello everyone,

Im trying to send the 'SOH' Character but it makes my script unable to compile.

I looked it up and came across this webpage: http://www.autoitscript.com/autoit3/docs/appendix/ascii.htm

It says: 'Start of heading, = console interrupt'.

Since this is the first day im using AutoIt i hope my question isn't too much of a noob question, but I really need to be able to send this character to the application im writing this script for.

Global $channels[2];

$channels[0] = "SOHSOH name SOHSOH"
$channels[1] = Chr(1) & Chr(1) & " name " & Chr(1) & Chr(1)

for $channel in $channels
Send($channel)
Next

The first line makes my code crash, the second line doesn't return the right character.

Thanks in advance!

Edited by Thijs

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

It's not crashing, but is throwing an error in your code. You're using an Array with 2 dimensions but accessing the 3rd element, as arrays start from 0 not 1. Look in the Wiki about arrays.

Local $aArray[2] = ['SOHSOH name SOHSOH', '']
$aArray[1] = Chr(1) & Chr(1) & ' name ' & Chr(1) & Chr(1) ; I don't think you can send this chr?!
Send($aArray[1])

Note: Please use [autoit][/autoit] tags when posting AutoIt code. Thanks.

Edited by guinness

_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 04/09/2015

Share this post


Link to post
Share on other sites

#3 ·  Posted (edited)

Thanks for your reply!

About the array, the real code looks different, you can see below how the array is built, I dont think that the problem lies here because if I modify the value of $channels[2] it does work, but when using the SOH character it throws in an error.

Global $channels[3];

$channels[0] = "SOHSOH name SOHSOH"
$channels[1] = Chr(1) & Chr(1) & " name " & Chr(1) & Chr(1)

for $channel in $channels
Send($channel)
Next

As an alternative for the SOH character (since it throws in an error), I use Chr(1), but it doesn't seem to return the right value, or my code isn't right ofcourse. o:)

It's hard to explain what I mean, but I basicly just want to send the SOH character, and since i've been struggling with it the whole day I need some help.

Edited by Thijs

Share this post


Link to post
Share on other sites

#4 ·  Posted (edited)

This code worked for me

#include <array.au3>
Global $aRray[1], $x
ConsoleWrite(chr(1) & @LF)
_ArrayAdd($aRray, "test")
_ArrayAdd($aRray, chr(1))
_ArrayAdd($aRray, "done")
for $x = 1 to 3
ConsoleWrite($aRray[$x] & @LF)
Next
Send($aRray[2])

p.s. The array's here and in the previous examples are single dimension arrays... A multi dimensional array would look like $aTest[1,1]

Edited by Colyn1337

Share this post


Link to post
Share on other sites

Surely you mean $aTest[1][1]

He just invented the syntax for the next beta update.
1 person likes this

 

OS : Win XP SP2 (32 bits) / Win 7 SP1 (64 bits) / Win 8 (64 bits) | Autoit version: latest stable / beta.
Hardware : Intel(R) Core(TM) i5-2400 CPU @ 3.10Ghz / 8 GiB RAM DDR3.

My UDFs : Skype UDF | TrayIconEx UDF | GUI Panel UDF | Excel XML UDF | Is_Pressed_UDF

My Projects : YouTube Multi-downloader | FTP Easy-UP | Lock'n | WinKill | AVICapture | Skype TM | Tap Maker | ShellNew | Scriptner | Const Replacer | FT_Pocket | Chrome theme maker

My Examples : Capture toolIP Camera | Crosshair | Draw Captured Region | Picture Screensaver | Jscreenfix | Drivetemp | Picture viewer

My Snippets : Basic TCP | Systray_GetIconIndex | Intercept End task | Winpcap various | Advanced HotKeySet | Transparent Edit control

 

Share this post


Link to post
Share on other sites

Surely you mean $aTest[1][1]

Yes, so true.

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
Sign in to follow this  
Followers 0