Natiivia ilman RTL:ää ja verkkoa

"vanha" koodari

Olen viimeset viisi vuotta ollu aika irtaallaa natiivista koodaamisesta. Javaa, php:tä ja sen semmosta on tullu värkättyä. Nyt aikaa säästääkseni turvaudun yhteisön apuun ;)

Nyt iski halu tehdä pikkusimppeli ohjelma, joka toimii, kun exe:n asentaa koneeseen. Ohjelman tarkotus on tuupata FTP-ptotokollalla tiedostot palvelimelle muutaman tarkistuksen kera.

Imuroin C# ja koodasin pätkän hetkessä, siten, että uploadi kulki omassa säikeessään ja progressbar näytti etenemisen. Heitin tekeleen saman tien roskiin kun testikoneella olis pitäny .net RTL asentaa ja se ei eka yrityksellä menny.

Sama juttu Javan kanssa, en halua että käyttäjät joutuu RTE:n asentamiseen.

Seuraavaksi koitin FreePascal&Lazarusta. Ongelma on FTP protokolla. En löytäny kirjastoa, jolla saisin helposti uploadin niin, että eteneminen olisi hallussa.

C kirjastoja netti on pullollaan, joten kaivataan vinkkiä hyvästä FTP-kirjastosta pascaliin tai ilmasta C/C kääntäjää, jolla saa natiivia exeä aikaan. Eikös Turbo C ole nykyisin ilmanen?

9

