Voiko Visual basic kuutosella tehdä jotenkin omia apeja?
Mitä tarkoitat?
No ei tietenkään voi. Windows API on oma kirjastonsa, etkä voi sinne ruveta mitään lisäilemään. Omia kirjastoja kyllä luultavasti pystyy tekemään, joita voi kutsua samalla tavalla kuin APEja. (toivottavasti en puhunut täyttä soopaa, kun en kovin APEihin ole perehtynyt)
Joo, omia DLL-kirjastoja voi tehdä, ja voihan niitä vaikka nimittää APEiksi, jos haluaa. Valitse aloitusvalikosta Standard EXEn sijaan ActiveX DLL, niin pääset tekemään DLL-kirjastoa. Kirjaston käyttäminen on kuitenkin vähän erilaista kuin WinAPIn funktioiden: se valitaan käyttöön Project-valikon References-kohdasta.
Jos nyt taas kerran ollaan ihan tarkkoja ollaan niin onhan Windows API:kin dll-kirjasto samaan tapaan kuin mikä tahansa muukin dll.
API-nimitys hän tarkoittaa Application Programming Interface, eli tietyn ohjelman (tai laitteen) ohjelmointi kirjastoa. Esim. Haupage API on kasa luokkakirjastoja samoin kuin Nero API on vain yksi dll nimeltään "Nero Type Library".
Erona tavalliselle luokkakirjastolle on lähinnä sen käyttötarkoitus joka suuntautuu yhteen laajemmalti käytettyyn ohjelmistoon tai laitteeseen. Jos näin ei ole, vaan projekti lähinnä käyttää esim. järjestelmän perustoiminnallisuutta luoden olemassa olevalle toiminnolle uuden käyttötavan - sitä kutsutaan wrapperiksi.
Eli vastauksen topickiin on (ettei nyt ihan offtopiciksi mene) Kyllä, VB:llä voi kirjoittaa API-kirjastoja kunhan vain keksit mille sen API:n aiot kirjoittaa...
Ja VB6:llahan ei voi tehdä "oikeita" DLL:iä, vaan "vain" ActiveX DLL:iä.
Miten muuten nuo eroavat kuin päätteistä: .ocx .dll?
ActiveX OCX on kontrolli, joka yleensä liitetään projektiin Form-lomakkeelle. omaksi kuvakkeekseen. Voi olla vaikka erillainen Command-painike.
DLL on yleensä vain funktioita.
Korjatkaa jos olen väärässä.... ;)
Et kai väärässä oo, oisin mäki noin selittäny P:
Voisko joku laittaa jonkun api search enginin url:n
Blaze - ikävä sanoa, että nyt kyllä olet väärässä: Kyllä VB6:lla voit tehdä "ihan oikeita" dll-kirjastoja - niiden ei tarvitse olla ActiveX DLL:iä.
Edit: Tarkoitan siis, että ActiveX Dll on oikea Dll kirjasto siinä missä C++:lla kirjoitettukin. Itse asiassa ActiveX dll on monikäyttöisempi (mm.MTS-yhteensopiva), kun taas C++:lla kirjoitettuna (VC/C++6) kirjoitettuna joudut käsin hoitamaan poolauksen...
Antti kirjoitti:
Blaze - ikävä sanoa, että nyt kyllä olet väärässä: Kyllä VB6:lla voit tehdä "ihan oikeita" dll-kirjastoja - niiden ei tarvitse olla ActiveX DLL:iä.
Hmph, muistelisin lukeneeni näin jostain (MSDN:stä?), mutta ilmeisesti sitten muistan väärin. Pahoitteluni väärän informaation levittämisestä.
pipopää kirjoitti:
Voisko joku laittaa jonkun api search enginin url:n
Tähän olen kerännyt API-Käskyjä. Sekä Vastine VB.NET. Jokaisesta APIsta linkki nettiin ko. function esittelyyn.
EXEL-tiedosto. http://personal.inet.fi/koti/joresoft/DownLoad/
Word-tiedosto.
http://personal.inet.fi/koti/joresoft/DownLoad/
Kaikki tiedot löytyy tietty.
http://www.mentalis.org/apilist/apilist.php
Aihe on jo aika vanha, joten et voi enää vastata siihen.