差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

下次修改
前次修改
java:jna:dll_search_path [2013/02/24 23:01]
127.0.0.1 外部編輯
java:jna:dll_search_path [2023/06/25 09:48] (目前版本)
行 28: 行 28:
 ===== 結論 ===== ===== 結論 =====
 由以上五個case可以發現:​dll的搜尋路徑是由執行檔路徑開始,接著是system32,最後是工作目錄。對Java而言,啟動jvm都是透過java指令,也就是java_home/​bin/​java.exe執行檔。因此放在java_home/​bin中的dll,會比system32中的優先找到。後來我透過batch檔去執行Debug/​HelloWorld.exe,結果發現搜尋的依據,是根據HelloWorld.exe而非batch檔。不管怎樣包裝,如果是A要去Load B,優先找尋的是A所在的目錄。 由以上五個case可以發現:​dll的搜尋路徑是由執行檔路徑開始,接著是system32,最後是工作目錄。對Java而言,啟動jvm都是透過java指令,也就是java_home/​bin/​java.exe執行檔。因此放在java_home/​bin中的dll,會比system32中的優先找到。後來我透過batch檔去執行Debug/​HelloWorld.exe,結果發現搜尋的依據,是根據HelloWorld.exe而非batch檔。不管怎樣包裝,如果是A要去Load B,優先找尋的是A所在的目錄。
 +
 +=====    =====
 +----
 +\\
 +~~DISQUS~~