CD check in msdos

Pagina: 1
Acties:
  • 130 views sinds 30-01-2008
  • Reageer

Acties:
  • 0 Henk 'm!

  • splat
  • Registratie: Juni 2000
  • Niet online
Ik heb een pc omgebouwd tot standalone mp3 player met daarin een harddisk en een cdrom speler.
Het besturingsysteem is msdos 6.22
Nu wil ik dat hij tijdens het opstarten kijkt of er een cd geladen is.
Zo, ja dan moet hij de mp3s die op de cd staan spelen
Zo niet dan moet hij ze van de harddisk spelen.

Is er een manier om in een batch bestand te controleren of er een cd in de cdrom speler zit?

Ik heb nu deze regel om te checken of er een mp3 cd in zit.

if exist d:\*.mp3 goto startcd


Dit gaat goed als er 'n cd is geladen

Maar als er geen cd in zit dan komt hij met de vraag:

Niet klaar bij het lezen van station D
(a)fbreken, (h)erhalen, (o)verslaan?

Op mijn mp3speler zit normaal geen toetsenbord en monitor aangesloten.
Ik kan dus niet gewoon ff op "o" drukken zodat hij verder gaat.

Ik heb al een tijdje gezocht met google maar ben geen echte oplossing tegengekomen.
Ik heb wel iets gevonden over errorlevels enzo maar daar is het mij nog niet mee gelukt.

Weet iemand hoe ik dit op kan lossen?

Acties:
  • 0 Henk 'm!

  • Captain Pervert
  • Registratie: Mei 2000
  • Laatst online: 05-03 12:19
Batch :D Lang geleden hee.
code:
1
2
3
4
5
6
7
8
if errorlevel 1 goto speelcd
if errorlevel 0 goto speelhdd

:speelcd
speel.exe d: (of whatsoever)

:speelhdd
speel.exe c: (of whatsoever)

Zo werken errorlevels, maar ik weet niet of dat werkt voor jouw probleem. Het is volgens mij primair bedoeld voor userinput. Iets als dit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
echo OPTIEMENU
echo
echo A. Doom
echo B. Wacky Wheels
echo C. Wolf3d
echo D. Theme park
choice ABCD 
if errorlevel 3 goto theme
if errorlevel 2 goto wolf3d
if errorlevel 1 goto wacky
if errorlevel 0 goto doom
:theme
theme.exe
:wolf3s
wolf3d.exe

etc :)
Let wel: het choice-commando weet ik niet meer, moest ook een parameter bij ofzo. Maar goed dat is allemaal offtopic.

Porsche 928 - It's about as fast as you can go without having to eat airline food.


Acties:
  • 0 Henk 'm!

  • splat
  • Registratie: Juni 2000
  • Niet online
Die choice menu's lukken mij ook wel met errorlevel.
Maar het is mij niet gelukt om de foutmelding (die hij geeft als er geen cd in zit )met een errorlevel te ondervangen.
Ik weet niet of dit dus uberhaupt wel mogelijk is met errorlevel.

Acties:
  • 0 Henk 'm!

  • Phenomenon
  • Registratie: December 2000
  • Laatst online: 25-06 08:56
Persoonlijk denk ik niet dat je dit met een batch zal lukken.

Mischien ff wat sleuten in Qbasic :?

Zit als het goed is ook msdos en is ook niet zo moeilijk.

Acties:
  • 0 Henk 'm!

  • splat
  • Registratie: Juni 2000
  • Niet online
Op vrijdag 05 april 2002 13:02 schreef Peter1978Thuis het volgende:
Persoonlijk denk ik niet dat je dit met een batch zal lukken.

Mischien ff wat sleuten in Qbasic :?

Zit als het goed is ook msdos en is ook niet zo moeilijk.
mmmh.. met Qbasic heb ik helaas geen ervaring maar ik zal is op zoek gaan.

Misschien heeft iemand nog 'n andere oplossing??

Acties:
  • 0 Henk 'm!

  • Racemol
  • Registratie: September 2001
  • Laatst online: 16:48
Kan iemand niet ff snel een CDCheck proggie maken voor DOS? Ik heb nu ff geen programmeer sotware geinstalleerd dus ik kan je niet helpen.. Maar ik neem aan dat er wel een tweaker is die dit in enkele minuutjes kan fixen..

Acties:
  • 0 Henk 'm!

  • splat
  • Registratie: Juni 2000
  • Niet online
Na wat zoeken vond ik dit commando

C:\ECHO Y | DEL *.*

Hiermee wordt de vraag die dos stelt direct beantwoord met "Y"

Weet iemand of het ook mogelijk is om zoiets te doen als dos de foutmelding die ik in m'n post beschreef geeft.

Ik heb
echo A | if exist d:\*.mp3
geprobeerd maar dat werkte helaas niet.

Acties:
  • 0 Henk 'm!

  • HunterPro
  • Registratie: Juni 2001
  • Niet online
Op zondag 07 april 2002 21:34 schreef splat het volgende:
Na wat zoeken vond ik dit commando