312

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Lightweight Networking Library
    • ------------------
    • Niinpä niinkin
    • "vanha" koodari

      Kivasti synty ohjelma pascalilla, vaikka ei vielä toimikkaan. Käyttöliittymä ja toiminnot teidostosiirtoa lukuunottamatta kyllä. Näin, vaikka enemmän olen käyttänyt sitä liki 20-vuotta sitten ;)

      Lazarus( free pascal) on kyllä hieno peli yhteisötuotteeksi!

      Kokeilin synapsea, mutta äkkiseltään siitä ei ole riittävästi hookkeja seurata FTP-siirron etenemistä.
      Lightweight Networking Library taas olisi muuten loistava (metodit periaatetasolla), mutta jostain syystä vaikka kutsut menee läpi ja funktioiden paluuarvot on oikeita (True), mitään ei siirry.

      Ei ole ollut riittävästi aikaa ja nytkin tulevat illat ja viikonloppu ei mahdollista koodikynän esillenostoa ;(

      • LNet

        Ehkäpä asiaa kannattaisi kysyä suoraan "Lightweight Networking Library":n tekijöiltä.
        Ainahan voi olla niin että johonkin on jäänyt pieni virhe
        tai sitten ei ole huomioitu tuontapaista käyttöä (tai sitten se on ajateltu tehtäväksi jotenkin muuten). Kaikenlainen (testi)palaute on hyödyksi!


        Kerro lisää kokemuksistasi!


    • hemmoit

      On se että joudut otamaan paljon kamaa mukaan joko staatisesti tai dynaamisesti. sama koskee c builderia.

      ja uusiman turbon saat täältä:

      http://www.turboexplorer.com/cpp

      eclipse cdt on myös pätevä vaihtoehto....

      • Delphikoodari..

        Minä taas tykkään siitä, että Delphillä saa tehtyä pelkän exen ja se toimii koneessa kuin koneessa, kunhan Windows on alla :) Toki se tietty riippuu softasta, miten sen tekee, mutta yleensä ei tarvi pelleillä ylimmääräisten dll-kirjastojen kanssa :)

        Visual Basicin kanssa en ole ollut paljon tekemisissä ja kun jouduin siirtämään työkaverin tekemän VB-softan koneelleni, niin heti tuli läjä virheilmoituksia, että se puuttuu ja se puuttuu...aaah!


      • Niinpä niin

        Väitit:
        "Delphin ongelma on se että joudut otamaan paljon kamaa mukaan joko staatisesti tai dynaamisesti."

        No tuo ei ihan pidä paikkaansa. Väitteesi on totta peruskoodarin näkökulmasta katsottuna. Tai jos ajattelee pääsevänsä helpolla niin tuo pitää paikkansa!

        Toisaalta pitää kysyä onko tuo tosiaakin niin suuri ongelma että
        kannattaa tutkia muita ratkaisuja (Jokaisella ratkaisulla on omat heikkoutensa)!


    • Mika0800

      FTP Delphillä

      tähän löytyy useitakin ratkaisuja.

      Ensin valmiita aliohjelma/komponenttikirjastoja:

      ICS - Internet Component Suite (by Francois Piette)

      Indy (by Kudzu)

      Ararat Synapse

      ja sitten, vaikka ei olekaan valmis komponentti, niin tämä saattaa olla silti helpoin ratkaisu

      Wininet API.

      delphikoodiin:

      uses
      WinInet;

      ja dokumentaatiota löytyy MSDN:stä

      esim:

      InternetOpen

      InternetOpenURL

      tuolla WinInet API:lla voi helposti toteuttaa vaikkapa tällaisen:

      type

      TFTPWriteOnlyStream = class(TStream)

      constructor Create(FtpServerName, FtpPathName, FtpUsername, FtpPassWord : String);

      procedure Write(const Buffer; BufLen:Integer):Integer;

      end;

      Tuo on sikäli tyylikäs ratkaisu, että tällöin voi helposti uploadata tiedoston kopioimalla streamista toiseen...

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Trump muka öljyn takia Venezuelaan? Pelkää mustamaalausta

      Kertokaapa mistä tuollainen uutisankka on saanut alkunsta? Näyttäkääpä ne alkuperäiset lähteet, minä en löytänyt mitään
      Maailman menoa
      138
      13192
    2. Kun Arman Alizad puolusti hiihtäjä Vilma Nissilää sanomalla

      "älä välitä sekopäistä Vilma", ja kun siitä kerrottiin täällä, niin sekopäinen mukasuvaitsevainen teki siitä valituksen
      Maailman menoa
      82
      3639
    3. Venezuela on hyvä esimerkki vasemmistolaisten pahuudesta

      Jokainen tietää, että Venezuelassa on pitkään ollut Chavezin ja Maduron vasemmistohallinto. Maan talous on romuttunut,
      Maailman menoa
      95
      2904
    4. Miksei Trump ole kiinnostunut Suomen valloittamisesta?

      Täällähän on enemmän turvetta kuin Norjalla öljyä. Eikö Ttump ole turvenuija?
      Maailman menoa
      36
      1389
    5. Martinalta vahva viesti

      "Suuret unelmat venyttävät sinua, pelottavat vähän ja vievät mukavuusalueen ulkopuolelle. Juuri siellä kasvu tapahtuu. J
      Kotimaiset julkkisjuorut
      275
      1374
    6. Akateemikko Martti Koskenniemi vertaa Trumpia Putiniin

      "-Suomalaisena on syytä olla huolissaan siitä, että Yhdysvallat näin vahvistaa 1800-luvun alkupuolella julistamansa etup
      Maailman menoa
      151
      1319
    7. Jos mies olet oikeasti...?

      Kiinnostunut... Pyydä mut kunnolla treffeille ja laita itsesi likoon. En voi antaa sydäntä jos sinä olet epävarma ja eh
      Ikävä
      115
      1274
    8. Esko Eerikäinen paljastaa järkyttävän muiston lapsuudesta - Isä löytyi alastomana slummista

      Esko Eerikäisen tausta on monikulttuurinen, hän muutti vain 10-vuotiaana yksin kotoaan Kolumbiasta isovanhempiensa luo S
      Suomalaiset julkkikset
      14
      1184
    9. Pitäisikö meidän

      Sitten nähdä ilman että siitä tehdään ongelmaa?
      Ikävä
      81
      1071
    10. Nautitko riidan haastamisesta?

      Itse olen hyvin kärsivällinen ja sopuisa noin yleensä, mutta osaan tarvittaessa olla hankala. Niin metsä vastaa kuin sin
      Sinkut
      205
      979
    Aihe