 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Dr. Bakterium
Anmeldungsdatum: 13.09.2007 Beiträge: 13
|
Verfasst am: 18.10.2007, 17:02 Titel: |
|
|
Was solls, dann lasse ich EXEPATH einfach weg. Bei meinem Windows klappts auch ohne, allerdings mußte ich ein paar freeconsole()-Anweisungen zusätzlich einfügen.
So sieht der leicht geänderte Code aus:
Code: | #include once "windows.bi"
Const HilfeText = "Syntax: Testprog.exe /t:<ihr Text>"
Dim Shared As String IhrText
IhrText = "Hier könnte Ihr Text stehen"
If Command(1) <> "irgendwas" Then
If Command(-1) = "" Or UCase(Left$(Command(1),3)) = "/T:" Then
If Run(Command(0),"irgendwas "+Mid$(Command(1),4)) > -1 Then
FreeConsole()
End
EndIf
Else
Print HilfeText
FreeConsole()
end
EndIf
EndIf
FreeConsole()
If Command(2) <> "" Then IhrText = Command(2)
MessageBox(0,IhrText,"Titel",MB_OK)
end |
Vielleicht läuft er jetzt auch unter XP Prof. besser.
Achja, ich verwende übrigens FB 0.18.1b. |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 18.10.2007, 21:44 Titel: |
|
|
am sichersten ist es, zu beginn ein
einzufügen. Wenn das Programm über eine Verknüpfung oder in der Konsole gestartet wird, ist CURDIR (das aktuelle verzeichnis) nicht unbedingt dem Programmverzeichnis (EXEPATH). Ist also am sichersten, erstmal dorthin zu wechseln  _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
Verfasst am: 18.10.2007, 21:54 Titel: |
|
|
Zwar die unfeine art.. aber gelöst
Code: | ' start.bas
CHDIR EXEPATH
dim as string progstring = "start hauptprg"
shell progstring
print "nebenprogramm mit taste beenden.."
sleep
|
Code: | 'hauptprg.bas (bitte auch so nennen)
print "programm: hauptprogramm"
for i as integer = 1 to 9999
locate 2,1: print i
sleep 1
next
|
_________________ Bis irgendwann...  |
|
Nach oben |
|
 |
Dr. Bakterium
Anmeldungsdatum: 13.09.2007 Beiträge: 13
|
Verfasst am: 19.10.2007, 03:05 Titel: |
|
|
Gute Idee Jojo. Interessanterweise läuft es aber auch ohne CHDIR völlig korrekt, sogar wenn ich in der Verknüpfung ein völlig falsches Arbeitsverzeichnis angebe.
Frag mich aber nicht weshalb es so ist, es ist so ... zumindest unter Windows 2000
@AndT: Damit hätte ich wieder 2 Dateien, das möchte ich möglichst vermeiden. Freilich, wäre die EXE beispielsweise 100 MB groß wäre es rein aus Speicherpatzgründen beinahe schon kriminell, dasselbe Programm - wenn auch nur ganz kurz - zweimal im Speicher zu haben, nur um etwas Konsolentext ausgeben zu können. Aber bis jetzt ist mein Prog < 64 K ... das tut nicht weh  |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|