Medallyon

[Solved] Escaping Quote Character

5 posts in this topic

#1 ·  Posted (edited)

Heya AutoIt Community,

I'm sure this has been posted tons of times before, and I googled & forum'd it and found relevant topics, but none of these fixes apply to my particular code for some reason.

What I have right now:

ShellExecute("""" & $sProgramPath & """" & " !LoadLayout " & """" & $sLayout2 & """")

What I want to happen:

"C:\Program Files\Program\Program.exe" !LoadLayout "Working"

What actually happens:

Windows cannot find 'C:\Program Files\Program\Program.exe" !LoadLayout "Gaming'. Make sure you typed the name correctly, and then try again.

Of course the path is wrong because it has the wrong quotation marks!

I've used several methods trying to get normal quotes to appear in the programpath, like "", """" and even chr(34), but they all just return the above faulty @error message. How do I get it to look like what I want to happen?

Many Thanks in Advance,

~Admiral Medallyon

Edited by Medallyon
solved

Share this post


Link to post
Share on other sites



You should show all your code, I'm having trouble trying to figure out the word "Working" was transformed in to the word "Gaming".

$sLayout is an input from the user. It can be anything.

And where the single quotes magically appeared from.

That's why I posted this thread. I want to have it in the form

"C:\Program Files\Program\Program.exe" !LoadLayout "Working"

but it comes out as

'C:\Program Files\Program\Program.exe" !LoadLayout "Gaming'

because I cannot figure out the quotation. I was looking for help as to why my "s turned into 's.

Share this post


Link to post
Share on other sites

Medallyon,

Try this...

ShellExecute('"' & $sProgramPath & '"', " !LoadLayout " & $sLayout2)

Note: the 2ND parm of shellexecute is the parm(s).

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

Share this post


Link to post
Share on other sites

Medallyon,

Try this...

ShellExecute('"' & $sProgramPath & '"', " !LoadLayout " & $sLayout2)

Note: the 2ND parm of shellexecute is the parm(s).

kylomas

This works flawlessly. Thank you very much for the quick input.

Regards,

~Admiral Medallyon

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

    • Fhelipe
      By Fhelipe
      So I wanted to use my machine as a server for a program that had a unique login system. It can only log in 1 person and the password is in the script itself. I would like to adptar my code or change it completely so that I can create a database and the Script At Time Of Login Get Database Login And Log In
      Experience with Autoit: Basic                      (sorry for bad English)
      Experience with SQL: None                              (translator only)
      Code Currently Used To Login:
      ;=========================================================
      While 1
          $MSG = GUIGetMsg()
          Switch $MSG
          Case $ButtonOk
              If VerifyLogin(GUICtrlRead($USERNAME),GUICtrlRead($PASSWORD)) = 1 Then
                  GUIDelete($Form1)
                  MsgBox(-1,"Logado com Sucesso","Login Sucedido, Para Parar o Aimbot Pressione ESC!")
                  Run ("C:\Program Files (x86)\Steam\steamapps\common\Mitos.is The Game\Mitosis.exe")
                  RunP()
              Else
                  MsgBox(-1,"Error","Usúario ou Senha está incorreto, Ou Ainda Não Pagou!")
               EndIf
          Case -3
              Exit
           Case $ButtonCancel
              Exit
                Case $HelpButton
               MsgBox(-1, "Criadores", "Criadores: Zummey & Ralta")
      Case $Register
         MsgBox(-1, "ERRO", "PROGRAMA EM DESENVOLVIMENTO FUNÇÃO DESABILITADA")
          EndSwitch
      WEnd
      Func VerifyLogin($USERNAME,$PASSWORD)
          If $USERNAME = "Zummey" And $PASSWORD = "xd90fe10" Then
              Return 1
          Else
              Return 0
          EndIf
      EndFunc; End login
      ;=========================================================
    • IamKJ
      By IamKJ
      I am trying to allow the GUI to gather info as to when to execute a function.  I am having trouble doing this.  So far this is what I have.
       
      ;Timer Func timer () If Not IsDeclared("iMsgBoxAnswer") Then Local $iMsgBoxAnswer $iMsgBoxAnswer = MsgBox(36,"Timer","Please format your answer in 00:00:00:000") Select Case $iMsgBoxAnswer = 6 ;Yes Global $infotime = InputBox ('Time', 'What time to execute?') Do $rawtimer = ToolTip(@Hour & ':' & @Min & ':' & @Sec & ':' & _MSec()) until $rawtimer = $infotime if $rawtimer = $infotime Then msgbox (0,'Worked','Worked') Else EndIf Case $iMsgBoxAnswer = 7 ;No Exit EndSelect EndFunc Func _MSec() Local $stSystemTime = DllStructCreate('ushort;ushort;ushort;ushort;ushort;ushort;ushort;ushort') DllCall('kernel32.dll', 'none', 'GetSystemTime', 'ptr', DllStructGetPtr($stSystemTime)) $sMilliSeconds = StringFormat('%03d', DllStructGetData($stSystemTime, 8)) $stSystemTime = 0 Return $sMilliSeconds EndFunc I have also tried _GUIToolTip_GetText in order to read the tooltip until the time specified, but it still doesn't work.  Any help would be great.
    • IamKJ
      By IamKJ
      So I have a lot of different functions in the little program I'm making.  Most of them use the Do statement, such as finding images, clicking buttons, etc.
       
      The question I have is how would I be able to both
      1) Create a hotkey to pause whatever I am doing at the moment.  If I have to put something into every function in the program, I don't mind.
      2) Create a hotkey to exit whatever I am doing and stop all loops or commands and bring back the main GUI?
    • Manivel
      By Manivel
      Hi,
      Can any one please share the Connection string for SQL Developer. 
      How to Connect the SQL Developer from AutoIT. We need to execute the query through AutoIt. is that possible ?
    • Manivel
      By Manivel
      We are launching the AutoIT script through selenium and passing the values through command lines.
      Similarly able to return the value from AutoIt to selenium ?  If yes ? how to return the values ?