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:

laufwerk

 
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
Degolino



Anmeldungsdatum: 19.07.2006
Beiträge: 48

BeitragVerfasst am: 09.01.2007, 12:52    Titel: laufwerk Antworten mit Zitat

wie kann ich ein laufwerk öffnen??
und zwar so das es funktionier?
ich kenne zwar schon zwei möglichkeiten, aber die gehen nicht
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 09.01.2007, 13:25    Titel: Re: laufwerk Antworten mit Zitat

Degolino hat Folgendes geschrieben:
ich kenne zwar schon zwei möglichkeiten, aber die gehen nicht

Vielleicht erzählst du ein bisschen genauer, was du schon erfolglos probiert hast... Das könnte für eine Hilfestellung nützlich sein.
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 09.01.2007, 15:13    Titel: Re: laufwerk Antworten mit Zitat

Degolino hat Folgendes geschrieben:
wie kann ich ein laufwerk öffnen??
und zwar so das es funktionier?
ich kenne zwar schon zwei möglichkeiten, aber die gehen nicht


[wörtlich-nehm]
1) Computer öffnen,
2) Die Laufwerke suchen, sie befinden sich meist im vorderen Teil des Rechers
3) Seitliche Schrauben lösen und Laufwerk herausziehen.
=> Lösung 1: Mit der Axt oder so draufhauen, bis die Hülle kaputt ist. Nachteil dieser Lösung: Laufwerk "funktionier" nicht mehr.
=> Lösung 2: Falls vorhanden, sämtliche Schrauben lösen oder mit dem Schraubenzieher das Gehäuse aufstemmen.
[/wörtlich-nehm]

Sorry, aber ich glaube, das was du meinst, wurde schon ca. 937175912375 mal gefragt. Ein Blick in die QB MonsterFAQ hilft hier sicherlich. und bevor du wieder so viele themen auf einmal öffnest: erst bitte da nachgucken...
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Degolino



Anmeldungsdatum: 19.07.2006
Beiträge: 48

BeitragVerfasst am: 10.01.2007, 09:52    Titel: Antworten mit Zitat

ne weist ich nehm c4 dann gehts schneller
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 10.01.2007, 16:47    Titel: Antworten mit Zitat

Du willst dein Problem gelöst haben. Schön und gut.
Aber wenn du dann nur was nicht ernst-gemeintes auf einen nicht-ernst-gemeinten Beitrag postest, obwohl du etwas bzgl. des Problems gefragt wurdest - das kann ich dann einfach nicht verstehen...
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Manuel



Anmeldungsdatum: 23.10.2004
Beiträge: 1271
Wohnort: Bayern

BeitragVerfasst am: 10.01.2007, 20:48    Titel: Antworten mit Zitat

Kumpel, wir können nicht gedankenlesen oder meditieren, um herauszufinden, WAS du schon probiert hast^^. Schreib mal welche(s)
  • Betriebssystem
  • Q(uick)-/FreeBasic-Version
  • Laufwerk (CD, Diskette...)
Du hast und was du schon probiert hast, dann können wir (hoffentlich) helfen... Bei so wenig Infos leider nicht...
_________________
DL Walk (Denkspiel) | DL Malek (Denkspiel) | DL Warrior (ASCII-Adventure) | DL Sokodos (Sokoban-Klon)
---
www.astorek.de.vu
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger
Degolino



Anmeldungsdatum: 19.07.2006
Beiträge: 48

BeitragVerfasst am: 16.01.2007, 14:45    Titel: Antworten mit Zitat

Ich habe XP
Qbasic version 1.1
Und ausprobiert habe ich das:

