Updateri

Voit pyytää apua ohjelmointiongelmiin täältä.
Post Reply
mika132
Newcomer
Posts: 30
Joined: Sun Jul 12, 2009 1:31 pm

Updateri

Post by mika132 »

Eli onko CoolBasicillä mahdollista tehdä ns. Updateria? Eli olisi erillinen .exe tiedosto jonka voi avata ja se etsii (jotenkin) tietoa, että onko tullut uutta päivitystä ja jos on kysyy asennetaanko se. Updaterin pitäisi myös katsoa, että jos on tullut päivitys 1.6 ja aikaisempi oli 1.5 ja käyttäjällä on 1.0 niin se asentaa ensin 1.5 päivityksen ja vasta sitten 1.6 päivityksen.

Eli. Jos on mahdollista miten tälläinen toteutetaan? Minulla kun ei ole mitään havaintoa, että mistä edes alottaisi. =)
Business manager - companys mini pack
Tämä on Companys peliin tuleva lisä osa jonka mukana tulee mm.
- Raha pelejä
- Bugi korjauksia
- Yksi botti firma
- Pullon palautus automaatti
- pankki automaatti
Eli kaikkea sälää.
User avatar
esa94
Guru
Posts: 1855
Joined: Tue Sep 04, 2007 5:35 pm

Re: Updateri

Post by esa94 »

mika132 wrote:Eli onko CoolBasicillä mahdollista tehdä ns. Updateria? Eli olisi erillinen .exe tiedosto jonka voi avata ja se etsii (jotenkin) tietoa, että onko tullut uutta päivitystä ja jos on kysyy asennetaanko se. Updaterin pitäisi myös katsoa, että jos on tullut päivitys 1.6 ja aikaisempi oli 1.5 ja käyttäjällä on 1.0 niin se asentaa ensin 1.5 päivityksen ja vasta sitten 1.6 päivityksen.

Eli. Jos on mahdollista miten tälläinen toteutetaan? Minulla kun ei ole mitään havaintoa, että mistä edes alottaisi. =)
Jossain on ihan valmiskin tällainen. cbUpdateria kellään tallella?
mika132
Newcomer
Posts: 30
Joined: Sun Jul 12, 2009 1:31 pm

Re: Updateri

Post by mika132 »

Lähidnpäs sitten toteuttamaan ihan omaa updateria, mutta on yksi pienoinen ongelma. Käytän siis cbNetworkia

Tässä koodi:

Code: Select all

Include "cbNetwork.cb"
FrameLimit 40

Dim rtn As Integer
rtn = HTTPGet("http://www.pelila.com/Update/index.php")
If rtn <> 200 Then MakeError GetNetErrorString( rtn )
HTTPSaveContent("tmp.html")
DeleteFile "tmp.html"
WaitKey
End

otin executen pois, kun tarkoitus olisi se, että Updateri lähettää getillä tuonne eli. se ohjautuu sivulle:
http://www.pelila.com/Update/index.php?ver=100

Ja sivustossa se tarkistetaan esim näin:

Code: Select all

<?php
$vernro=$_GET["ver"];
$viimversio=140;
if ($ver == $viimversio) {
//Lähetetään tieto takaisin CB updaterille, että versio on jo asennettu
} else {
//lähetetään tieto takaisin CB updaterille, että uusi versio löydetty haluatko asentaa.
}
?>
Jos kysymykseen vastataan kyllä lataa updateri uuden sivun muistiin ja sivun osoite on:
http://www.pelila.com/Update/tarkistus.php?ver=100

Code: Select all

<?php
$vernro=$_GET["ver"];
$viimversio=140;

if ($ver==100) {
//heitetään taas tieto CB editorille, että ladataan ensin vanhoja update tiedostoja koska niitä ei ole ladattu ja samassa pitäisi saada CB updaterille annettua käsky että pitää palata automaattisesti takaisin samalle sivulle, koska ladattavaa on jäljellä.
} else if($ver == 140) {
//ladataan ja asennetaan se uusi versio jonka jälkeen Updateri ilmoittaa, että lataukset suoritettu voit sammuttaa updaterin
}

?>


Se mikä tässä on se onglema on se, etten tiedä millä käskyillä voidaan lähettää tietoa tuolla tavalla CB:n ja Internetin kesken ja haluaisinkin apua hieman siihne.
Business manager - companys mini pack
Tämä on Companys peliin tuleva lisä osa jonka mukana tulee mm.
- Raha pelejä
- Bugi korjauksia
- Yksi botti firma
- Pullon palautus automaatti
- pankki automaatti
Eli kaikkea sälää.
User avatar
valscion
Moderator
Moderator
Posts: 1599
Joined: Thu Dec 06, 2007 7:46 pm
Location: Espoo
Contact:

Re: Updateri

Post by valscion »

mika132 wrote:Se mikä tässä on se onglema on se, etten tiedä millä käskyillä voidaan lähettää tietoa tuolla tavalla CB:n ja Internetin kesken ja haluaisinkin apua hieman siihne.
http://vesq.org/filestorage/cbkk/GetHTTPString.CB

