Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
MOD Fleißiger Referenzredakteur

Anmeldungsdatum: 10.09.2007 Beiträge: 1003
|
Verfasst am: 10.09.2007, 22:38 Titel: Selbststart |
|
|
Wie bringe ich mein über QuickBasic 4.5 geschriebenes Programm dazu, sich selbst in einem neuen Fenster zu starten? Hab bis jetzt nämlich keine brauchbare Lösung gefunden...jedes Mal startet es das Programm im gleichen Fenster.
 |
|
Nach oben |
|
 |
Manuel

Anmeldungsdatum: 23.10.2004 Beiträge: 1271 Wohnort: Bayern
|
Verfasst am: 10.09.2007, 23:05 Titel: |
|
|
Kurze Antwort: Das geht nicht! Dazu müsstest du eine Sprache benutzen, was mit Windows-Fenstern umgehen kann. Eine Möglichkeit wäre, nach FreeBasic umzusteigen, für das es hier auch ein Unterforum gibt. Die Syntax ist der von QuickBasic ziemlich ähnlich...
Begründung: QuickBasic 4.5 ist noch eine DOS-Sprache. Und MS-DOS beherrscht es schlicht einfach nicht, mehrere "Fenster" zu verwalten, weil es das zu der Zeit garnicht gab. Bei MS-DOS hat man eigentlich nur ein einziges (Vollbild-)Fenster. Windows selbst kann diese MS-DOS-Programme in Fenster zwängen, ein MS-DOS-Programm von sich aus kann das nicht. _________________ DL Walk (Denkspiel) | DL Malek (Denkspiel) | DL Warrior (ASCII-Adventure) | DL Sokodos (Sokoban-Klon)
---
www.astorek.de.vu |
|
Nach oben |
|
 |
MisterD

Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 11.09.2007, 02:13 Titel: |
|
|
du kannst versuchen mit
Code: | SHELL "start pfad\zu\qb.exe /run pfad\zum\programm.bas" |
oder sowas in der richtung das ganze über die erweiterten funktionen der neueren windowskonsole zu regeln, müsste klappen.
bzw wenn dein programm als .exe vorliegt natürlich nur SHELL "start pfad\zum\programm.exe" _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
 |
MOD Fleißiger Referenzredakteur

Anmeldungsdatum: 10.09.2007 Beiträge: 1003
|
Verfasst am: 11.09.2007, 11:42 Titel: |
|
|
Es ist wohl, wie der Manuel gesagt hat. Es geht nicht...mit SHELL start und run und alles andere, was hätte sein können hab ich es schon versucht. Das einzige, was das Programm öffnen konnte war SHELL pfad\name.exe, allerdings im gleichen Fenster.
Trotzdem schon mal danke und wenn ich doch noch nen Weg finde, dann poste ich ihn hier hin... |
|
Nach oben |
|
 |
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
Verfasst am: 11.09.2007, 12:28 Titel: |
|
|
dann mach doch mal folgendes:
da dann kommt eine liste mit allen befehlen _________________ Bis irgendwann...  |
|
Nach oben |
|
 |
MisterD

Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 11.09.2007, 16:25 Titel: |
|
|
welche windowsversion hast du? den start-befehl gibts erst ab xp (oder vllt schon 2000, weiß grade nich) _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
 |
Manuel

Anmeldungsdatum: 23.10.2004 Beiträge: 1271 Wohnort: Bayern
|
Verfasst am: 11.09.2007, 17:05 Titel: |
|
|
MisterD hat Folgendes geschrieben: | welche windowsversion hast du? den start-befehl gibts erst ab xp (oder vllt schon 2000, weiß grade nich) | w00t? Nenene, den gibts schon mindestens seit 98SE (grade getestet), wahrscheinlich schon seit Win95... Ich vermute sogar, dass es ab einer bestimmten MS-DOS-Version mitgeliefert wurde^^.
EDIT: Achso, bei NT-basierten Windowsen... Hm, gute Frage  _________________ DL Walk (Denkspiel) | DL Malek (Denkspiel) | DL Warrior (ASCII-Adventure) | DL Sokodos (Sokoban-Klon)
---
www.astorek.de.vu |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 11.09.2007, 17:42 Titel: |
|
|
START an sich ist ein Windows-Befehl, geht unter DOS nicht. Aber garantiert unter win9x.
Start kann aber afaik wirklich kein neues fenster für DOS-programme öffnen... _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
St_W

Anmeldungsdatum: 22.07.2007 Beiträge: 956 Wohnort: Austria
|
Verfasst am: 11.09.2007, 21:13 Titel: |
|
|
Vielleicht kann dir mein kleines Beispielprogramm etwas weiterhelfen.
Sobald es gestartet wird, führt es ein paar PRINT's aus und startet nach Benutzerbetätigung sich selbst (via START.EXE von Microsoft Windows 95) in einem neuen Fenster erneut (Jedenfalls auf meinem Rechner. Ob es unter jedem Windows >= 95 funktioniert, habe ich nicht getestet, nehme es aber an... ).
Unter folgender Adresse habe ich es hochgeladen:
http://swurzinger.sw.funpic.de/files/START_ME.ZIP
Vielleicht ist es das, was du suchst.
LG,
St_W |
|
Nach oben |
|
 |
