Salve a tutti,
ho un problema nel passaggio di una stringa ad un oggetto COM.
Ho creato una DLL, con ATL COM di Visual C (Microsoft), e ho necessita' di richiamarla in Visual Basic 6.
Il metodo in questione non puo' prescindere da un passaggio di un parametro di tipo string di VB6(il parametro deve essere necessariamente una stringa); ma in C tale tipo non esiste.
Come risolvo il problema?
Grazie anticipatamente.
Ecco il codice :
Lato Visual Basic:
codice:
Call codiceCrc.CalcolaCrc32("abcdef", lunghezza_stringa, POLYNOMIAL32_CCITT, precondition, refin, refout, xorvalue, risultato)
Lato Visual C:
codice:
CalcolaCrc32(????? buffer, long dwFileSizeLow, long dwPolynomial32, long dwInit32, int bRefIn32, int bRefOut32, long dwXorOut32, long *codice)
{
DWORD i = 0;
DWORD dwCrc = 0x00000000;
BYTE btByte = 0;
dwCrc = dwInit32;
for (i=0; i<dwFileSizeLow; i++)
{
btByte = (Byte) str_buf[i]
if (bRefIn32 == TRUE)
{
btByte = Reflect(btByte);
}
dwCrc = UpdateCrc32(dwCrc, btByte, dwPolynomial32);
}
if (bRefOut32 == TRUE)
{
dwCrc = Reflect(dwCrc);
}
dwCrc = dwCrc ^ dwXorOut32;
*codice = dwCrc;
}