台灣最大程式設計社群網站
線上人數
1201
 
會員總數:246138
討論主題:189722
歡迎您免費加入會員
討論區列表 >> C# >> c# form 連接 mysql 的執行檔複制到其它台電腦無法執行
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
c# form 連接 mysql 的執行檔複制到其它台電腦無法執行
價值 : 5 QP  點閱數:169 回應數:5
樓主

Afu
門外漢
0 11
156 13
發送站內信


大家好
我想詢問一下
「電腦A」是我開發程式使用的電腦
我有安裝visual studio 2017, mysql workbench

我使用C# Windows Forms 開發了一個專案要連接MySQL

專案內的版本為:
(1) MySql.Data 8.0.22.0
(2) .new framework 4.6.2

我再電腦A開發完之後
複制電腦A的「..\bin\Debug」這個路徑底下的執行檔到桌面來執行
是可以正常執行的
但我把這個執行檔複制到「電腦B」,就不能執行了

請問一下電腦B我要安裝哪些軟體或通訊協定
才可以在電腦B使用製作出來的執行檔呢?
目前「電腦B」沒有安裝任何的軟體

謝謝各位~



搜尋相關Tags的文章: [ c# form mysql ] ,
本篇文章發表於2020-11-16 13:28
1樓
回應

MIS2000 Lab
檢舉此回應
不能執行的原因?錯誤訊息是什麼?

(1) .NET環境與Runtime沒裝?
現在的 Windows 10 / 8 / 7電腦,沒有安裝 .Net Framework的幾乎看不見了吧?
如果每次Windows Update都有乖乖更新,應該都裝好了。

(2)我猜您的 mySQL是裝在A電腦上,對嗎?
所以B電腦執行的時候,可以連上A電腦的mySQL嗎? 防火牆有開放嗎(有阻擋嗎)?

通常會把DB連結字串寫在app.config設定檔裡面。

編譯完成後,在您的執行檔 .exe旁邊還有另一個同名的 .exe.config
可以用文字編輯器打開看一下

您只有執行檔的話,可能無法執行喔。

......以上都是猜的,因為您給的訊息不夠多,請見諒。
本篇文章回覆於2020-11-16 16:58
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

Afu
檢舉此回應
你好~感謝抽空回覆~我在補充一些資訊:

A電腦= 我開發程式使用的電腦;有安裝visual studio 2017, mysql workbench, .new framework 4.6.2

B電腦= 只有安裝.new framework 4.6.2

C主機= 是一台NAS,可以建置MYSQL的資料庫

A、B、C三個裝置,分別位於不同於IP位址底下

我用A連A的DB,可以
我用A連C的DB,可以

但我用B連C的DB,無法連線

錯誤訊息如下:
https://imagizer.imageshack.com/img923/2118/cU4oJW.jpg


你是指要把.exe旁邊另一個同名的 .exe.config
也放到B電腦裡面去嗎?

PS。B電腦需要安裝MYSQL的什麼軟體嗎?例如說通訊協定之類的?
本篇文章回覆於2020-11-16 17:40
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
最有價值解答

春天
檢舉此回應
MySQL.Data.dll此組件(dll)找不到,.Net 會在幾個地方找這個檔案,都找不到就會拋出異常

參考

執行階段如何找出組件

dll尋找順序

所以在A電腦中,以上路徑裡面肯定有一個地方有此dll,也許就是安裝MySql時,會放到Windows目錄下(System32)

而在C電腦中.Net找不到MySQL.Data.dll
本篇文章回覆於2020-11-17 10:11
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

春天
檢舉此回應
抱歉打錯,是B電腦找不到
本篇文章回覆於2020-11-17 10:12
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
作者回應

Afu
檢舉此回應
可以了~
謝謝你的說明~
我將MySQL.Data.dll檔案也複制到B電腦
放在與執行檔相同的路徑底下即可解決
感謝!~
本篇文章回覆於2020-11-17 16:12
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.