VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

呼叫.dll 中之函數,為什麼 偶而會出現呼叫 dll 例外錯誤 ?

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
david50



註冊時間: 2005-03-08
文章: 22


第 1 樓

發表發表於: 星期一 四月 04, 2005 3:25 pm    文章主題: 呼叫.dll 中之函數,為什麼 偶而會出現呼叫 dll 例外錯誤 ? 引言回覆

呼叫.dll 中之函數,為什麼 偶而會出現呼叫 dll 例外錯誤 ?
回頂端
檢視會員個人資料 發送私人訊息
bigear



註冊時間: 2004-12-19
文章: 162
來自: 網路的另一端

第 2 樓

發表發表於: 星期一 四月 04, 2005 4:51 pm    文章主題: 引言回覆

我遇到的狀況是這樣的,但不表示全部都這樣

使用 XP 的作業系統
XP 本身就有該 DLL 而程式中所呼叫的 DLL 不是 XP 本身的 DLL
解決方法就是直接引用 XP 本身的 DLL

_________________
以上淺見,歡迎批評指教
________________________________________________
山不轉路轉,路不轉人轉,人不轉頭轉,頭不轉眼睛轉,眼睛不轉眼珠轉
眼珠再不轉就去睡覺,睡起來繼續轉
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 參觀發表人的個人網站
david50



註冊時間: 2005-03-08
文章: 22


第 3 樓

發表發表於: 星期一 四月 18, 2005 12:42 pm    文章主題: 引言回覆

如何 "直接引用 XP 本身的 DLL"?
回頂端
檢視會員個人資料 發送私人訊息
bigear



註冊時間: 2004-12-19
文章: 162
來自: 網路的另一端

第 4 樓

發表發表於: 星期一 四月 18, 2005 5:59 pm    文章主題: 引言回覆

我敘述一下我遇到的狀況

DECLARE INTEGER InternetOpen IN wininet String ,long,String,String,long
DECLARE INTEGER InternetConnect IN wininet long,String,integer,String,String,long,long,long
DECLARE INTEGER InternetCloseHandle IN wininet Long
DECLARE INTEGER FtpGetCurrentDirectory IN wininet Long,string,long
DECLARE INTEGER FtpSetCurrentDirectory IN wininet Long,string
DECLARE INTEGER FtpGetFile IN wininet long,String,String,long,long,long,long
DECLARE INTEGER FtpPutFile IN wininet long,String,String,long,long

xp 原本就有 wininet.dll
win98 卻沒有 wininet.dll
我的習慣是將 wininet.dll 放在和執行檔同一層目錄下
在 win98 底下執行沒問題,但是只要在 xp 底下執行
就發生了和你一樣的錯誤訊息
我的解決方法就是將執行檔同一層目錄下 wininet.dll 刪除
這樣系統會直接引用 system32 底下的 wininet.dll
就是這樣

_________________
以上淺見,歡迎批評指教
________________________________________________
山不轉路轉,路不轉人轉,人不轉頭轉,頭不轉眼睛轉,眼睛不轉眼珠轉
眼珠再不轉就去睡覺,睡起來繼續轉
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 參觀發表人的個人網站
syntech



註冊時間: 2003-05-16
文章: 4249
來自: Taipei,Taiwan

第 5 樓

發表發表於: 星期二 四月 19, 2005 10:20 am    文章主題: 引言回覆

傳說中的 "DLL HELL" .....

因為 DLL版本不一致導致OS運作異常.

不過,那不應該會"偶爾"異常吧!

如果是3rd party 的 函式庫應該要檢查是否能正確呼叫吧,
正確 load dll,
如果是自己寫的,也不忘了檢查程式是否會造成資源(memory)遺失.

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
david50



註冊時間: 2005-03-08
文章: 22


第 6 樓

發表發表於: 星期五 四月 22, 2005 11:50 am    文章主題: 引言回覆

bigear 寫到:
我敘述一下我遇到的狀況

DECLARE INTEGER InternetOpen IN wininet String ,long,String,String,long
DECLARE INTEGER InternetConnect IN wininet long,String,integer,String,String,long,long,long
DECLARE INTEGER InternetCloseHandle IN wininet Long
DECLARE INTEGER FtpGetCurrentDirectory IN wininet Long,string,long
DECLARE INTEGER FtpSetCurrentDirectory IN wininet Long,string
DECLARE INTEGER FtpGetFile IN wininet long,String,String,long,long,long,long
DECLARE INTEGER FtpPutFile IN wininet long,String,String,long,long

xp 原本就有 wininet.dll
win98 卻沒有 wininet.dll
我的習慣是將 wininet.dll 放在和執行檔同一層目錄下
在 win98 底下執行沒問題,但是只要在 xp 底下執行
就發生了和你一樣的錯誤訊息
我的解決方法就是將執行檔同一層目錄下 wininet.dll 刪除
這樣系統會直接引用 system32 底下的 wininet.dll
就是這樣

我懂了,謝謝.
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作