C # — BadImageFormatException распоряжения

Я работаю на X64

вот мой код:

 ColorFileMapping = CreateFileMapping(new IntPtr(-1), IntPtr.Zero, 0x04, 0, _byteCount, null);
ViewerImageData = MapViewOfFile(ColorFileMapping, 0xF001F, 0, 0, _byteCount);

Однако, когда я пытаюсь избавиться от этого IntPtr, я получаю исключение BadImageFormatException

не могли бы вы объяснить, почему?

public void Dispose()
{
Marshal.FreeHGlobal(ViewerImageData); //here i get the exception
Marshal.FreeHGlobal(ColorFileMapping);
}

0

Решение

Это вы звоните MapViewOfFile на самом деле вызов функции Windows API MapViewOfFile тогда вы не должны относиться к нему как к HGLOBAL. Это указатель на область памяти, и когда вы закончите с этим, вам нужно позвонить UnmapViewOfFile.

Так же HANDLE ты вернулся из CreateFileMapping должен быть закрыт по телефону CloseHandle.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]