Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

titelleiste

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
k1uMp3n



Anmeldungsdatum: 15.10.2004
Beiträge: 15
Wohnort: Fiwa

BeitragVerfasst am: 18.10.2004, 15:19    Titel: titelleiste Antworten mit Zitat

ist es möglich einem Programm einen Titel zu geben (wie zB in html
<title>bla</title>)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Paul
aka ICC, HV-Freak


Anmeldungsdatum: 11.09.2004
Beiträge: 588
Wohnort: Uelzen

BeitragVerfasst am: 18.10.2004, 15:30    Titel: ???????? Antworten mit Zitat

Hä ? Was hat das mit QB zu tun ?
In welcher Weise sollte/könnte man einem QB-Prog einen Titel geben ?
Wo sollte der dann angezeigt werden ? durchgeknallt
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5900
Wohnort: Deutschland

BeitragVerfasst am: 18.10.2004, 15:31    Titel: Titel Antworten mit Zitat

Hallo.

In Batch gibt es eine Möglichkeit dazu, den Titelleistentext zu ändern, aber eine QB Möglichkeit fällt mir nicht ein. :/

Viele Grüße!
Sebastian
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Paul
aka ICC, HV-Freak


Anmeldungsdatum: 11.09.2004
Beiträge: 588
Wohnort: Uelzen

BeitragVerfasst am: 18.10.2004, 15:38    Titel: Genial Antworten mit Zitat

Du kannst ja die EXE umbenennen grinsen
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Stefan



Anmeldungsdatum: 17.09.2004
Beiträge: 22

BeitragVerfasst am: 18.10.2004, 18:39    Titel: Antworten mit Zitat

Mich würde es sehr wundern, wenn das gehen würde.

Qbasic ist ja bekanntlich ein Dos-Programm. Und bei Dos war es nun halt mal nicht gedacht, das jemand es neben anderen Programmen ablaufen läßt. Deshalb war es nicht nötig den Programmen Namen zu geben.

Auch wenn das heute mit Windows geht, denke ich das diese Option nicht hinzu gefügt worden ist.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2457
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 18.10.2004, 20:30    Titel: Antworten mit Zitat

Präzise Ausdrucksweise ist eine Gabe, die nicht jeder hat... ;-)

@k1uMp3n: Du hättest Deine Frage als "Ich lasse meine QBasic-Programme unter Windows XP Profession SP2 in einer Eingabeaufforderung im Fenstermodus laufen und möchte dort den Fenstertitel auf etwas eigenes anstelle von "Eingabeaufforderung - qb meinprog" ändern können. Wie mache ich das? Gibt es dafür irgend ein CALL INTERRUPT?"

Übrigens noch meine Antwort dazu: Ich selber kenne keine solche Funktion. Es kann aber gut möglich sein, etwas unter http://msdn.microsoft.com/library/ im Windows 95-SDK finden zu können.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2457
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 27.10.2004, 23:03    Titel: Manchmal wird man per Zufall fündig... :-) Antworten mit Zitat

Habe vor kurzem noch eine Lösung zum Titelthema gefunden:

http://msdn.microsoft.com/library/en-us/win9x/95func_3339.asp
http://msdn.microsoft.com/library/en-us/win9x/95func_1r39.asp
http://msdn.microsoft.com/library/en-us/win9x/95func_0t0l.asp
http://msdn.microsoft.com/library/en-us/win9x/95func_0ycl.asp
http://www.ctyme.com/intr/rb-4627.htm
http://www.ctyme.com/intr/rb-4628.htm
http://www.ctyme.com/intr/rb-4629.htm
http://www.ctyme.com/intr/rb-4630.htm

Habe das Ganze übrigens auch bereits in ein Beispielprogramm umgesetzt:

http://beilagen.dreael.ch/QB/FENTITEL.BAS

("/l qb" nötig!)
Hinweise: Unter Windows 2000 (SP4) und XP Professional (SP2) scheint dieser Interrupt nicht mehr zu existieren, dagegen auf einem alten Windows 95 (mit VMware getestet) klappt es dagegen tadellos und man kann die Titel problemlos setzen:

http://beilagen.dreael.ch/QB/fenstertitel.GIF

@Thomas Antoni: Kannst Du gerne ins Monster-FAQ aufnehmen.
@Alle: Wer testet mein Beispiel noch unter Windows 98, 98SE, Millennium Edition sowie NT 4.0 und kann hier Feedback hineinposten, wo es läuft und wo nicht?
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Thomas Antoni



Anmeldungsdatum: 12.10.2004
Beiträge: 220
Wohnort: Erlangen

BeitragVerfasst am: 27.10.2004, 23:38    Titel: Habs wie folgt in für die QB-MonsterFAQ vorgemerkt ... Antworten mit Zitat

-------------------------------------------------------------------------------------

Frage deutsch
~~~~~~~~~~~~~~~~
Wie manipuliere ich den Fenstertitel meines QB-Programms?

Ich lasse meine QBasic-Programme unter Windows in einer Eingabeaufforderung im
Fenstermodus laufen und möchte dort den Fenstertitel auf etwas eigenes anstelle
von "Eingabeaufforderung - qb meinprog" ändern können. Wie mache ich das? Gibt
es dafür irgend einen CALL INTERRUPT?


Question English
~~~~~~~~~~~~~~~~
How to ?


Antwort
~~~~~~~~~~~~~~~~
[ von Andreas meile ( ) im QB-Forum, .2004 ]

Ich habe eine Lösung für dieses Problem gefunden und dafür die folgenden
Webseiten zu Rate gezogen:

http://msdn.microsoft.com/library/en-us/win9x/95func_3339.asp
http://msdn.microsoft.com/library/en-us/win9x/95func_1r39.asp
http://msdn.microsoft.com/library/en-us/win9x/95func_0t0l.asp
http://msdn.microsoft.com/library/en-us/win9x/95func_0ycl.asp
http://www.ctyme.com/intr/rb-4627.htm
http://www.ctyme.com/intr/rb-4628.htm
http://www.ctyme.com/intr/rb-4629.htm
http://www.ctyme.com/intr/rb-4630.htm


Und hier das von mir geschriebene Programm:

'********************************************************************
' FENTITEL.BAS - Windows-Fenstertitel auslesen und setzen
' ============
' Dieses QuickBasic-Programm setzt einen beliebigen Text als
' Windows-Fenster-Titel ein.
' Da das Programm den Befehl CALL INTERRUPTX verwendet, ist es nur
' unter QuickBasic und nicht unter QBasic ablauffaehig. QuickBasic
' muss mit QB /L aufgerufen werden. Getestet unter Windows 95; unter
' Windows XP Professional funktionierte es nicht.
'
' (c) Andreas Meile ("Dreael"), 27.10.2004
' qbasic-webmaster@andreas-meile.ch
'*********************************************************************
'
' $INCLUDE: 'qb.bi'
'
DIM dosIntEin AS RegTypeX, dosIntAus AS RegTypeX
DIM titPuf AS STRING * 300
'
' Auslesen (Get Application Title) gemäss
' http://msdn.microsoft.com/library/en-us/win9x/95func_3339.asp
'
dosIntEin.ax = &H168E
dosIntEin.es = VARSEG(titPuf)
dosIntEin.di = VARPTR(titPuf)
dosIntEin.cx = LEN(titPuf)
dosIntEin.dx = 2
CALL INTERRUPTX(&H2F, dosIntEin, dosIntAus)
IF dosIntAus.ax = 1 THEN
PRINT "Fenstertitel (Application Title):"
p% = INSTR(titPuf, CHR$(0))
IF p% > 0 THEN
PRINT LEFT$(titPuf, p% - 1)
ELSE
PRINT titPuf
END IF
ELSE
PRINT "Fehler beim Auslesen:"; dosIntAus.ax
END IF
'
' Auslesen (Get Virtual Machine Title) gemäss
' http://msdn.microsoft.com/library/en-us/win9x/95func_1r39.asp
'
dosIntEin.ax = &H168E
dosIntEin.es = VARSEG(titPuf)
dosIntEin.di = VARPTR(titPuf)
dosIntEin.cx = LEN(titPuf)
dosIntEin.dx = 3
CALL INTERRUPTX(&H2F, dosIntEin, dosIntAus)
IF dosIntAus.ax = 1 THEN
PRINT "Fenstertitel (Virtual Machine Title):"
p% = INSTR(titPuf, CHR$(0))
IF p% > 0 THEN
PRINT LEFT$(titPuf, p% - 1)
ELSE
PRINT titPuf
END IF
ELSE
PRINT "Fehler beim Auslesen:"; dosIntAus.ax
END IF
'
' Setzen (Set Application Title) gemäss
' http://msdn.microsoft.com/library/en-us/win9x/95func_0t0l.asp
'
LINE INPUT "Neuer Application Title:"; t$
titPuf = t$ + CHR$(0)
dosIntEin.ax = &H168E
dosIntEin.es = VARSEG(titPuf)
dosIntEin.di = VARPTR(titPuf)
dosIntEin.dx = 0
CALL INTERRUPTX(&H2F, dosIntEin, dosIntAus)
IF dosIntAus.ax = 1 THEN
PRINT "Application Title erfolgreich gesetzt"
ELSE
PRINT "Fehler beim Setzen:"; dosIntAus.ax
END IF
'
' Setzen (Set Virtual Machine Title) gemäss
' http://msdn.microsoft.com/library/en-us/win9x/95func_0ycl.asp
'
LINE INPUT "Neuer Virtual Machine Title:"; t$
titPuf = t$ + CHR$(0)
dosIntEin.ax = &H168E
dosIntEin.es = VARSEG(titPuf)
dosIntEin.di = VARPTR(titPuf)
dosIntEin.dx = 1
CALL INTERRUPTX(&H2F, dosIntEin, dosIntAus)
IF dosIntAus.ax = 1 THEN
PRINT "Virtual Machine Title erfolgreich gesetzt"
ELSE
PRINT "Fehler beim Setzen:"; dosIntAus.ax
END IF


Hinweise:
Unter Windows 2000 (SP4) und XP Professional (SP2) scheint dieser Interrupt
nicht mehr zu existieren, dagegen auf einem alten Windows 95 (mit VMware
getestet) klappt es dagegen tadellos und man kann die Titel problemlos
setzen:

--------------------------------------------------------------------------------
_________________
+++ Die beliebte QBasic CD-ROM von QBasic.de - 670 MB QBasic-Stuff mit komfortabler HTML-Oberfläche. Für nur 5 EUR bestellbar auf www.antonis.de/qbcdueb.htm +++
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2457
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 28.10.2004, 10:03    Titel: Tests und ein wichtiges "Achtung"! Antworten mit Zitat

Habe heute Morgen noch kurz mit weiteren virtuellen Maschinen mein Beispiel getestet. Ergebnis: Titel kann unter Windows 95, 98 und Millennium Edition sowohl gelesen als auch gesetzt werden. Dagegen unter Windows NT 4.0, Windows 2000 und XP geht dies nicht.

Nun aber ein sehr wichtiges Achtung, festgestellt beim Testen: Das Setzen des Titels der virtuellen Maschine erfolgt leider nicht temporär nur im RAM, sondern es überschreibt Euch C:\WINDOWS\Startmenü\Programme\MS-DOS-Eingabeaufforderung.lnk dauerhaft! => zukünftige Aufrufe der Eingabeaufforderung werden daher also mit Eurem neuen Titel erscheinen. Quintessenz der Geschichte: Mit Vorteil sollte man nur den Application Titel setzen, nicht aber derjenige der virtuellen Maschine.

@Thomas Antoni: Kannst Du dies in Deinem Monster-FAQ-Artikel noch entsprechend ergänzen?
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
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.

 Impressum :: Datenschutz