Eli tulostat vaan siinä php-koodissa jotain ja luet CB:llä sen palauttaman merkkijonon ja vertaat sitä johonkin haluttuun arvoon.
cbEnchanted, uudelleenkirjoitettu runtime. Uusin versio: 0.4.1 — Nyt myös sorsat GitHubissa!
NetMatch - se kunnon nettimättö-deathmatch! Avoimella lähdekoodilla varustettu
vesalaakso.com
mika132
Newcomer
Posts: 30
Joined: Sun Jul 12, 2009 1:31 pm

Re: Updateri

Post by mika132 »

Nyt en ihan ymmärtänyt. Voisitko heittää jonkun koodi esimerkin?
Business manager - companys mini pack
Tämä on Companys peliin tuleva lisä osa jonka mukana tulee mm.
- Raha pelejä
- Bugi korjauksia
- Yksi botti firma
- Pullon palautus automaatti
- pankki automaatti
Eli kaikkea sälää.
User avatar
esa94
Guru
Posts: 1855
Joined: Tue Sep 04, 2007 5:35 pm

Re: Updateri

Post by esa94 »

Code: Select all

$vernro=$_GET["ver"];
Joten

Code: Select all

rtn = HTTPGet("http://www.pelila.com/Update/index.php?ver=" + Str(versio))
EDIT:

Venttapoo, Pelilä? Eikös se ole matin sivusto?
[/edit]
tuhoojabotti
Advanced Member
Posts: 485
Joined: Tue Aug 28, 2007 3:53 pm
Location: Suomi, Finland
Contact:

Re: Updateri

Post by tuhoojabotti »

Minä kyllä työstin CoolUpdater nimistä vempulaa, mutta onnistuin kadottamaan sen tiedostot jne. Olen kyllä aloittanut uudelleenkirjoituksen, mutta lukio ja muut projektit painaa päälle.. Onnea vain omalle yrityksellesi! :)
Imagedev.tuhoojabotti.com — “Programmer (noun): An organism that turns caffeine into code.”
mika132
Newcomer
Posts: 30
Joined: Sun Jul 12, 2009 1:31 pm

Re: Updateri

Post by mika132 »

Kyllä. Matti on veljeni kuten olen useasti sanonut.. ja muistatte varmasti kun nimeni oli joskus matin veli väärinkääsityksien välttämiseksi.

Kuitenkin asiaan.

Päätin taas pitkästä aikaa Updaterin pariin, mutta sekaiseksi meni. Tämän hetken koodi:

Code: Select all

Include "cbNetwork.cb"
FrameLimit 40
Dim rtn As Integer
rtn = HTTPGet("http://www.pelila.com/Update/update_racer.php?ver=" + versio)
HTTPDownloadState()
If rtn <> 200 Then MakeError GetNetErrorString( rtn )
AddText "Versio: " + Str(versio)
HTTPSaveContent("tmp.html")
DeleteFile "tmp.html"
WaitKey
End

Ongelma on, että tuota ajaessa tulee viestilaatikko jossa lukee vain error ei mitään muuta.

Toinen ongelma on, että en tiedä miten voin lähettää jonkun muuttujan arvon nettisivulta PHP:llä coolbasicille enkä tiedä miten voin lukea coolbasicillä jotain .txt tiedostoa jossa siis olisi nykyinen versio tallennettuna.

Enkä myöskään tiedä mitään funktiota jolla netistä voidaan ladata jotain ja tallentaa johonkin saman tien.

Näihin jos saan ohjeet niin suur kiitos. =)
Business manager - companys mini pack
Tämä on Companys peliin tuleva lisä osa jonka mukana tulee mm.
- Raha pelejä
- Bugi korjauksia
- Yksi botti firma
- Pullon palautus automaatti
- pankki automaatti
Eli kaikkea sälää.
User avatar
valscion
Moderator
Moderator
Posts: 1599
Joined: Thu Dec 06, 2007 7:46 pm
Location: Espoo
Contact:

Re: Updateri

Post by valscion »

mika132 wrote:Toinen ongelma on, että en tiedä miten voin lähettää jonkun muuttujan arvon nettisivulta PHP:llä coolbasicille enkä tiedä miten voin lukea coolbasicillä jotain .txt tiedostoa jossa siis olisi nykyinen versio tallennettuna.

Enkä myöskään tiedä mitään funktiota jolla netistä voidaan ladata jotain ja tallentaa johonkin saman tien.

Näihin jos saan ohjeet niin suur kiitos. =)
http://vesq.org/filestorage/cbkk/GetHTTPString.CB
cbEnchanted, uudelleenkirjoitettu runtime. Uusin versio: 0.4.1 — Nyt myös sorsat GitHubissa!
NetMatch - se kunnon nettimättö-deathmatch! Avoimella lähdekoodilla varustettu
vesalaakso.com
Post Reply