C:\ECHO Y | DEL *.*

Hiermee wordt de vraag die dos stelt direct beantwoord met "Y"

Weet iemand of het ook mogelijk is om zoiets te doen als dos de foutmelding die ik in m'n post beschreef geeft.

Ik heb
echo A | if exist d:\*.mp3
geprobeerd maar dat werkte helaas niet.
da's logisch. het | ding heet een pipe. Daarmee leg je als het ware een pijpleiding tussen het gedeelte voor en na de |. Dat betekent dat de uitvoer van echo A wordt doorgegeven aan de opdracht er achter. maar laat er achter nou geen dos-opdracht maar een batchopdracht staan... en dat gaat dus niet.

Acties:
  • 0 Henk 'm!

  • Vae Victis
  • Registratie: April 2001
  • Laatst online: 20:36

Vae Victis

Dark Lord of the Sith

Pleur dit in een batch file.
code:
1
2
3
4
5
6
7
8
if exist "d:\*.mp3" goto play
if errorlevel 0 goto noplay
:play
echo play
goto end
:noplay
echo noplay
:end

En speel er wat mee.
Zo werkt hij iedergeval. :)
[edit]
Een wat kortere en betere.
code:
1
2
3
4
5
6
if exist "d:\*.mp3" goto play
echo noplay
goto end
:play
echo play
:end

Asje. :)

Acties:
  • 0 Henk 'm!

  • splat
  • Registratie: Juni 2000
  • Niet online
Op zondag 07 april 2002 21:49 schreef Vae Victis het volgende:
Pleur dit in een batch file.
....
Dit werkt dus alleen als er wel 'n cd in zit. Als er geen cd inzit komt hij eerst weer met de melding:

Fout bij het lezen van station D
Afbreken, herhalen, overslaan?

En dus moet ik eerst op de "o" drukken voor hij doorgaat..

Acties:
  • 0 Henk 'm!

  • Maniakje
  • Registratie: Februari 2001
  • Laatst online: 02-06 21:34
Download dit.

Heb ik ff snel in QB geschreven.
Gebruik: PEXIST D:\

Bestaat het path, dan switch ie er naar toe, bestaat het niet, dan blijft ie in huidige dir. Daarna kun je met een EXIST batch command kijken of je er *.MP3 files hebt staan.

Ik hoop dat je er wat aan hebt :)

The sentence below is true.
The sentence above is false.


Acties:
  • 0 Henk 'm!

  • Vae Victis
  • Registratie: April 2001
  • Laatst online: 20:36

Vae Victis

Dark Lord of the Sith

Op zondag 07 april 2002 22:08 schreef splat het volgende:
Dit werkt dus alleen als er wel 'n cd in zit. Als er geen cd inzit komt hij eerst weer met de melding:
Fout bij het lezen van station D
Afbreken, herhalen, overslaan?
En dus moet ik eerst op de "o" drukken voor hij doorgaat..
Oeps, teste het in win2k.
Dee die het gewoon.
Maar met hierboven, moet het wel lukken. :)

Acties:
  • 0 Henk 'm!

  • splat
  • Registratie: Juni 2000
  • Niet online
Op zondag 07 april 2002 22:15 schreef Maniakje het volgende:
Download dit.

Heb ik ff snel in QB geschreven.
Gebruik: PEXIST D:\

Bestaat het path, dan switch ie er naar toe, bestaat het niet, dan blijft ie in huidige dir. Daarna kun je met een EXIST batch command kijken of je er *.MP3 files hebt staan.

Ik hoop dat je er wat aan hebt :)
Bedankt voor je proggie! :)

Nu kan het zijn dat ik iets fout begrepen heb.
Maar als ik er 'n cd instop en "pexist d:\" ingeeft dan detecteerd hij de cd maar blijft hij in de huidige dir.

Als ik er geen cd in stop en ik geef "pexist d:\"
Dan geeft hij keurig de melding "path does nog exist"

Misschien heb je het onder 'n andere dos versie getest??
Ik heb het onder dos 6.22 getest

Acties:
  • 0 Henk 'm!

  • Maniakje
  • Registratie: Februari 2001
  • Laatst online: 02-06 21:34
Sorry, mijn fout :)

Ik had hem alleen ff gauw getest op een harddisk, maar het blijkt dat de CHDIR command van QBasic niet werkt met CD-rom drives. Weer wat geleerd :)

Ik heb een nieuwere versie gemaakt, deze moet het als het goed is wel goed doen. Download hem hier. (Dit is een andere link dan die hierboven!)

Nu maar hopen dat ie goed is :P

The sentence below is true.
The sentence above is false.


Acties:
  • 0 Henk 'm!

  • splat
  • Registratie: Juni 2000
  • Niet online
Op maandag 08 april 2002 22:21 schreef Maniakje het volgende:
Nu maar hopen dat ie goed is :P
Hij doet het perfect!!! :)

Thnx! dit was precies waar ik naar op zoek was!
Pagina: 1