 |
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 |
Winkel
Anmeldungsdatum: 17.07.2006 Beiträge: 25 Wohnort: Berlin
|
Verfasst am: 17.07.2006, 18:19 Titel: QuickBasic unter W2K |
|
|
Hallo:
Zum Thema Wichtig: DOS-Problem auf Win2k/XP m. DOS-Teilsystem & autoexec.nt
Zusatzfrage:
Meine Autoexec.nt sieht so aus.
---
@echo off
REM C:\AUTOEXEC.BAT wird nicht zum Initialisieren der
REM MS-DOS-Umgebung verwendet.
REM Stattdessen wird die Datei AUTOEXEC.NT verwendet,
REM es denn eine andere Startdatei wird in einer PIF-
REM Datei angegeben.
REM Installieren der CD-ROM-Erweiterung
lh %SystemRoot%\system32\mscdexnt.exe
REM Installieren des Netzwerk-Redirectors (vor dosx.exe laden)
lh %SystemRoot%\system32\redir
REM Installieren der DPMI-Unterstützung
lh %SystemRoot%\system32\dosx
--------------------
So wie es sein soll, aber unter WINNT\system32.
Quick Basic geht trotzdem in die 100%CPU und es bleibt auch so.
Da kann ich nur ueber Task beenden ´raus!
Alternatives probieren mit QBasic blockiert beim Drucken, z.B. aus Hilfe, (CPU ist dabei normal), kann nur noch ueber Windows-Kreuzchen zum Sofortaustieg !
CD ist bestellt, in MonsterFAQ habe ich nichts gefunden oder an der falschen Ecke gesucht (Search-Funktion waere sehr hilfreich)
Liegt es an den Dateien oder hat W2K kein "ganzes" DOS mehr ?
Danke im voraus.
Winkel |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 17.07.2006, 19:20 Titel: |
|
|
Hallo.
Windows 2000 hat wie Windows NT, XP und 2003 kein DOS mehr, sondern emuliert es nur mit ntvdm.exe. Das ist ein bisschen vergleichbar mit einem Gameboyemulator für Windows und was es da so gibt. So wird auch DOS emuliert, damit alte DOS-Anwendungen noch ausführbar sind.
Unter eben diesen Systemen haben DOS-Anwendungen fast immer eine 100%ige CPU-Auslastung. Dies lässt sich ein bisschen runterschrauben, indem du den Patch verwendest, den ich in meiner Signatur (s.u.) verlinkt habe. Wenn du selbst DOS-Anwendungen entwickelts (z.B. mit QB) kannst du eine Funktion der Windows-DOS-Emulation nutzen, um dem Emulator zu sagen, dass das Programm nicht so viel Leistung braucht. Das geschiet mit einem Interruptaufruf von &H2F, ax=&H1680. Da es noch kein NT/2000/XP gegeben hat, als QB entwickelt wurde, wurde dieser Interruptaufruf in QB und andere ähnlich alte Programme nicht integriert. Er ist eine Besonderheit, die nur unter Windows zur Verfügung steht. Führt man ein Programm unter DOS aus, das diesen Interrupt aufruft, kommt es vermutlich zu Schwierigkeiten, ich hab das noch nicht ausprobiert.
Im Grunde genommen ist DOS-Programmierung nur noch eine Nischenangelegenheit für Freaks. Heute ist z.B. FreeBASIC viel besser zum Programmieren von BASIC geeignet, als die alten DOS-Compiler. Da es jedoch kaum eine einfacher zu bedienende Benutzeroberfläche zum Programmieren mit BASIC gibt, ist für Einsteiger QB noch immer eine gute Wahl. Mit dem Interrupt bzw. dem Patch kann man sich ja ein wenig behelfen.
Viele Grüße!
Sebastian _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
 |
