Itse en vielä ole käyttänyt DOSKlooni ykköstä, koska en ole saanut toimimaan, kuten haluaisin vaan olen kaikissa joutunut käyttämään DOSKlooni kakkosta, joka on tuttu esimerkiksi siis uusimmassa tuotoksessani WindoX ohjelmassa, jonka saa osoitteesta http://koti.mbnet.fi/juha2002/Files/WindoX.zip
DOSKlooni 1
'Kaikkihan tietävät miltä dos näyttää tai komentokehoite?
'no nyt tehdään sillainen samanlainen vaikkakin kovin monella ei
'taida sillaiselle olla käyttöä....
shell ("cd>osoite.dat") 'tehdään siihen hakemistoon missä toimitaan
'osoite.dat tiedosto jossa sijaitsee tuo tieto siitä hakemistosta mikä se on
open "osoite.dat" for input as #1
input #1, add$
close #1
prompt:
print add$: input ">", prompt$
select case(prompt$)
case is = "exit", "EXIT", "quit", "QUIT"
goto quit
case is = "cls", "CLS", "clear", "CLEAR"
goto clear
case is = "ver", "VER"
goto ver
else
goto invalid
end select
quit:
end
clear:
cls
goto prompt
invalid:
'tulee, kun käyttäjä kirjoittaa komennon väärin
print "Invalid command or filename"
goto prompt
ver:
'ver on komento, joka näyttää ohjelman version
'tässä tilanteessa DOSKloonin version
print "DOSKlooni 1.0"
goto promptDOSKlooni 2
shell ("cd>osoite.dat")
open "osoite.dat" for input as #1
input #1, add$
close #1
prompt:
print add$;: input "\", prompt$
if prompt$ = "ver" then goto versio
if prompt$ = "exit" then end
shell ("" + prompt$)
sleep
goto prompt
versio:
print "DOSKlooni 1.2"
sleep
goto promptKumpaankin voi lisäillä helposti omaa koodia ja muokata mieluisakseen ja kuten jo kerroin niin monelle näistä ei ole edes hyötyä tai varmaan edes minkäänlaista käyttöä, mutta esimerkiksi ne ketkä tekevät jonkinsorttista GUI-ohjelmaa.... ym niin jonkinsorttinen komentokehoite tai muu on varmaan aika hyvä juttu siellä ja olen itsekkin käytellyt aika paljon omissa töissäni näitä.... ja kolmatta, jota tosin en tänne laittanut, koska en ole itse sitä oivaltanut.
Tuotas... nuo
case is = "cls", "CLS", "clear", "CLEAR"
yms. jutut saisi toteutettua varmaan UCASE:lla, joka tukee vain isoja kirjaimia :)
Ja ei käytetä sitä goto:a :)
UCASE ei "tue isoja kirjaimia" vaan muuttaa sille annettun merkkijonon kirjaimet isoiksi ;)
Aivan, eli jos on x$ = ucase$(hallu$)
ja hallun sisältö olisi "pirpana" (huom. pienellä) niin x$-muuttujasta tulisi PIRPANA, eikös?
"...goto quit..."
Eikö olisi helpompi kirjoittaa pelkkä END?
ohops..... Joo totta late!
Fawkz, sori en muistanut aivan tarkasti... Ei QB:tä ollut lähettyvillä, jotta olisin voinut luntata ;)
Ihan hyvä, mutta melkein vastaavan saa
DO
INPUT komento$
SHELL komento$
LOOP
KimmoKM, niin saa vaan huomioitko sen, että jos teet jotain GUI-ohjelmaa tai ns. OS:sia niin siellä komentokehoiteessa (jos teet siihen sitä) olisi aika noloa, jos sitten tulisi, kun käyttäjä kirjoittaa "ver" niin esimerkiksi win 98.... siksi piti rakennella vähän isompi systeemi tuohon......
Korjaus!
'Kaikkihan tietävät miltä dos näyttää tai komentokehoite?
'no nyt tehdään sillainen samanlainen vaikkakin kovin monella ei
'taida sillaiselle olla käyttöä....
shell ("cd>osoite.dat") 'tehdään siihen hakemistoon missä toimitaan
'osoite.dat tiedosto jossa sijaitsee tuo tieto siitä hakemistosta mikä se on
open "osoite.dat" for input as #1
input #1, add$
close #1
prompt:
print add$; : input ">", prompt$
select case(prompt$)
case is = "exit", "EXIT", "quit", "QUIT"
goto quit
case is = "cls", "CLS", "clear", "CLEAR"
goto clear
case is = "ver", "VER"
goto ver
else
goto invalid
end select
quit:
end
clear:
cls
goto prompt
invalid:
'tulee, kun käyttäjä kirjoittaa komennon väärin
print "Invalid command or filename"
goto prompt
ver:
'ver on komento, joka näyttää ohjelman version
'tässä tilanteessa DOSKloonin version
print "DOSKlooni 1.0"
goto promptAihe on jo aika vanha, joten et voi enää vastata siihen.