Я пытаюсь прочитать изображение курсора из файла dll, соответствующего Visual Basic.Пока что программа может просто извлекать строки и растровые изображения, но она не любит вытягивать курсоры.После извлечения ресурсов программа сохраняет их в файле .resx вместо dll.У меня возникли некоторые проблемы, потому что я не думаю, что файлы .resx поддерживают курсоры напрямую.
Вот что у меня есть:
[DllImport("user32.dll")]
static extern IntPtr LoadCursor(IntPtr hInstance, uint lpCursorName);
[DllImport("kernel32.dll")]
public static extern IntPtr LoadLibrary(string dllToLoad);
var Lib = LoadLibrary("myLib.dll");
IntPtr cRes = LoadCursor(Lib,101);
Cursor c = new Cursor(cRes);
writer.AddResource("cursor_" + 101, c);
Это прекрасно работает с другими файлами, нокогда я пытаюсь сделать это с курсорами, он выдает «InvalidOperationException» и говорит, что формат изображения недопустим.Он фактически загружает дескриптор в Cursor без проблем, но выдает исключение, когда я пытаюсь сохранить его как .resx.Вместо этого я попытался загрузить курсор в виде растрового изображения, но оно просто загружает пустое изображение.CursorConverter также не работает с изображениями.
Так что, если у кого-то есть идеи, как это решить, пожалуйста, дайте мне знать.Спасибо!