Jump to content
Sign in to follow this  
legend

reverse a string in another script

Recommended Posts

legend

Hi. Lets say I got 2 scripts, is it possible to make script1 reverse a string in script2?

I tried something like this:

#include 


_WinAPI_FileReverse(@ScriptDir & "\test.txt", @ScriptDir & "\kk.txt")
ShellExecute(@ScriptDir & "\kk.txt")

Func _WinAPI_FileReverse($sFile, $sNewFile) ;coded by UEZ build 2012-10-04
If Not FileExists($sFile) Then Return SetError(1, 0, 0)
Local $iFileSize = FileGetSize($sFile)
If $iFileSize > 4294967296 Then Return SetError(2, 0, 0) ; 4294967296 = 2^32
If $sNewFile = "" Then Return SetError(3, 0, 0)
Local $hFile= _WinAPI_CreateFile($sFile, 2, 2, 2), $iBytes, $p, $bNewData
If Not $hFile Then Return SetError(4, 0, 0)
Local $tBuffer = DllStructCreate("byte[" & $iFileSize & "]")
Local $tBuffer_new = DllStructCreate("byte[" & $iFileSize & "]")
_WinAPI_SetFilePointer($hFile, 0, $FILE_BEGIN)
_WinAPI_ReadFile($hFile, DllStructGetPtr($tBuffer), $iFileSize, $iBytes)
_WinAPI_CloseHandle($hFile)
Local $bData = DllStructGetData($tBuffer, 1)
For $p = $iFileSize To 1 Step - 1
$bNewData &= Hex(BinaryMid($bData, $p, 1), 2)
Next
DllStructSetData($tBuffer_new, 1, Binary("0x" & $bNewData))
$hFile = _WinAPI_CreateFile($sNewFile, 1, 4, 4)
If Not $hFile Then Return SetError(5, 0, 0)
_WinAPI_WriteFile($hFile, DllStructGetPtr($tBuffer_new), $iFileSize, $iBytes)
_WinAPI_CloseHandle($hFile)
$tBuffer = 0
$tBuffer_new = 0
Return 1
EndFunc

but that will reverse the whole file, I only want to reverse a string in the file

Share this post


Link to post
Share on other sites
guinness

There is _StringReverse, but I'm not following your overall request. Where is the string displayed? GUI? Text file?


UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_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: 22/04/2018

Share this post


Link to post
Share on other sites
legend

this is probably totally wrong, but this is what i'm trying to do, reverse the string in another au3 script:

test1.au3:

#include <String.au3>
#include <test2.au3>

$file = FileOpen(@scriptdir & "2.au3", 1)
_StringReverse($test)
FileClose($file)

test2.au3:

$test = "this is a test"
Edited by legend

Share this post


Link to post
Share on other sites
guinness

Your test1.au3 is wrong. I would suggest reading the help file about FileOpen, FileRead and FileClose and then come back here if you have problems. Also the question remains why do you want to reverse an Au3 file?


UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_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: 22/04/2018

Share this post


Link to post
Share on other sites
UEZ

You have to load the file, find the string, reverse the string and finally write it to a file or display it.

Maybe something like this here:

#include <String.au3>
;~ $String = FileRead(@scriptdir & "2.au3")
$String = '$test = "this is a test"' & @CRLF & "$test2 = 'next line'"

MsgBox(0, "Test", SearchNReverse($String, "this is a test"))

Func SearchNReverse($sInput, $sSearch)
    Local $iPos = StringInStr($sInput, $sSearch)
    If Not $iPos Then Return SetError(0, 0, "")
    Local $sResult = StringReplace($sInput, $sSearch,  _StringReverse(StringMid($sInput, $iPos, StringLen($sSearch))))
    Return $sResult
EndFunc

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!
¯\_(ツ)_/¯  ٩(●̮̮̃•̃)۶ ٩(-̮̮̃-̃)۶ૐ

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  

×