2013-05-14 121 views
2

考慮以下幾點: 我們已經安裝了64位的Windows Server哪個midas.dll要使用? 32位的DataSnap位/ 64位服務器

在Embarcadero公司\ RAD Studio在上32位 DataSnap服務器\ 11.00 \ REDIST有2個文件夾:32位和64位,每個都有一個midas.dll。

我們應該把哪個文件放在哪裏?

在windows \ system32或windows \ syswow64中?

回答

4

千萬不要把任何東西放在Windows系統目錄(除非你有非常非常好的理由在那裏寫)。

這是一個非常糟糕的做法(可以追溯到Windows 3.x時代和糟糕的開發人員技能,因爲這些目錄總是在搜索路徑中)只是導致麻煩(即,如果另一個應用程序使用自己的DLL或沒有檢查)。將該DLL放入應用程序文件夾中。它將確保您的應用程序使用正確版本的DLL。或者,如果由於非常非常非常好的原因必須在別處編寫它,請使用其中一種技術將目錄添加到搜索路徑或重定向DLL加載。

Windows系統目錄必須被視爲操作系統專用的。 Windows不禁止這種做法常常使Windows成爲一個緩慢而不穩定的系統。

如果您的應用程序是32位,則需要操作系統的32位DLL regarless。

5

在64位系統:

  • 64位系統目錄名爲System32
  • 32位系統目錄名爲SysWOW64

如果您必須將DLL複製到系統目錄中,請確保您將32位DLL複製到32位系統目錄,將64位DLL複製到64位系統目錄。如果您希望您的應用程序能夠找到DLL,那就很重要。

由於您的代碼是32位,所以您需要使用32位DLL。

但是,由於Windows系統目錄是專用的並且保留供系統使用,因此您應該將DLL放在與可執行文件相同的文件夾中。應用程序不應修改系統目錄。

+0

我有一個可執行文件需要加載midas.dll才能運行。我按照指示[這裏](http://stackoverflow.com/questions/25877533/midas-dll-error-loading-midas- DLL)爲了讓它運行一個微小的更改:regsvr32 C:\ Windows \ Syswow64 \ midas.dll – Chris1804505 2015-06-29 12:17:21