Winkel
Anmeldungsdatum: 17.07.2006 Beiträge: 25 Wohnort: Berlin
|
Verfasst am: 17.07.2006, 19:58 Titel: Re. zu QuickBasic unter W2K |
|
|
Danke fuer die prompte Antwort.
Was ist mit dem Druck-Problem bei QBasic ?
auch eine sache des "fehlenden" DOS, (merke CPU bleibt dabei normal:
Weitere Frage:
Soll ich es wirklich mit freeBASIC versuchen? Meine letzten Programme waren mit dem Commodore64, dann war viele Jahre Ruhe.
Mit PureBasic bin ich nicht zurecht gekommen, dann habe ich ein Schritt zurück zu QuickBasic gemacht.
Ist freeBasic ebenso "Commodore-nah" um Anschluss zu finden ??
Danke im voraus
Winkel |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 17.07.2006, 20:07 Titel: |
|
|
FreeBASIC ist fast vollständig syntax-kompatibel zu QBasic. Die meisten QB-Programme lassen sich mit kleinen Änderungen (Interruptzugriffe, CALL ABSOLUTE Routinen usw. raus) auch mit FreeBASIC kompilieren. FreeBASIC hat jedoch bei all den Vorteilen auch 2 gewaltige Nachteile: Du kannst nicht wie in QB jederzeit STRG+PAUSE drücken und dann im Direktfenster Variablen abfragen und verändern. FreeBASIC ist ein reiner Compiler, der nicht interpretieren kann. Wenn du auf "Ausführen" klickst, wird nicht etwa der Code interpretiert, sondern zu einer EXE kompiliert, die dann ausgeführt wird. Das macht das Debugging schwierig. Außerdem hat FreeBASIC von Haus aus noch keine Entwicklungsumgebung dabei, wie das bei QuickBasic der Fall ist. FreeBASIC ist an sich nur ein Kommandozeilencompiler, hat also keine Eingabeoberfläche (IDE) für die Programme. Dafür brauchst du ein separates Programm. Gängig ist die FBIde. Wenn du den Compiler ("FBC") und die IDE ("FBIde") hast, hast du alles zusammen, was du zum Programmieren in FreeBASIC brauchst. Ist also auch nicht so kompliziert, aber immerhin nicht so einfach wie bei QB. Solltest du einfach mal ausprobieren, ob du damit klar kommst oder ob du lieber bei QB bleibst.
Zitat: | Alternatives probieren mit QBasic blockiert beim Drucken, z.B. aus Hilfe, (CPU ist dabei normal), kann nur noch ueber Windows-Kreuzchen zum Sofortaustieg ! |
Das Druckproblem hab ich noch nicht richtig verstanden. Wenn du QBasic ausführst, blockiert das deine Windows-Druckaufträge oder was meinst du? In dem Falle würde ich mal das Prozessorauslastungspatch ausprobieren. Vielleicht hilft das auch da. _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
 |
Elvis

Anmeldungsdatum: 01.06.2006 Beiträge: 818 Wohnort: Deutschland, BW
|
Verfasst am: 17.07.2006, 20:27 Titel: |
|
|
Zitat: |
Was ist mit dem Druck-Problem bei QBasic ?
auch eine sache des "fehlenden" DOS, (merke CPU bleibt dabei normal:
|
Versuchst über QBasic auf einen Netzwerkdrucker zuzugreifen (man weiß ja nie)? Das funktioniert nämlich nicht ohne weiteres.
Auf http://www.qbasic.de gibts glaub ich ein Programm, mit dem aus QBasic raus auf Netzwerkdrucker zugreifen kann.
Grüße, Elvis |
|
Nach oben |
|
 |
Winkel
Anmeldungsdatum: 17.07.2006 Beiträge: 25 Wohnort: Berlin
|
Verfasst am: 17.07.2006, 23:47 Titel: QuickBasic unter W2K |
|
|
Hallo, Sebastian und Elvis:
Danke für die Antworten.
Das Problem mit dem Drucken ist folgendes:
Ich öffne QBacic, und tue etwas, z.B Hilfe aufrufen.
Es öffnet sich das Hilfe Fenster. Da kann ich noch herumnavigieren bis ich das Thema gefunden habe.
Man kann ja mit Alt-D und nochmal D auf Drucken gehen.
Er bieten in einen Unterfenster dann
Markierten Text (drucken)
Aktuelles Fenster (drucken),
Ganzes Programm (drucken) an.
Man setzt den "Markierungspunkt" (egal wo, spielt keine Rolle) und geht auf "OK"
Da friert er ein
Wenn ich gleich (oder später, es tut sich ja nichts) Contol+Alt+Enf betätige, komme ich u.a. in den Task Manager. dabei ist in Systemleistung die CPU-Auslastung normal (ca. 5 bis 20%), die Anwendung "MS QuickBasic" (obwohl ich eindeutig QBasic fahre) steht auf "wird ausgeführt", aber es tut sich nichts.
Das QBasic reagiert nicht mehr. Mein einziger Ausweg ist das Windows-Kreuzchen (oben rechts, beenden), er sagt er kann nicht und bietet "Sofort Beenden" an.
Nur so komme ich wieder raus.
DER DRUCKER IST EIN LOKALER DRUCKER, NIX NETZWERK, ABER USB
(USB war doch unter DOS noch nicht, spielt das eine Rolle??)
So, noch besser könnte ich es kaum beschreiben, würde nur länger werden...
Winkel
Sebastian, bit Du der selbe Sebastian von FreeBASIC-Forum??
[/b] |
|
Nach oben |
|
 |
Michael Frey

Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 18.07.2006, 10:01 Titel: |
|
|
Zitat: | DER DRUCKER IST EIN LOKALER DRUCKER, NIX NETZWERK, ABER USB
(USB war doch unter DOS noch nicht, spielt das eine Rolle??) |
Ja, das spielt eine Rolle.
siehe Link 1 und Link 2.
Zitat: | Sebastian, bit Du der selbe Sebastian von FreeBASIC-Forum?? |
Lies mal oben, ganz ob wo du bist .
ganz Oben hat Folgendes geschrieben: | Das deutsche QBasic- und FreeBASIC-Forum |
Das alles hier ist ein Forum.
Angenehm sind die Synergie Effekte (wir haben viele Erfahrene QBasic Programmierer die auf FB umgestiegen sind und die bleiben dem QB Bereich erhalten, desweiteren lässt sich viel Code beinahe unverändert in beiden Sprachen nutzen). _________________ http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight |
|
Nach oben |
|
 |
Winkel
Anmeldungsdatum: 17.07.2006 Beiträge: 25 Wohnort: Berlin
|
Verfasst am: 18.07.2006, 18:24 Titel: QuickBasic unter W2 |
|
|
Hallo an alle:
Danke für die Antwort bezüglich DosDruck unter Windows.
Habe Dein Link 1 und 2 nicht nur gelesen sondern auch ausgedruckt!
Dan war ich im WWW uns bin auf PAERL gestossen, die haben einen LPT-USB-Converter zu 19 EUR.
Wäre auch eine Lösung, aaaber
da kriecht mir eine Frage hoch, die da lautet:
Wie verhaltren sich die SW-Lösungen, wenn man nicht gerade DOS sondern aus Word (oder allgemein aus Windows`) drucken will ???
Muss man unterm Tisch krabbeln und umstöpseln oder geht das sozusagen "transparent" durch ??
Habt Ihr Erfahrungswerte ?
(Ich bin mir sicher, wenn ich bei Pearl anrufe und dieselbe Frage stelle, wird es heissen "es geht", obwohl keiner das Ding je ausprobiert hat...)
Mit Dank im voraus
Winkel |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 18.07.2006, 19:24 Titel: |
|
|
Mit solchen Konvertern kannst du nur einen Parallelportdrucker an einen USB-Port anschließen und nicht andersrum, wenn ich mich nicht irre. Die Softwarelösungen (z.B. RGH-Druck) laufen nur, wenn du sie auch brauchst. Da brauchst du nichts umstecken. Wenn du das Programm nicht startest, beeinträchtigt es auch nicht die anderen Anwendungen.  _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
 |
Winkel
Anmeldungsdatum: 17.07.2006 Beiträge: 25 Wohnort: Berlin
|
Verfasst am: 19.07.2006, 00:02 Titel: QuickBasic unter W2K |
|
|
Hallo, nochmal.
Das Forum hatte Recht, das mit dem Converter ist gerade das Umgekehrte von dem was ich brauche. Muss mir in den nächsten Tage das geeigneste aussuchen.
Nun zu der CPU-Auslastung. Hab die auslastung.zip geholt und entpackt.
Da schreibt Sebastian:
---------------------------------------------------------------------
"PATCH ZUR REDUKTION DER PROZESSORAUSLASTUNG DURCH QB.EXE UNTER WINDOWS 2000/XP
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Welcher QBasic Programmierer, der unter Windows 2000/XP arbeitet, kennt das Problem der hohen Prozessorauslastung von QB.exe nicht? Dieses Patch hier senkt die Prozessorauslastung der IDE deutlich! Im Leerlaufmodus, wenn keine Eingaben getätigt werden, sinkt sie z.T. unter 20% und auch beim Tippen von Code hält sie sich meistens deutlich unter 90%. Bei mir schwankt beim Schreiben die Auslastung zwischen 50 und 90 Prozent. Die Zeiten, als der Prozessor wegen QB.EXE heiß lief, sind also vorbei! Die Verwendung des Patches ist einfach. Nacheinander werden die beiden Anwendungen für MSDOS
auslast.com und auslast2.com gefolgt von QB.exe durch eine Batchdatei auf gerufen und schon läuft QB im Prozessorschonungsmodus...
Die beiden TSR- Programme (Terminate-And-Stay-Resident, siehe MonsterFAQ von qbasic.de), die geladen werden, werden beim Schließen der jeweiligen Dosbox (ntvdm) automatisch wieder beendet. Es ist keine besondere Operation zum Beenden nötig. Dieses Patch hier sollte nur verwendet werden, wenn man das Problem mit der hohen Auslastung unter Windows 2000/XP tatsächlich hat. Ansonsten bringt einem die Verwendung nichts. Der Assembler-Quellcode (NASM) der
beiden COM-Dateien ist ebenfalls in diesem ZIP-Archiv enthalten und kann frei verwendet werden.
ACHTUNG: Die Verwendung der COM-Dateien des Patches erfolgt ausschließlich auf eigene Gefahr! Der Herausgeber / Programmierer haftet für keinerlei Schäden an Hard- oder Software oder auch nicht für Verdientsausfälle etc.!
Mit der Benutzung des Patches erkennen Sie diese Bedingung automatisch an!
ÜBRIGENS: Dieses Patch funktioniert möglicherweise auch mit anderen DOS- Anwendungen! Dies wurde jedoch nicht getestet.
AUTOREN: PorkChicken (http://www.easytarget.de/)
Sebastian Steiner (http://www.sebastian-steiner.de)
10.02.2006 "
------------------------------------------------------
Einen Satz verstehe ich nicht :
"Die Verwendung des Patches ist einfach. Nacheinander werden die beiden Anwendungen für MSDOS auslast.com und auslast2.com gefolgt von QB.exe durch eine Batchdatei aufgerufen und schon läuft QB im Prozessorschonungsmodus... "
Wir diese Utility installiert ?
Oder nur gestartet ??
Startet sie von alleine ??
womit genau ?
Wird die ganze Utility ins QBasic-Verzeichnis reinkopiert und beim Aufruf startet dann die .bat ??
Ich frage ja weil ich keine Experimente mit Dinge die ich nicht einschätzen kann, machen will.
Wie soll man da vorgehen ??
Danke im voraus, und gute Nacht !
Winkel |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 19.07.2006, 08:43 Titel: |
|
|
Hallo.
Ich gehe mal davon aus, dass du QBasic 1.1 verwendest. Batchdateien sind wie kleine Programme, die DOS-Befehle nacheinander abarbeiten. Ein Batch-File für QBasic, mit auslast.com und auslast2.com, würde dann folgender maßen aussehen:
Code: |
@echo off
auslast.com
auslast2.com
qbasic.exe
|
Ist ja eigentlich nicht so schwer, oder? Achja: die Batch-Datei muss die Dateiendung ".bat" haben. Außerdem sollte sie sich im gleichen Verzeichnis befinden, wie QB und das Auslastungs-Patch von Sebi. Die Batch-Datei kann man noch so verändern, dass alles woanders liegen kann (einfach die Pfadangaben davor setzen).
/edit:
Einen solchen Converter (Parallel->USB) dürfte es nicht geben. Und selbst wenn: er würde dir nichts nutzen, da QB denkt, es steuert einen Parallel-Drucker an. Wenn überhaupt, benutzt ein Parallel-Drucker aber andere Steuercodes als einer, der über eine USB-Schnittstelle kommuniziert. Da USB ohnehin nur unter Windows (und Linux und Mac und...), aber nicht unter DOS funktioniert, gibt es Treiber (okay, hab' ich blöd formuliert). Der Treiber hängt sich so gesehen zwischen Betriebssystem und Drucker. DOS kennt Windows nicht und somit auch nicht den Treiber (ist ja sowieso 32-Bit).
So, hoffe, dass das hilft!
Greets,
Mao _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 19.07.2006, 13:38 Titel: |
|
|
Mao hat das genau richtig erklärt. Eine Batchdatei (Endung *.bat) führt nacheinander verschiedene Befehle oder Programme aus. Zuerst startet sie den Patch. Der läuft dann innerhalb der DOS-Box. Wenn die beiden COM-Dateien dann gestartet sind, wird QB aufgerufen. So lange wie QB läuft, laufen die COM-Dateien im Hintergrund mit und senken die Prozessorauslastung. Sobald du die DOS-Box schließt, sind die beiden sog. TSR-Programme auch wieder weg. Also ganz harmlos. Der Hinweis, dass der Autor für keine Schäden haftet usw. findet sich in fast jeder Freeware, einfach zur Absicherung des Herausgebers. Darüber, ob eine Software gefährlich sein kann, sagt das nichts aus. Dieser Hinweis sagt dir nur, dass du die Software auf eigenen Gefahr verwendest und sie eigenverantwortlich einsetzt und dass du nicht den armen Schüler, der sie erstellt hat, verklagen kannst, wenn was daneben geht.
Wenn du bei dem Druckerproblem die Angelegenheit von der Hardwareseite angehen willst, würde ich dir eher empfehlen, dir z.B. bei eBay einfach einen kleinen Parallelportdrucker zu kaufen. Heutzutage sind die Patronen für die Dinger teurer als die Geräte selbst. Ansonsten kannst du auch Preisrecherchen z.B. bei guenstiger.de und preissuchmaschine.de machen. _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
 |
Winkel
Anmeldungsdatum: 17.07.2006 Beiträge: 25 Wohnort: Berlin
|
Verfasst am: 28.07.2006, 13:59 Titel: QuickBasic unter W2K |
|
|
Hallo,...und danke !!!
Gestern konnte ich mich nicht einloggen, mehrere Male hintereinander, heute auf Anhieb, verstehe es wer mag ...
Habe meine CPU mit dem Patch, melches Ihr mir empfohlen habt, bearbeitet.
Übrigens, danke für die "Belehrung" bezüglich was eine .bat ist.
Nach dem posten meiner Frage kam ich selber ´drauf
Habe lediglich "echo" auf "on" gestzt, da sieht man das Patch kurz aufflackern, so dass man weiss dass es geht. Meine CPU geht nicht mehr auf 100%.
Habe ausserdem DOSPRN installiert, (das einfachste in der Handhabung) und ich kann aus Q- und aus QuickBasic drucken ! Nochnmal Danke,
Jetzt "jeht" es los !!...
Winkel |
|
Nach oben |
|
 |
dreael Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 2529 Wohnort: Hofen SH (Schweiz)
|
Verfasst am: 28.07.2006, 17:23 Titel: |
|
|
Einige Artikel passend zum Thema. Einsatz unter aktuellem Betriebssystem:
http://www.dreael.ch/Deutsch/BASIC-Knowhow-Ecke/BASICunterWindows95_98_NT.html
Drucker:
http://www.dreael.ch/Deutsch/BASIC-Knowhow-Ecke/BildschirmHardcopy.html
Bemerkung zu letzterem: Problem ist halt, dass mittlerweilen typische Windows-Drucker keine standardisierten Befehlssätze wie beispielsweise ESC P/2 o.ä. verwenden, weil ja jeder Hersteller seine Geräte mit Windows-Treiber ausliefert. Mit anderen Worten: Der bisherige Weg von NTVDM, einfach die ans virtuelle LPT1: gesendeten Daten ans physisch vorhandene LPT1: zu senden ist schlicht und einfach nicht mehr der adäquate Weg heutzutage.
Im Grunde genommen müsste man für die NTVDM einen Emulator schreiben, der dem DOS-Programm irgend ein typischer damaliger Drucker simuliert und dann beispielsweise wie eine normale Windows-Applikation die "angeschlagenen Nadeln" als kleine Grafikkreise ans Windows-Drucker-API sendet. Ich weiss nicht einmal, wie dies bei Dosbox gelöst ist. Ansonsten wäre dies sicherlich ein sinnvolles Contribution-Projekt für Dosbox. _________________ Teste die PC-Sicherheit mit www.sec-check.net |
|
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.
|
|