19. november 2003 - 09:16Der er
5 kommentarer og 1 løsning
ATL Com programmering
jeg er ved at udarbejde et Com object i c++. Dette skal benyttes fra c# .NET og kalde en c-funktion. Mit første udkast er som følgende: HRESULT convertTimeToString(wchar_t dest, short dstSize, VARIANT time);
Jeg vil give en short (dstSize) og en unsigned long (time) med og have returneret en værdi (dest)
I objektet har en en værdi i form af en char temp[16]. Denne indeholder 8-bit unsigned char og skal returneres i funktionen. Hvordan gøres dette så det virker i .NET? Skal jeg medgive [in] [out] parametre i metodeheaderen? OG hvordan håndters disse så i c# når jeg benytter objektet?
skal lige siges at mit udkast ovenfor er idl-definitonen min c++ kode er som følgende indtil videre - Absolut ikke færdigt. Derfor dette spørgmål..
STDMETHODIMP CtimeToString::convertTimeToString(wchar_t dest, short dstSize, VARIANT time) { // TODO: Add your implementation code here short size = dstSize; unsigned long ltime = time.lVal;
DBL_Time_2_Str bruger (DBL_U8 *)result som buffer, hvori resultatet bliver lagt, og det er denne værdi jeg skal have tilbage i c# Det er som sagt en unsigned 8-bit char
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.