<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[c header von vb control]]></title><description><![CDATA[<p>ich hab mir mit MIDL nen header eines vb controls erstellt<br />
wie verwende ich die funktionen im struct?</p>
<p>hier der code:</p>
<pre><code class="language-cpp">BEGIN_INTERFACE

        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            _CK_TFILE_IO __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);

        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            _CK_TFILE_IO __RPC_FAR * This);

        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            _CK_TFILE_IO __RPC_FAR * This);

        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            _CK_TFILE_IO __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);

        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            _CK_TFILE_IO __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);

        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            _CK_TFILE_IO __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);

        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            _CK_TFILE_IO __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/54302/c-header-von-vb-control</link><generator>RSS for Node</generator><lastBuildDate>Mon, 01 Jun 2026 16:49:09 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/54302.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 06 Nov 2003 10:25:45 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to c header von vb control on Thu, 06 Nov 2003 10:26:51 GMT]]></title><description><![CDATA[<p>ich hab mir mit MIDL nen header eines vb controls erstellt<br />
wie verwende ich die funktionen im struct?</p>
<p>hier der code:</p>
<pre><code class="language-cpp">BEGIN_INTERFACE

        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            _CK_TFILE_IO __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);

        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            _CK_TFILE_IO __RPC_FAR * This);

        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            _CK_TFILE_IO __RPC_FAR * This);

        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            _CK_TFILE_IO __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);

        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            _CK_TFILE_IO __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);

        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            _CK_TFILE_IO __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);

        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            _CK_TFILE_IO __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/387888</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/387888</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Thu, 06 Nov 2003 10:26:51 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Thu, 06 Nov 2003 10:30:47 GMT]]></title><description><![CDATA[<p>Soweit ich das erkennen kann, sind das nur IUnknown und IDispatch. Damit wirst du nicht weit kommen. Hast du keine Typbibliothek, die du importieren kannst?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/387890</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/387890</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Thu, 06 Nov 2003 10:30:47 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Thu, 06 Nov 2003 10:38:01 GMT]]></title><description><![CDATA[<p>doch hab ich... aber ich weiss ned wie man tlbs in vc einbaut/verwendet</p>
<p>die eigentlichen funktionen sehen so aus</p>
<pre><code class="language-cpp">/* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenForWriting )( 
            _CK_TFILE_IO __RPC_FAR * This,
            /* [in] */ BSTR sCompleteFilename,
            /* [retval][out] */ long __RPC_FAR *__MIDL_0014);
</code></pre>
<p>quasi</p>
<pre><code class="language-cpp">/* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenForWriting )( 
            zeiger auf ein objekt, das einen zeiger auf eine structinstanz enthält,
            /* [in] */ parameter,
            /* [retval][out] */ rückgabewert;
</code></pre>
<p>ein problem is vorallem die initialisierung des controls... ka wie des richtig geht</p>
]]></description><link>https://www.c-plusplus.net/forum/post/387894</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/387894</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Thu, 06 Nov 2003 10:38:01 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Thu, 06 Nov 2003 10:39:20 GMT]]></title><description><![CDATA[<p>Im Class Wizard:</p>
<p>Register Automation<br />
Add Class -&gt; from a type library</p>
]]></description><link>https://www.c-plusplus.net/forum/post/387897</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/387897</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Thu, 06 Nov 2003 10:39:20 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Thu, 06 Nov 2003 11:13:49 GMT]]></title><description><![CDATA[<p>ok danke erstmal... hat mir sehr geholfen</p>
<p>ich hab die klasse jetzt eingebunden, ne instanz erstellt und eine funktion aufgerufen<br />
die vbfunktion gibt eigentlich immer 0 zurück... in vc kommt aber -85... an<br />
die andern funktionsaufrufe laufen scheinbar auch ins leere</p>
]]></description><link>https://www.c-plusplus.net/forum/post/387929</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/387929</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Thu, 06 Nov 2003 11:13:49 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Thu, 06 Nov 2003 19:59:30 GMT]]></title><description><![CDATA[<p>Sovok schrieb:</p>
<blockquote>
<p>die vbfunktion gibt eigentlich immer 0 zurück... in vc kommt aber -85...</p>
</blockquote>
<p>Wirklich -85 (dezimal)? Das wäre ein eigenartiger Wert für ein HRESULT. Oder kommt da noch was dahinter? Der genaue Wert könnte hilfreich sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/388439</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/388439</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Thu, 06 Nov 2003 19:59:30 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Fri, 07 Nov 2003 07:51:50 GMT]]></title><description><![CDATA[<p>-858993460<br />
bei jedem dieser aufrufe: Warning: attempt to call Invoke with NULL m_lpDispatch!</p>
<p>aber wie setzt ich so ein dispatch ordenlich auf? was is das überhaupt?</p>
<p>die andere möglichkeit(c header) brauch ich übrigends auch noch...<br />
hab sowohl eigene module mit typelib als auch fremde die ich aber beide über vc++ ansprechen muss</p>
]]></description><link>https://www.c-plusplus.net/forum/post/388601</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/388601</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Fri, 07 Nov 2003 07:51:50 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Fri, 07 Nov 2003 08:15:43 GMT]]></title><description><![CDATA[<p>Sovok schrieb:</p>
<blockquote>
<p>-858993460<br />
bei jedem dieser aufrufe: Warning: attempt to call Invoke with NULL m_lpDispatch!</p>
<p>aber wie setzt ich so ein dispatch ordenlich auf?</p>
</blockquote>
<p>Normalerweise mit CreateDispatch. Hast du das gemacht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/388613</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/388613</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Fri, 07 Nov 2003 08:15:43 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Fri, 07 Nov 2003 08:25:02 GMT]]></title><description><![CDATA[<p>juuuhuu funzt... danke</p>
<p>nochmal zurück zu</p>
<pre><code class="language-cpp">/* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenForWriting )(  
            _CK_TFILE_IO __RPC_FAR * This, 
            /* [in] */ BSTR sCompleteFilename, 
            /* [retval][out] */ long __RPC_FAR *__MIDL_0014);
</code></pre>
<p>was muss ich hier zuerst erstellen damit der aufruf klappt?<br />
und was is der erste parameter?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/388619</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/388619</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Fri, 07 Nov 2003 08:25:02 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Fri, 07 Nov 2003 09:39:07 GMT]]></title><description><![CDATA[<p>wie is eigentlich die reihenfolge beim setup?</p>
<p>verfügbar:</p>
<pre><code class="language-cpp">//eigene
typedef struct _FastDicVtbl
interface _FastDic

//system
STDMETHODCALLTYPE __RPC_FAR *QueryInterface
STDMETHODCALLTYPE __RPC_FAR *AddRef
STDMETHODCALLTYPE __RPC_FAR *Release
STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount 
STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo
STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames
STDMETHODCALLTYPE __RPC_FAR *Invoke

//IDS
const IID LIBID_dh_Dictionary = {0x96622ECD,0xB72A,0x49EA,{0x8E,0xDB,0x50,0xC0,0x21,0xAB,0x2C,0x3D}};
const IID IID__FastDic = {0x08CBE937,0xCEB0,0x4A14,{0xA2,0xF7,0x04,0x7D,0x7E,0x58,0x55,0x2D}};
const CLSID CLSID_FastDic = {0x30645B3B,0xE815,0x42C6,{0x9A,0xC8,0x9C,0x3F,0x41,0xC5,0xEF,0x91}};
class DECLSPEC_UUID(&quot;30645B3B-E815-42C6-9AC8-9C3F41C5EF91&quot;)
FastDic;
</code></pre>
<p>der ansatz geht jedenfalls voll daneben</p>
<pre><code class="language-cpp">_FastDic FD;
FD.lpVtbl=new _FastDicVtbl;
void* VPtr=(void*)FD.lpVtbl;

if(S_OK==FD.lpVtbl-&gt;QueryInterface(&amp;FD,IID__FastDic,&amp;VPtr))
     return TRUE;
</code></pre>
<p>mir is nich ganz klar was der genau für daten haben will</p>
]]></description><link>https://www.c-plusplus.net/forum/post/388678</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/388678</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Fri, 07 Nov 2003 09:39:07 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Fri, 07 Nov 2003 09:41:23 GMT]]></title><description><![CDATA[<p>Du kannst COM-Objekte nicht als Autovariablen und auch nicht mit new erstellen. Wenn du die OLE-Wrapperklassen benutzt, die dir der Klassenassistent erstellt, dann musst du CreateDispatch verwenden. Benutzt du COM &quot;einfach so&quot;, brauchst du CoCreateInstance.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/388683</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/388683</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Fri, 07 Nov 2003 09:41:23 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Fri, 07 Nov 2003 10:39:44 GMT]]></title><description><![CDATA[<p>ok cocreateinstance gibt jetzt ok zurück</p>
<pre><code class="language-cpp">CoCreateInstance(CLSID_FastDic,NULL,CLSCTX_ALL,IID__FastDic,(void**)&amp;FD);
</code></pre>
<p>aber wenn ich jetzt ne methode aufrufe stürzts gleich wieder ab<br />
fehlt noch was?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/388754</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/388754</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Fri, 07 Nov 2003 10:39:44 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Fri, 07 Nov 2003 10:55:25 GMT]]></title><description><![CDATA[<p>Was ist FD? Immer noch ein _FastDic-Objekt?</p>
<p>Der letzte Parameter muss die Adresse eines Zeigers auf den Interfacetyp sein, dessen IID du als vierten Parameter übergibst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/388766</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/388766</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Fri, 07 Nov 2003 10:55:25 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Fri, 07 Nov 2003 11:08:44 GMT]]></title><description><![CDATA[<p>dann müsste es doch stimmen oder?</p>
<pre><code class="language-cpp">interface _FastDic
{
     CONST_VTBL struct _FastDicVtbl __RPC_FAR *lpVtbl;
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/388778</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/388778</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Fri, 07 Nov 2003 11:08:44 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Fri, 07 Nov 2003 11:14:30 GMT]]></title><description><![CDATA[<p>Sovok schrieb:</p>
<blockquote>
<pre><code class="language-cpp">interface _FastDic
{
     CONST_VTBL struct _FastDicVtbl __RPC_FAR *lpVtbl;
};
</code></pre>
</blockquote>
<p>Wo hast du eigentlich diese eigenartigen Konstrukte her? So was habe ich noch nie gesehen. Hast du die OLE-Wrapper erstellt oder importierst du die tlb direkt in C++?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/388779</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/388779</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Fri, 07 Nov 2003 11:14:30 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Fri, 07 Nov 2003 11:21:39 GMT]]></title><description><![CDATA[<p>1. ole/com viewer öffnen<br />
2. File-&gt;View TypeLib-&gt;dll/ocx auswähln<br />
3. speichern unter-&gt; dateiname.idl<br />
4. Konsole öffnen-&gt; &quot;MIDL /header dateiname-out.h dateiname-in.idl</p>
<p>und dann erstellt der mir ne .h und ne .c</p>
<p>kennst du n besseren weg? ich hab in dem fall nix ausser die .dll</p>
]]></description><link>https://www.c-plusplus.net/forum/post/388780</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/388780</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Fri, 07 Nov 2003 11:21:39 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Fri, 07 Nov 2003 12:37:56 GMT]]></title><description><![CDATA[<p><em>CoCreateInstance</em><br />
Creates a single <strong>uninitialized</strong> object of the class associated with a specified CLSID</p>
<p>vielleicht muss ichs einfach noch initialisiern... aber wie?!?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/388837</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/388837</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Fri, 07 Nov 2003 12:37:56 GMT</pubDate></item><item><title><![CDATA[Reply to c header von vb control on Fri, 07 Nov 2003 12:59:49 GMT]]></title><description><![CDATA[<p>edit: die exception tritt übrigends in der dispatch.exe auf.<br />
brauch ich noch nen dispatcher wenn ichs mit cocreateinstance erstellt hab?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/388858</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/388858</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Fri, 07 Nov 2003 12:59:49 GMT</pubDate></item></channel></rss>