Задать вопрос
@MaximChistov
Программист на Java и PHP

Как использовать ресурсные win dll без WinAPI на C#?

Есть приложение под винду на С#. Нужно портировать его на другие ОС(iOS/Android/WP/Linux/OS X), но есть одна проблема - данные оно хранит в ресурсных dll(unmanaged), вся работа с которыми ведется с помощью функций WinAPI(LoadLibrary(...),FindResource(...) и тд) Очевидно, что в таком виде код перенести невозможно, ведь в .NET рантаймах под другие платформы точно нету этого функционала. Но ведь по сути эти dll - просто файлы с данными. Может кто-то в курсе, как можно работать с ними без WinAPI? Библиотека какая, или еще что...
  • Вопрос задан
  • 2692 просмотра
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
grigorylug
@grigorylug
если приложение построено верно, т.е. отвечает практикам разработки, таким как solid, dry, kiss и вообще здравому смыслу, то за операции сохранения данных в ресурсы должна отвечать отдельная абстракция, поэтому не вижу проблем на других платформах определить эту абстракцию по другому, и сделать хранение любым удобным образом - в xml, бинарном виде, базе данных или на удаленном сервере.
Ответ написан
Комментировать
BasmanovDaniil
@BasmanovDaniil
Геймдизайнер-телепат
https://msdn.microsoft.com/en-us/library/aa984739.aspx
Можете написать обёртку с помощью DllImport, но компилить библиотеку под целевую платформу всё равно скорее всего придётся.
Ответ написан
rdifb0
@rdifb0
Программист, реалист
Как по мне так проще вытащить из dll данные и сохранить в более кроссплатформенном виде. В каком именно уже исходить и типа ресурсов какие там хранятся.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы