Hallo allerseits,
Ich schreibe zur Zeit ein VCL-Programm mit Turbo C++ zur Ansteuerung einer Olympus Digitalkamera. Ich möchte gerne ein geschossenes Bild auf den Rechner herunterladen. Meine Funktion sieht so aus:
Die Datei pic.jpg wird zwar erstellt, ist aber lediglich ein einziges Byte groß. Wo liegt mein Fehler?
Vielen Dank schon mal!
Ich schreibe zur Zeit ein VCL-Programm mit Turbo C++ zur Ansteuerung einer Olympus Digitalkamera. Ich möchte gerne ein geschossenes Bild auf den Rechner herunterladen. Meine Funktion sieht so aus:
Code:
LONG32 DownloadImage(ULONG32 lCam, ULONG32 ulObjHandle)
{
UINT16 uiPicType;
PBYTE pBuff;
LONG32 lRet = 0;
pBuff = new BYTE[nPicSize];
lRet = GetImage(lCam, ulObjHandle, pBuff, nPicSize, 0); // DLL-Funktion
// So würde es mit MFC-CFile laut DLL-Beispielprogramm gehen
/* CFile f("pic.jpg", CFile::modeCreate | CFile::modeWrite);
f.Write(pBuff, nPicSize);
f.Close(); */
FILE * pFile;
pFile = fopen ( "pic.jpg" , "wb" );
fwrite (pBuff , 1 , nPicSize , pFile );
fclose (pFile);
delete [] pBuff;
return lRet;
}
Die Datei pic.jpg wird zwar erstellt, ist aber lediglich ein einziges Byte groß. Wo liegt mein Fehler?
Vielen Dank schon mal!