C # вызов C ++ DLL, как отладить нарушение прав доступа?Полностью работал на Ubuntu, но не Windows - PullRequest
0 голосов
/ 26 октября 2018

У меня был код C ++, скомпилированный в DLL на Ubuntu. Затем я также назвал это с помощью C # в Ubuntu. Все работало великолепно. Затем ту же C ++ DLL, которую я кросс-компилировал для Windows, используя MSYS2 / MING64

Теперь, каждый раз, когда я использую один и тот же код C # для его вызова, я получаю:

The program '[1140] Textpr.exe' has exited with code -1073741819 (0xc0000005) 'Access violation'.

И это сводит меня с ума. У меня нет трассировки стека, отмечая, что мое тестовое консольное приложение C # просто существует. Код работал на Ubutu просто отлично, может ли быть так, что для Windows требуется что-то дополнительное, например, другие правила Marshalling или что-то в этом роде? Как это отладить? У меня не может быть отладочных символов dll, так как mingw не может собрать их для окон. Есть другие идеи?

...