LuaInterface가 바보이기 때문에 리눅스에서 실행되는 것처럼 보이기 때문에 (실제로 더 유용하다면 the relevant SO thread 참조), 거기에 제안 된 것을하기로 결정했습니다. . 지금 자신의 Lua511.LuaDLL를 호스팅하는 편집 LuaInterface.dll (함께LuaInterface를 "수정"하는 동안 DllNotFoundException이 발생하지만 그 이유는 무엇입니까?
//For example, like this:
[DllImport("lua51")]
public static extern IntPtr luaL_newstate();
: 나는 lua51에서 각각의 같이 DllImport으로 매 공공 기능을 대체 LuaInterface에서 사용하는을 반영하기 위해 내 자신의 Lua511.LuaDLL 클래스를 썼다) 및 내 게임의 시작 폴더에 순수 네이티브는 Win32 lua51.dll, 어떻게 든 LuaInterface의 시도를 초기화 할 때 DllNotFoundException를 얻을 :
public Lua()
{
luaState = LuaDLL.luaL_newstate(); //right there, right then.
...
당연히, 바로 거기 DLL로는 그렇게해서는 안 오른쪽 ? 이상하게도 lua51.dll의 망가진 .Net 버전을 다시 사용하면 EntryPointNotFoundException이 대신 발생합니다. boggles.
그럼 어떻게 됐어?
관련 소스 코드 : Lua511.cs, LuaInterface 프로젝트에 놓은 다음 대체 할 수 있도록 참조를 제거했습니다.
편집 : 이걸 스크류, 대안을 찾아 볼게. 또는 내 자신의 롤. 아니면 리눅스 호환성에 신경 쓰지 마라.
아주 인상적. 오늘 나중에 이것 좀 봐야 겠어. – Kawa