Article View: pl.comp.lang.vbasic
Article #92414Re: vb6 funkcja w dll
From: k p
Date: Wed, 26 Oct 2005 08:04
Date: Wed, 26 Oct 2005 08:04
38 lines
1831 bytes
1831 bytes
k p <wim_ok.SKASUJ@gazeta.pl> napisał(a): > Witam wszystkich. > Czy ktoś wie jak z vb wywołać funkcję z dll-a napisaną w C, > która jako z parametrów ma pointer to pointer? > Przykład: > funkcja w dll-u jest zdefiniowana tak: > int open(char *sPlik, MojTyp **ppPlik) > > Próbowałem to zrobić tak: > uchwyt = open(path, VarPtr(VarPtr(plik))) > gdzie > Dim path As String > Dim plik As Long > Private Declare Function open Lib "lib.dll" (ByVal sPlik As String, _ > ByVal ppPlik As Long) As Long > ale vb nie pozwala na to zwracając błąd "Bad dll calling convention". > > Czy da się w ogóle coś takiego zrobić w vb? > Pozdrawiam. > Udało się. Funkcja w dll-u powinna być zdefiniowana tak: int __stdcall open(char *sPlik, MojTyp **ppPlik) w vb zadeklarowana tak: Private Declare Function open Lib "lib.dll" (ByVal sPlik As String, _ ByRef ppPlik As Long) As Long i wywołana tak: uchwyt = open(path, plik) Pozdrawiam wszystkich. -- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Technical Details
Message-ID:
<djnda3$3o5$1@inews.gazeta.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mailReferences:
<djn8nd$bue$1@inews.gazeta.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail From: "k p" <wim_ok@gazeta.SKASUJ-TO.pl> Newsgroups: pl.comp.lang.vbasic Subject: Re: vb6 funkcja w dll Date: Wed, 26 Oct 2005 08:04:19 +0000 (UTC) Organization: "Portal Gazeta.pl -> http://www.gazeta.pl" Lines: 38 Message-ID: <djnda3$3o5$1@inews.gazeta.pl> References: <djn8nd$bue$1@inews.gazeta.pl> NNTP-Posting-Host: 212.160.172.70 X-Trace: inews.gazeta.pl 1130313859 3845 172.20.26.241 (26 Oct 2005 08:04:19 GMT) X-Complaints-To: usenet@agora.pl NNTP-Posting-Date: Wed, 26 Oct 2005 08:04:19 +0000 (UTC) X-User: wim_ok X-Forwarded-For: 172.20.6.161 X-Remote-IP: 212.160.172.70 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit