Kommandozeile / DLLs einbinden

Für allgemeine Fragen zur Programmierung mit PureBasic.
Little John

Re: Kommandozeile / DLLs einbinden

Beitrag von Little John »

Ich würde überhaupt nicht auf

Code: Alles auswählen

While ProgramParameter$ <> ""
oder

Code: Alles auswählen

Until ProgramParameter$ = ""
oder Ähnliches testen, weil in der Hilfe ausdrücklich steht dass man das nicht machen soll. :mrgreen:
Besser ist es sich nach der Anzahl der Parameter zu richten.
_JON_ hat geschrieben:Danke für die schnelle Antwort :allright:

Code: Alles auswählen

Debug PeekS(GetCommandLine_())
Leider stehen API in der DEMO Version nicht zur Verfügung und Ich wollte erstmal reinschnuppert.
Willkommen im Forum!
Genau zum Reinschnuppern ist die Demo-Version da. Entsprechend gering ist die Chance, dass man damit Spezialsachen machen kann. :-)

Gruß, Little John
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8807
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

Re: Kommandozeile / DLLs einbinden

Beitrag von NicTheQuick »

Klar, wenn man sein Programm z.B. so aufruft:
meinProgramm.exe "" -a
Dann ist der erste Parameter ein leerer String und der zweite das "-a".
Benutzeravatar
hjbremer
Beiträge: 822
Registriert: 27.02.2006 22:30
Computerausstattung: von gestern
Wohnort: Neumünster

Re: Kommandozeile / DLLs einbinden

Beitrag von hjbremer »

Import "Kernel32.lib"
GetCommandLine_() As "_GetCommandLineA@0" ;Ansi
EndImport

Debug PeekS(GetCommandLine_())
Purebasic 5.70 x86 5.72 X 64 - Windows 10

Der Computer hat dem menschlichen Gehirn gegenüber nur einen Vorteil: Er wird benutzt
grüße hjbremer
Benutzeravatar
_JON_
Beiträge: 389
Registriert: 30.03.2010 15:24

Re: Kommandozeile / DLLs einbinden

Beitrag von _JON_ »

Little John hat geschrieben: Genau zum Reinschnuppern ist die Demo-Version da. Entsprechend gering ist die Chance, dass man damit Spezialsachen machen kann. :-)
Ja sorry, dachte nicht das die Kommandozeile des Programms zu erhalten unmöglich ist.
hjbremer hat geschrieben:Import "Kernel32.lib"
GetCommandLine_() As "_GetCommandLineA@0" ;Ansi
EndImport

Debug PeekS(GetCommandLine_())
Hey, Danke das gibt wirklich die komplette Kommandozeile wieder :allright:

Leider scheint es ein Ding der Unmöglichkeit, das %0 von diesen string zu entfernen.
Denke das Basic ist allergisch auf Leerzeichen und vor allen Ausführungszeichen.
Was soll's hat auf jeden Fall spaß gemacht <)
PureBasic 5.46 LTS (Windows x86/x64) | windows 10 x64 Oktober failure
Antworten