Yritän rakennella erästä ohjelmaa, ja tarvitsisin siihen ominaisuuden, joka tunnistaa käyttöjärjestelmän. (esim. Windows 98, Win XP, jne...) Olen kokeillut tätä keinoa: Ensin tarkastetaan, onko koneessa kansio Windows tai Winnt. Jos ei, näytetään viesti, että "Käyttöjärjestelmä ei ole Windows!". Jos koneessa on kansio Windows, kerrotaan, että "Koneessasi on Windows 9.x tai ME". Jos koneessa on kansio Winnt, näytetään viesti edelläolevien tyyliin. Kokeilin sitten tätä ohjelmaa, mutta se ilmoitti, että käyttöjärjestelmä ei muka ole windows, vaikka on! Sen keinon jätin sitten pois (oli tehty DOS:in editillä .bat- tiedostoksi), mutta sitten yritin toteuttaa QuickBasicilla samaa, mutta en onnistunut. Onko jotain muuta keinoa tehdä tuollainen ohjelma QBasicilla?
gamehouse kirjoitti:
tarvitsisin siihen ominaisuuden, joka tunnistaa käyttöjärjestelmän. [...] Olen kokeillut tätä keinoa: Ensin tarkastetaan, onko koneessa kansio Windows tai Winnt.
Huono keino. Windowsin kun voi asentaa mihin hakemistoon tahansa.
gamehouse kirjoitti:
Onko jotain muuta keinoa tehdä tuollainen ohjelma QBasicilla?
Minä lähtisin soveltamaan sitä tietoa, että komentamalla ver näkee käyttiksen version.
Näyttäis olevan "Microsoft Windows XP [Version 5.1.2600]" XP SP2 -koneella ja "DOSBox version 0.70. Reported DOS version 5.0." tuolla Dosboxilla.
' Käyttöjärjestelmän tunnistus CLS SHELL "VER > VERSIO.VER" OPEN "VERSIO.VER" FOR INPUT AS #1 INPUT #1, ver CLOSE #1 IF ver = "Windows 98" THEN PRINT "KONEESSASI ON WINDOWS 98"
Tein tuollaisen. Ei toiminut. Ei toiminut silläkään, että kirjoitin tuon
IF ver$ = "Windows 98" THEN PRINT "KONEESSASI ON WINDOWS 98"
rivin tilalle
PRINT ver$
. Onko muuta keinoa, vai onko tuossa koodissa jotain vikaa?
[edit] Kokeilin lisätä tuonnne tämän rivin:
DIM ver AS STRING
, mutta ei toimi. Typetin myös versio.ver:in ja sillä luki täysin oikein kaikki![/edit]
Mikä sen ver-muuttujan sisältö sitten on, jos ei "Windows 98"?
pitää selvittää kaikkien käyttöjärjastelmien ver:in tulostama tieto. Mulla se on "Windows 98 [versio 4.10.1998]"
Kuten todettua, tuohon versioon sisältyy kaikkea muutakin infoa. Haluttu tieto pitää parsia esille sopivilla merkkijonofunktioilla, joita varmaan osaatkin käyttää.
Mikset vain tulosta sitä ver-muuttujan sisältöä? Siis "Koneessasi on " + ver
Ei mitään iffejä siis.
Aihe on jo aika vanha, joten et voi enää vastata siihen.