Запись в файл строку по указателю byte*

290
28 мая 2017, 22:22

Доброго времени суток. Есть следующий пример на c++:

void CALLBACK SnapPicRet(LLONG ILoginID, BYTE *pBuf, UINT RevLen, UINT EncodeType, DWORD CmdSerial, LDWORD dwUser)
{
    CCapturePictureDlg *pThis = (CCapturePictureDlg*)dwUser;
    pThis->OnOnePicture(ILoginID,pBuf,RevLen,EncodeType,CmdSerial);
}
void CCapturePictureDlg::OnOnePicture(LONG ILoginID, BYTE *pBuf, UINT RevLen, UINT EncodeType, UINT CmdSerial)
{
    char path[1000];
    int filelen = GetModuleFileName(NULL,path,1000);
    int i = filelen;
    while(path[i]!='\\')
    {
        i--;
    }
    path[i + 1] = '\0';
    CString filepath(path);
    CString filename = "img.JPG";
    CString strfile = filepath + filename;
    char *pFileName = strfile.GetBuffer(200);
    FILE *stream;
    if( (stream = fopen((const char*) pFileName, "wb")) != NULL )
    {
        int numwritten = fwrite( pBuf, sizeof( char ), RevLen, stream );
        fclose( stream );
    }
}

Я пытаюсь реализовать нечто подобное на Python с использованием dll. При попытке получить значение pBuf я получаю строку вида <__main__.LP_c_ubyte object at 0x03EAE800>, вот мой код:

def SnapRev(lLoginID,pBuf,RevLen,EncodeType,CmdSerial,dwUser):
    print(pBuf)
FSETDECCALLBACK = ctypes.CFUNCTYPE(None ,ctypes.c_longlong, ctypes.POINTER(ctypes.c_ubyte), ctypes.c_uint, ctypes.c_uint, ctypes.c_ulong, ctypes.c_ulonglong)
fSetDecCallBack = FSETDECCALLBACK(SnapRev)
dll = ctypes.WinDLL("sdk.dll")
dll.CLIENT_SetSnapRevCallBack(fSetDecCallBack,0)

Как я могу получить значение указателя в виде строки для побайтовой записи в файл?

READ ALSO
Задание элементов массива pi

Задание элементов массива pi

Доброго времени суток, как задать 10 млн чисел после запятой в массиве?

266
Синтаксис for&hellip;in

Синтаксис for…in

Читал учебник в интернете на одном ресурсе и заметил что:

277
Почему не отрабатывает кнопка купить на главной странице магазина?

Почему не отрабатывает кнопка купить на главной странице магазина?

Есть демо интернет-магазин на wordpress+woocommerce (на хостинге поддержка php 56) и его полная итоговая копия

281