MOD Fleißiger Referenzredakteur

Anmeldungsdatum: 10.09.2007 Beiträge: 1003
|
Verfasst am: 12.09.2007, 12:25 Titel: |
|
|
Ich hab XP und der Start-Befehl funktioniert auf jedenfall, da sich mein Programm ja selbst startet, nur eben im gleichen Fenster. Und zu dem Programm von St_W: Dein Programm funktioniert und öffnet ein neues Fenster, leider kann ich die BAS-Datei nicht öffnen. Es kommt nur die Fehlermeldung "Falscher Dateimodus". |
|
Nach oben |
|
 |
dreael Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 2529 Wohnort: Hofen SH (Schweiz)
|
Verfasst am: 13.09.2007, 09:37 Titel: |
|
|
Aufgrund einer eigenen Applikation kann ich folgendes bestätigen: START.EXE steht definitv ab Windows 95 und NT 4.0 und natürlich sämtlichen neueren Windows-Versionen einschliesslich Vista zur Verfügung.
START.EXE habe ich schon für synchron (=/WAIT-Option) ausgeführte REGEDIT /E-Aufrufe (Teil der Registry in eine Datei exportieren) gebraucht. _________________ Teste die PC-Sicherheit mit www.sec-check.net |
|
Nach oben |
|
 |
St_W

Anmeldungsdatum: 22.07.2007 Beiträge: 956 Wohnort: Austria
|
Verfasst am: 13.09.2007, 14:46 Titel: |
|
|
@MOD
Dass du die BAS-Datei nicht öffnen kannst liegt daran, dass ich sie mit QuickBasic 7.1 im Binärmodus (versehentlich) abgespeichert habe.
Ich habe eine leicht abgeänderte Version von TEST.BAS noch einmal hochgeladen, deren Quelltext auch in QB 4.5 ausführbar und ladbar ist:
http://swurzinger.sw.funpic.de/files/START_ME_QB45.ZIP
Unter meinem Windows XP Pro und QuickBasic 4.5 funktioniert alles, ich hoffe, es funktioniert auf deinem System ebenso...
LG
St_W |
|
Nach oben |
|
 |
MOD Fleißiger Referenzredakteur

Anmeldungsdatum: 10.09.2007 Beiträge: 1003
|
Verfasst am: 13.09.2007, 16:23 Titel: |
|
|
@St_W
Das Programm läuft wunderbar und das war auch das, was ich gesucht habe. Auf die Lösung mit der Start.exe wäre ich aber nie gekommen, da ich die nicht hatte
Eleganter wäre es zwar, es ohne eine zweite Exe zu machen, aber so geht's auch.
Thx nochmal. |
|
Nach oben |
|
 |
St_W

Anmeldungsdatum: 22.07.2007 Beiträge: 956 Wohnort: Austria
|
Verfasst am: 14.09.2007, 17:14 Titel: |
|
|
@MOD : Jedes Windows Betriebssystem >= 95 hat einen "START" - Befehl bzw. eine "START.EXE". Bei XP habe ich keine START.EXE gefunden, hier ist der START-Befehl direkt in die CMD.EXE (Eingabeaufforderung) eingebaut.
Wenn du also die beiliegende START.EXE nicht verwenden willst, verwende im Programm einfach statt
"SHELL START.EXE [Programmname]",
"SHELL START [Programmname]".
Auf diese Weise könntest du dir die "START.EXE" ersparen und es sollte auch funktionieren...am Besten du probierst es einmal aus!
(Evt. habe ich im Quellcode vom vorigen Programm dazu schon eine Anmerkung gemacht, weiß' es nicht mehr)
LG,
St_W |
|
Nach oben |
|
 |
zettelgirl
Anmeldungsdatum: 27.05.2007 Beiträge: 38
|
Verfasst am: 14.09.2007, 17:45 Titel: |
|
|
Soweit ich weiß startet cmd.exe bzw. command.com in nem eigenem Fenster wenn man es aufruft. Beide haben Parameter um auch gleich einen Befehl aufzurufen, so könnte man das frickeln. Kann das jetzt aber mangels Windows nicht nachprüfen . _________________ http://eiffel56.mybonsai.at/wordpress |
|
Nach oben |
|
 |
MOD Fleißiger Referenzredakteur

Anmeldungsdatum: 10.09.2007 Beiträge: 1003
|
Verfasst am: 14.09.2007, 18:21 Titel: |
|
|
Ich hab's mit CMD und COMMAND versucht und auch mit SHELL START [progname], aber es kam immer eine Fehlermeldung. Das einzige was funktioniert hat, war SHELL [progname], allerdings wurde das Programm dann im gleichen Fenster geöffnet. Letztendlich hat es mit der START.EXE aber auch seinen Zweck erfüllt. |
|
Nach oben |
|
 |
|