При использовании pinvoke, каков базовый путь для dll, когда указывается только имя dll? - PullRequest
4 голосов
/ 12 мая 2011

Я звоню по следующему номеру из c #:

[DllImport("u3dapi10.dll", CharSet=CharSet.Auto)]
public static extern uint dapiCreateSession(out uint hSession);

Где .NET ищет файл u3dapi10.dll? Раньше это работало, но теперь я получаю исключение DLLNotFoundException.

Файл u3dapi10.dll находится в корневом каталоге проекта. Я попытался скопировать его в каталог bin / debug, чтобы посмотреть, что произойдет, но он также не смог найти его там.

Возможная причина: Может ли это быть вызвано тем, что u3dapi10.dll не является 64-битной совместимой? например Выдается DllNotFoundException, если вы пытаетесь получить доступ к 32-битной dll с 64-битной машины? Или это выдает исключение BadImageFormatException в соответствии с предложением BadImageFormatException при загрузке 32-битной DLL, цель - x86

1 Ответ

3 голосов
...