Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 05:14

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Run AutoIt

Discussion on Run AutoIt within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
felixli93's Avatar
 
elite*gold: 0
Join Date: Aug 2008
Posts: 820
Received Thanks: 909
Run AutoIt

Hallo zusammen,

ich möchte mir ein script machen, welches ein anders script über die AutoIt.exe startet.
bisher habe ich:
Code:
Run ("C:\Programme\AutoIt3\AutoIt3.exe")
jetzt müsste ich noch den Parameter einfügen, damit AutoIt weiß, welches script es starten soll, und nicht den FileOpenDialog anzeigt.
Normalerweise sollte es mit:
Code:
Run ("C:\Programme\AutoIt3\AutoIt3.exe C:\Programme\AutoIt3\mein script.au3")
gehen, jedoch klappt es nicht, weil er die Datei nicht findet.
durch das leerzeichen bei "mein script" meint er, der dateinamen sei zu Ende, das heißt, er will die datei "C:\Programme\AutoIt3\mein" öffnen und somit erscheint eine fehlermeldung.

Wie kann ich ein Leerzeichen "umschreiben"?
felixli93 is offline  
Old 07/20/2009, 15:56   #2
 
elite*gold: 99
Join Date: Oct 2008
Posts: 2,708
Received Thanks: 1,726
Es könnte sein, dass du statt dem hier "Beispiel" diese Anführungszeichen verwenden musst 'Beispiel'.

Ansonsten kannst du doch einfach den Dateinamen umbennen, oder?^^
Frezee is offline  
Old 07/20/2009, 16:21   #3
 
felixli93's Avatar
 
elite*gold: 0
Join Date: Aug 2008
Posts: 820
Received Thanks: 909
Quote:
Originally Posted by Frezee View Post
Es könnte sein, dass du statt dem hier "Beispiel" diese Anführungszeichen verwenden musst 'Beispiel'.

Ansonsten kannst du doch einfach den Dateinamen umbennen, oder?^^
die idee mit 'denen' hatte ich auch schon, doch es klappt genauso wenig.
das problem mit dem leerzeichen ist auch nicht nur bei dieser datei so, sondern tritt natürlich immer dann auf, wenn etwas im ordner "Eigene Dateien" bzw. selbst "Dokumente und Einstellungen" zu finden ist.

Dort könnte ich natürlich schreiben "Dokume~1" und "Eigene~1", damit es klappt, aber ich möchte das gerne ohne die "~" erreichen...

danke für die antwort trotzdem
felixli93 is offline  
Old 07/20/2009, 16:42   #4
 
elite*gold: 99
Join Date: Oct 2008
Posts: 2,708
Received Thanks: 1,726
Ich habs:
Code:
Run(' "C:\Programme\AutoIt3\AutoIt3.exe C:\Programme\AutoIt3\mein script.au3" /n')
Frezee is offline  
Thanks
1 User
Old 07/20/2009, 17:23   #5
 
felixli93's Avatar
 
elite*gold: 0
Join Date: Aug 2008
Posts: 820
Received Thanks: 909
hmm, sieht schonmal gut aus, klappt bei mir aber trotzdem nicht...
hier gibt die AutoIt3.exe zwar keinen Error zurück, aber der "Run"-Befehl setzt @error auf 1...

klappt das bei dir so? und was soll das /n bewirken?

//edit:

mit ShellExecute klappt es natürlich, weil dort ein extra parameter für die parameter für die programme zur verfügung steht, anders als bei "run".

So funktioniert es:
Code:
ShellExecute ("C:\Programme\AutoIt3\AutoIt3.exe", '"C:\Programme\AutoIt3\mein script.au3"')
ohne die beiden ' würde es aber auch nicht funktionieren.
Liegt wohl daran, dass die AutoIt.exe den Dateinamen in einem String braucht; dafür garantieren die beiden ', weil sie den String nochmal in einen String fassen...

trotzdem würde mich brennend interessiereren, wie man es mit "Run" gelöst bekommt...

//Edit²-.-
Code:
Run ("C:\Programme\AutoIt3\AutoIt3.exe " & '"C:\Programme\AutoIt3\mein script.au3"')
hätte ich drauf kommen können

#vote 4 close
felixli93 is offline  
Old 07/20/2009, 18:43   #6
 
elite*gold: 99
Join Date: Oct 2008
Posts: 2,708
Received Thanks: 1,726
Hmm dann gibts vielleicht noch die Möglichkeit:

$String1 = "C:\Programme\AutoIt3\AutoIt3.exe C:\Programme\AutoIt3\mein script.au3"
$String2 = "/n"

Run($String1 & String2)
Frezee is offline  
Old 07/20/2009, 18:56   #7
 
felixli93's Avatar
 
elite*gold: 0
Join Date: Aug 2008
Posts: 820
Received Thanks: 909
Quote:
Originally Posted by Frezee View Post
Hmm dann gibts vielleicht noch die Möglichkeit:

$String1 = "C:\Programme\AutoIt3\AutoIt3.exe C:\Programme\AutoIt3\mein script.au3"
$String2 = "/n"

Run($String1 & String2)
dann wäre '$String1 & $String2' aber dasselbe wie "C:\Programme\AutoIt3\AutoIt3.exe C:\Programme\AutoIt3\mein script.au3/n", und das geht natürlich ebenso wenig...

aber egal, problem wurde ja gelöst, die angabe der datei muss in einem "doppelstring" erfolgen.
felixli93 is offline  
Reply




All times are GMT +1. The time now is 05:15.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.