Shortcut Parmeter

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
MJP
Beiträge: 72
Registriert: 14.10.2004 18:45
Wohnort: Nähe Frankfurt/Hessen
Kontaktdaten:

Shortcut Parmeter

Beitrag von MJP »

Hi erst mal...,

ich würde gerne wissen wie ich in mein Programm ein Parameter (wenn man das so nennt :oops: ) einbaut das ich es in Ausführen oder in einem Shortcut nutzen kann?

Also irgendwie so:
"X:\Programm\Datei.exe" -FPS

Durch den Befehl "-FPS" soll die FPS gleich beim Start angezeigt werden.


:D :D THX MJP :D :D
Alle Reschtsreib feler sind beabsichticht unn kosten nichs echtra ;-D
Visit ---|> http://www.Komani.de/
Benutzeravatar
Danilo
-= Anfänger =-
Beiträge: 2284
Registriert: 29.08.2004 03:07

Beitrag von Danilo »

Siehe ProgramParameter(), das liefert Dir das "-FPS" zurück.
cya,
...Danilo
"Ein Genie besteht zu 10% aus Inspiration und zu 90% aus Transpiration" - Max Planck
Icke
Beiträge: 143
Registriert: 08.09.2004 13:19

Beitrag von Icke »

Parameter$ = ProgramParameter()
Benutzeravatar
MJP
Beiträge: 72
Registriert: 14.10.2004 18:45
Wohnort: Nähe Frankfurt/Hessen
Kontaktdaten:

Beitrag von MJP »

Ok jetzt habe ich folgendes Problem wenn ich Ausführen "C:\Ordner\Progress.exe" /entpacken!Datei.datei&Ordner] eingebe wird mir folgendes zurückgegeben: :?
1. /entpacke!Datei.datei&Ordner
2. /entpacke
3. !Date.datei&ordner]
4. &Ordner]

So wie bekomme ich nun hin das in Nummern 3 nur Datei.ordner und bei der 4 nur Ordner ich bekomme es einfach nicht hin :oops:

könntet ihr mir sagen wo mein Fehler im Code ist?

Code: Alles auswählen

OpenConsole()
ClearConsole()
ConsoleLocate (27,0)
ConsoleColor(14,0 ) 
PrintN("ProgramParameter")
ConsoleLocate (16,1)
ConsoleColor(12,0 ) 
PrintN("ProgrammParameter")
ConsoleColor(6,0 )
Print("********************************************************************************")
Para$ = ProgramParameter() 
    If Para$ =""
    Else 
    PrintN(Para$)  
    TDO$ = Mid(Para$, 1, 9 )
      If TDO$ = "/entpacke"
        ConsoleColor(15,0 )
        OrtF = FindString(Para$, "${", 1)
        OrteF = FindString(Para$, "&", 1)
        OrtO = FindString(Para$, "-[", 1)
        OrteO = FindString(Para$, "]", 1)
        FE$ = Mid(Para$, 11, OrteF)
        ORD$ = Mid(Para$, OrteF ,OrteO)
        ConsoleColor(15,0 )
        PrintN(TDO$)
        PrintN(FE$)
        PrintN(ORD$)
    EndIf 
      EndIf 
PrintN ("")
ConsoleColor(15,0 )
Print("Taste um zu beenden")
Input()
CloseConsole()

:D :D THX MJP :D :D
Alle Reschtsreib feler sind beabsichticht unn kosten nichs echtra ;-D
Visit ---|> http://www.Komani.de/
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8820
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Beitrag von NicTheQuick »

Wieso nutzt du überhaupt dieses ganze Zeichenwirrwarr. Ein Leerzeichen zwischen den einzelnen Parametern und zwei Anführungszeichen (") um die einzelnen Parameter reicht doch schon aus.
Dann schreibst du einfach: [c]"C:\Ordner\Progress.exe" "/entpacken" "Datei.end" "Ordner"[/c]
Das macht doch jedes andere Programm genauso. Man muss dann eben die Parameterreihenfolge einhalten.
Du kannst es aber auch so machen: [c]"C:\Ordner\Progress.exe" /entpacken /file:"Datei.end" /path:"Ordner"[/c]
Wie man das ganze jetzt ausliest, wirst du ja sicherlich selbst herausfinden.
Benutzeravatar
MJP
Beiträge: 72
Registriert: 14.10.2004 18:45
Wohnort: Nähe Frankfurt/Hessen
Kontaktdaten:

Beitrag von MJP »

Dann schreibst du einfach: "C:\Ordner\Progress.exe" "/entpacken" "Datei.end" "Ordner"
Wenn ich ein Leerzeichen zwichen den Parametern lasse geht es irgendwie nicht !!! :?
Also muss das Zeichenwirrwarr sein.
Alle Reschtsreib feler sind beabsichticht unn kosten nichs echtra ;-D
Visit ---|> http://www.Komani.de/
Benutzeravatar
bluejoke
Beiträge: 1244
Registriert: 08.09.2004 16:33
Kontaktdaten:

Beitrag von bluejoke »

Schau dir mal die Hilfe zu dem Befehl ProgramParameter() an!!!

zur Info: Du kannst die Hilfe z.B. mit F1 aufrufen!
Benutzeravatar
ChaOsKid
Beiträge: 66
Registriert: 29.08.2004 15:07
Wohnort: Oktoberfest

Beitrag von ChaOsKid »

hi MJP,

wenn du alle parameter einlesen willst musst du ProgramParameter() mehrmals aufrufen, erst wenn es "" ist gibt es keine weiteren parameter mehr.

zb so:

Code: Alles auswählen

Parameter$ = ProgramParameter()
While Parameter$ <> ""
  Debug Parameter$
  Parameter$ = ProgramParameter()
Wend
mfG
Tobi
Zuletzt geändert von ChaOsKid am 04.11.2004 18:04, insgesamt 1-mal geändert.
Benutzeravatar
MJP
Beiträge: 72
Registriert: 14.10.2004 18:45
Wohnort: Nähe Frankfurt/Hessen
Kontaktdaten:

Beitrag von MJP »

bluejoke:
Schau dir mal die Hilfe zu dem Befehl ProgramParameter() an!!!

zur Info: Du kannst die Hilfe z.B. mit F1 aufrufen!
Sorry..., kommt halt davon wenn man nicht richtig ließt :oops: :oops: :oops: :freak:

kommt nicht wieder vor!!

:D :D THX MJP :D :D
Alle Reschtsreib feler sind beabsichticht unn kosten nichs echtra ;-D
Visit ---|> http://www.Komani.de/
Antworten