У меня есть два процесса Client и Server, один из них генерирует Bitmap мне нужно его передать другому процессу. Я создал между ними FileMapping
Первый процесс Server
HANDLE hFileMapping = CreateFileMapping(nullptr, nullptr, PAGE_READWRITE, 0, sizeof(Preview), "Local\\shared-memory");
if (!hFileMapping) printf("CreateFileMapping: Error %ld\n", GetLastError());
LPVOID lpFileMap = MapViewOfFile(hFileMapping, FILE_MAP_READ | FILE_MAP_WRITE, 0, 0, 0);
if (!lpFileMap) printf("MapViewOfFile: Error %ld\n", GetLastError());
Второй процесс Client
HANDLE hFileMapping = OpenFileMapping(FILE_MAP_READ | FILE_MAP_WRITE, FALSE, "Local\\shared-memory");
LPVOID lpFileMap = MapViewOfFile(hFileMapping, FILE_MAP_READ | FILE_MAP_WRITE, 0, 0, 0);
Во втором процессе (Client) получаю скриншот рабочего стола
HDC desktopHdc = GetDC(NULL);
HDC memHdc = CreateCompatibleDC(desktopHdc);
HBITMAP bitmap;
BITMAPINFO bmi;
ZeroMemory(&bmi, sizeof(BITMAPINFO));
bmi.bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
bmi.bmiHeader.biWidth = 800;
bmi.bmiHeader.biHeight = 600;
bmi.bmiHeader.biPlanes = 1;
bmi.bmiHeader.biBitCount = 32;
char* bmbits;
bitmap = CreateDIBSection(memHdc, &bmi, DIB_RGB_COLORS, (void**)&bmbits, hFileMapping, 0);
//Как мне праивльно записать изображение в секцию здесь?
GetBitmapBits(bitmap, 800 * 600 * 3, bmbits);
В первом процессе (Server) пытаюсь его получить но получаю чёрный экран.
HDC windowHdc = GetDC(NULL);
HDC memHdc = CreateCompatibleDC(windowHdc);
HBITMAP restore;
BITMAPINFO bmi;
ZeroMemory(&bmi, sizeof(BITMAPINFO));
bmi.bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
bmi.bmiHeader.biWidth = 800;
bmi.bmiHeader.biHeight = 600;
bmi.bmiHeader.biPlanes = 1;
bmi.bmiHeader.biBitCount = 32;
char* buffer;
HBITMAP bitmap = CreateDIBSection(windowHdc, &bmi, DIB_RGB_COLORS, (void**)&buffer, hFileMapping, 0);
//Как мне праивльно получить изображение из секции здесь?
SetBitmapBits(bitmap, 800 * 600 * 3, buffer);
Виртуальный выделенный сервер (VDS) становится отличным выбором
Не могу разобраться в том, как работает drag & drop в qt-ишной model-viewМне нужно реализовать перетаскивание между двумя view (QTreeView) в которых находятся...
Нужно запретить редактирование JTable, чтобы при нажатие на конкретную строку она только выделялась и можно было обработать слушателем это...
Не могу понять почему метод say(String something) не возвращает "Ты чё не знаешь, что рыбы не разговаривают?"