DECLARE FUNCTION lowbyte% (word%)
DECLARE FUNCTION highbyte% (word%)
DECLARE SUB door (switch%)
'
CONST openIt = 0
CONST closeIt = 5
'
TYPE RegTypeX
ax AS INTEGER
bx AS INTEGER
cx AS INTEGER
dx AS INTEGER
bp AS INTEGER
si AS INTEGER
di AS INTEGER
flags AS INTEGER
ds AS INTEGER
es AS INTEGER
END TYPE
'
DIM SHARED inregsx AS RegTypeX
DIM SHARED outregsx AS RegTypeX
DIM SHARED drive AS INTEGER
DIM SHARED control AS STRING * 1
DIM SHARED request(1 TO 20) AS STRING * 1
'
request(1) = CHR$(26)
request(2) = CHR$(0)
request(3) = CHR$(12)
request(19) = CHR$(lowbyte(1))
request(20) = CHR$(highbyte(1))
'
inregsx.ax = &H1500
inregsx.bx = &H0
inregsx.cx = &H0
CALL INTERRUPTX(&H2F, inregsx, outregsx)
drive = outregsx.cx
'
CLS
door openIt
LOCATE 1, 1: PRINT "Press any key to close it again."
SLEEP
door closeIt
END
'
SUB door (switch%)
control = CHR$(switch%)
request(15) = CHR$(lowbyte(VARPTR(control)))
request(16) = CHR$(highbyte(VARPTR(control)))
request(17) = CHR$(lowbyte(VARSEG(control)))
request(1cool = CHR$(highbyte(VARSEG(control)))
inregsx.ax = &H1510
inregsx.cx = drive
inregsx.es = VARSEG(request(1))
inregsx.bx = VARPTR(request(1))
CALL INTERRUPTX(&H2F, inregsx, outregsx)
END SUB
'
FUNCTION highbyte% (word%)
IF word% >= 0 THEN
highbyte% = word% \ 256
ELSE
highbyte% = (65536 + word%) \ 256
END IF
END FUNCTION
'
FUNCTION lowbyte% (word%)
IF word% >= 0 THEN
lowbyte% = word% MOD 256
ELSE
lowbyte% = (65536 + word%) MOD 256
END IF
END FUNCTION

und das:

Dim shared reg as regtypex
'
reg.ax =&H1510
reg.cx = Laufwerk (0=A,1=B,2=C,3grinsen...)
reg.es = Varseg(requestheader)
reg.bx = Varptr(requestheader)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Degolino



Anmeldungsdatum: 19.07.2006
Beiträge: 48

BeitragVerfasst am: 16.01.2007, 14:46    Titel: Antworten mit Zitat

die Smylies sollen da eigentlich nicht rein!!!!!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
dreael
Administrator


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

BeitragVerfasst am: 16.01.2007, 15:16    Titel: Antworten mit Zitat

Gemäss

http://www.ctyme.com/intr/rb-4493.htm

willst Du also einen Device Driver Request senden.

Vielleicht ein paar Bemerkungen zur Codegestaltung:
1.) Solche Strukturen wie der Device Driver Reqest Header würde ich mit einem TYPE abbilden und dann mit einem DIM eine Variable instanzieren. Ist viel klarer zum Lesen/Verstehen als da irgendwelche Arrays zusammenPOKEen.
2.) Vermeide dagegen die CPU-Register selber zu deklarieren, dafür gibt es ja schliesslich Headerdateien wie in C/C++, so dass ein
Code:
' $INCLUDE: 'qb.bi'

gereicht hätte.

Zum Problem selber: Du hättest Dein Problem ganz zu Beginn besser als
Beispiel hat Folgendes geschrieben:
Hallo QB-Community
Im Windows-Explorer kann man bekanntlich im Arbeitsplatz mit rechter Maustaste über der CD-ROM-Laufwerksbuchstaben-Ikone mit "Auswerfen" die Schublade des CD-ROMs softwaremässig öffnen und auch wieder schliessen. Wie kann ich dasselbe in QB 4.5 mit einem CALL INTERRUPT, evtl. auch Assemblerroutine ebenfalls erreichen? Umgebung ist Windows XP Home Edition Service Pack 2, Windows-Benutzer besitzt lokale Administratorenrechte.

formuliert, dann wären auch die etwas komischen Rückbemerkungen nicht gekommen...

Übrigens wurde unter

http://groups.google.com/group/comp.lang.basic.misc/browse_thread/thread/e8bb334a240c8788/f88dfe66894509df

(Usenet-Posting in comp.lang.basic.misc) ein entsprechendes Posting publiziert - müsste sogar QBasic 1.1-kompatibel sein!
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 16.01.2007, 15:34    Titel: Antworten mit Zitat

Warum immer wieder das gleiche?! mit den Augen rollen
Codeboxen und die edit-Funktion benutzen...
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
dreael
Administrator


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

BeitragVerfasst am: 16.01.2007, 15:52    Titel: Funktionierendes Codebeispiel Antworten mit Zitat

Habe auf einem Labor-PC die IOCTL-Variante vom Usenet-Posting vorhin kurz erfolgreich getestet. Code:

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

Testumgebung: Standard-PC mit handelsüblichem ATAPI-Laufwerk, MS-DOS 6.22, dort OAKCDROM.SYS geladen (ist ein Universal-CD-ROM-Treiber für ATAPI-Laufwerke und wird auf die Notfall-Startdiskette von Windows Millennium Edition draufgepackt). In der CONFIG.SYS-Zeile befindet sich daher ein
Code:
DEVICEHIGH=C:\CDROM\OAKCDROM.SYS /D:MSCD001

und in der AUTOEXEC.BAT ist ein
Code:
LH MSCDEX /D:MSCD001

eingefügt. Wichtig: Genau diesen bei /D angegebenen Namen (kann man meines Wissens beim Erstellen von CONFIG.SYS und AUTOEXEC.BAT frei wählen!) muss man bei OPEN mitgeben! Wie dieser Gerätename in der NTVDM heisst, müsste man zuerst noch herausfinden.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Und3rt4ker



Anmeldungsdatum: 21.07.2007
Beiträge: 15
Wohnort: daheim

BeitragVerfasst am: 22.07.2007, 21:51    Titel: Antworten mit Zitat

hi@all
sry, wennn der thread schon zu alt ist mit den Augen rollen
wie kann man denn per freebasic befehl das cd rom lauferk aufmachen und wieder schließen? So gut bin ich noch nicht *g* und die qb befehle funktionieren nicht...

Mfg Und3rt4ker
_________________
I Only Understand Railroad Station =>Ich Versteh Nur Bahnhof
The People-Car-Factory =>Das Volkswagenwerk
The Picture-Umbrella =>Der Bildschirm
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
King-01
gesperrt


Anmeldungsdatum: 26.02.2007
Beiträge: 351

BeitragVerfasst am: 22.07.2007, 21:55    Titel: Antworten mit Zitat

Degolino hat Folgendes geschrieben:
die Smylies sollen da eigentlich nicht rein!!!!!


unter der textbox, wodu die nachricht schreibst, kannst du ein häkchen bei "Smilies in diesem Beitrag deaktivieren" setzen.
_________________
[quote="IRC"](22:41:56)<PMedia>Jojo, hats nen Grund warum wir chatten obwohl du grad neben mir sitzt?
...
(23:00:59)<PMedia>USB war erst als Waffe geplant[/quote]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Und3rt4ker



Anmeldungsdatum: 21.07.2007
Beiträge: 15
Wohnort: daheim

BeitragVerfasst am: 22.07.2007, 21:58    Titel: Antworten mit Zitat

das ist bestimmt schon geklärt....aber nicht die frage, wie man unter freebasic die cd-lade öffnet.


MFG Und3rt4ker
_________________
I Only Understand Railroad Station =>Ich Versteh Nur Bahnhof
The People-Car-Factory =>Das Volkswagenwerk
The Picture-Umbrella =>Der Bildschirm
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 22.07.2007, 22:06    Titel: Antworten mit Zitat

@King-01:
Es bringt bestimmt was, wenn du zu einem längst geklärtem, alten Problem, einen eher unwichtigen Hinweis postest. Zunge rausstrecken

@Und3rt4ker:
Bitte erstelle für neue Fragen auch neue Threads. lächeln
(Das Ganze lässt sich mit MCI lösen, sofern du Windows benutzt.)
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
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