Bongasin Laaksosen kirjottaman kirjasto-oppaan, mutta tuli ongelmia. (opas: https://www.ohjelmointiputka.net/oppaat/opas.
Mä en saanut sitä .QLB tiedostoa lisättyä ohjelmaan. Osaako joku auttaa?
Oppaassa on virhe, joka on tullut esille kerran ennenkin:
https://www.ohjelmointiputka.net/keskustelu/2943-kirjastojen-teko-ei-toimi
Eli kirjaston lataamisen yhteydessä oleva merkki ei ole \ vaan /. Nyt oppaan teksti on myös oikein, viime kerralla en muistanut korjausta tehdä lupauksestani huolimatta.
En saanut toimimaan.
ensin tein ohjelman tähän tapaan:
'alku
screen 13
cls
print "toimiiko kirjasto?"
input a$
cls
'loppu
sittein tein siitä kirjaston nimeltä "SUBI.QLB". sen jälkeen avasin qbx:n komennolla run ......\QB\QBX /L SUBI.QLB
QBasic ohjelma avautu, mutta ei siinä subeja tai mitään näkynyt. koitin tehä ohjelman, jossa on se
"declare sub subi alias "subi" ()"
ja ohjelmaan "call subi" mutta se vaan sanoo, että tätä subia ei löydy.
Koitin tehdä alussa sen pikku ohjelman subiin, mutta ei sekään toiminut.
Otapa hetkeksi DECLARE-käsky pois ja kirjoita sitten pelkkä SUBI. Ja sano ilmoittaako ohjelma sitten "Syntax error" vai "Subprogram not defined"?
"Syntax Error"
Siinä tapauksessa (ellen aivan väärässä ole) QBasic ei ole edes ladannut tekemääsi kirjastoa, koska muuten se ilmottaisi "Subprogram not defined" (siis DECLARE-käskyn puuttumisen takia, ei tietenkään muuten), mutta koska se sanoo "Syntax error", kirjasto ei ole latautunut. Kokeilepa luoda pikakuvake QB:stäsi ja muokkaa sitten sen komentoriviä niin, että se lataa kirjaston ja käynnistä QB sitten pikakuvakkeesta.
Hehe. taisin ymmärtää väärin :)... kirjotin pelkkä "SUBI", mutta, kun kirjottaa "call subi", niin se sanoo "Subprogram not defined".. *lyö päätään seinään* eli onko siinä declaressa jotain vikaa?
Totta kai se sitten sanoo, että "Subprogram not defined" koska jos pistät CALL:n, se on ihan varma että tarkoitat aliohjelmaa. Mutta kyllä se toimii ilman CALL-käskyä JOS se kirjasto on latautunut, mutta jos se ilman CALL:ia sanoo "Syntax error", kirjasto ei ole latautunut. Jos tuo neuvoni ei toiminut niin en kyllä sitten tiedä, mikä on pielessä.
Selvä. Mutta en ymmärtänyt tuota ohjetta. pikakuvake tehty; mutta miten mun pitää muuttaa sitä komentoriviä? se on nyt "\QBX /L SUBI.QLB" ja miten saan sen kirjaston suoraan johonkin ohjelmaan?
C:\QB71\qbx.exe /L kirjasto.qlb
Eli siis tarkka polku QB:n käynnistämiseen ja sit vaan perään "/L kirjasto.qlb".
No jos pikakuvakkeen komentorivillä on tuo "\QBX /L SUBI.QLB" niin pikakuvakkeesta käynnistämällä kirjastonkin tulisi lautautua ja sitten voit käyttää kirjaston aliohjelmia. Tai siis... helskutti vieköhön, tajusin juuri mitä taisit käsittää väärin. Eli siis ei sinun pidä kutsua sitä kirjastoa vaan kirjastossa olevia aliohjelmia eli Subeja. Vai olitko käsittänyt tämän näin...?
HOORAY!!!! :D:D
En tiedä mitä tein toisin, mutta nyt tämä toimii! :P
noniin. miten mä saan ladattua tuon kirjaston suoraan johonkin ohjelmaan, minkä olen tehnyt?
No kun kirjasto on ladattu, niin sitten yksinkertaisesti avaat QB:llä tekemäsi ohjelman ja nyt kirjaston aliohjelmat ovat tuonkin ohjelman käytössä. Jos tarkoitat, miten kirjaston saa liitettyä mukaan EXE:een niin sitä en tiedä.
Jeps. nyt saan varmasti mun seikkailupelin turvallisesti valmiiks ;). kiitti!
Aihe on jo aika vanha, joten et voi enää vastata siihen.