ciao.
ho il seguente codice:
codice:
for (l=l;l < ((pSA->rgsabound[0]).cElements + (pSA->rgsabound[0]).lLbound); l++) { 
		WCHAR *tmpArr;
		HRESULT hr = S_OK;
		lcount = l;
		hr = SafeArrayGetElement(pSA,lcount,(void *)&tmpArr);
		CString str=CString(tmpArr);
		if(!containsElement(pArray,str) && str != "")
			pArray->Add(str);		
		
	}
tutte le volte che esegue questa istruzione:

hr = SafeArrayGetElement(pSA,lcount,(void *)&tmpArr);
l mi va a 0 e non capisco perchè , penso che sia un problema di puntatori , in quanto è come se la memoria puntata da lcount è la stessa di l ,per via di questa istrzione:

lcount = l;

,non riesco a capir perchè.