作者forewero (木日一)
看板C_Sharp
標題[問題] 如何透過web介面呼叫遠端的winform?
時間Tue Jun 19 11:35:54 2018
這個問題比較奇怪一點
我現在得做一個winform,隨時去接來自browser的請求
會這樣迂迴主要是因為資料權限的問題
但是問題是如果是同一台主機
透過web的button去開指令路徑檔案我想沒甚麼問題
可是這不是同一台
我得透過url去呼叫winform
在這邊有甚麼方法或關鍵字可以提供參考嗎?
謝謝大家
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.222.53.85
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_Sharp/M.1529379357.A.940.html
1F:→ erspicu: 自己在WINFORM寫一個簡單的http service接收web端呼叫 06/19 11:45
2F:→ erspicu: 記得還要處理一下跨區呼叫安全性問題 HEADER要設定一下 06/19 11:46
3F:→ erspicu: 很不理想的架構方式 但沒觀念的PM很愛這些怪招... 06/19 11:47
4F:→ erspicu: 或可以要求把BROWSER用內崁的方式到WINFORM會好處理很多 06/19 11:48
5F:→ kobe8112: 嵌ㄑㄧㄢ 06/19 13:45
6F:推 free112136: 在win form上開iis,結束這回合 06/20 08:34
7F:→ erspicu: 寫個微型http服務不難 但開IIS是啥? 能說一下怎麼開嗎? 06/20 14:10
8F:→ erspicu: 為啥有人很愛把http服務用掛等義iis這種不正確的稱呼來稱 06/20 14:12
9F:推 free112136: 與其自己硬刻一個http協議不如直接開一個iis幫你管理 06/20 20:01
10F:→ free112136: 生命周期與所有安全性的好吧?況且,我的回答與你何干 06/20 20:01
11F:→ free112136: 呢? 06/20 20:01
12F:推 free112136: 還是等一下又要跳出來說http都是走在tcp上,不如直接 06/20 20:03
13F:→ free112136: 用tcp處理呢?這種回答問題與質疑人的方式有對發文的 06/20 20:03
14F:→ free112136: 有啥幫助嗎? 06/20 20:03
15F:→ erspicu: 你是要怎麼把iis開在winform上 我就是在問你這點阿... 06/20 23:05
16F:→ erspicu: 自己推文回人家 WINFORM上開IIS 人家問你怎麼開 06/20 23:09
17F:→ erspicu: 嗆說什麼回答與你何干 什麼在質疑人... 06/20 23:13
18F:→ erspicu: 遇到大神喔?? winform上把人家系統網路服務iis給開過來 06/20 23:19
19F:→ erspicu: 就算你能把IIS開道winform上??XD 怎麼達成invoke? 06/20 23:20
20F:→ erspicu: 然後微型HTTP服務 自己動手寫也沒幾行...如果要達成 06/20 23:21
21F:→ erspicu: 一些最簡易的INVOKE 實作GET就好 不會太多行 06/20 23:22
22F:推 tregfd654321: 吵起來 吵起來 06/20 23:53
24F:→ erspicu: 畢竟目的只為了基本接收呼叫執行某些動作而已 06/20 23:56
25F:推 free112136: 當然是win form主機開iis阿,雞蛋裡挑骨頭是嗎?無聊 06/21 08:42
26F:→ free112136: 耶… 06/21 08:42
27F:→ erspicu: winform並不是一台主機.... 是GUI程式... 06/21 09:39
28F:→ erspicu: 你應該從頭到尾完全誤會這問題在問啥..誤會WINFOFM是啥 06/21 09:40
29F:→ erspicu: 然後如果你的真正意思是直行WINFOM程式的那台電腦系統上 06/21 09:53
30F:→ erspicu: 去安裝IIS 說真的..你還是沒說到怎麼跟WINFORM去INVOKE 06/21 09:53
31F:推 free112136: 我無言了,我是再說win form程式拔出來用成web放在iis 06/21 18:49
32F:→ free112136: 裡 06/21 18:49
33F:→ erspicu: 東西說得越來越誇張...winform程式拔出來改寫成web 06/21 21:24
34F:→ erspicu: 你真的認為WINFORM這種DESKTOP APP任務和功能可以改寫成 06/21 21:25
35F:→ erspicu: WEB網頁去做....也好了... 06/21 21:25
36F:→ erspicu: 然後你是不是表達描述能力有問題? 06/21 21:26
37F:→ erspicu: 幾種作法都跟你說不可行了 還在那邊自己換另一種解釋 06/21 21:28
38F:→ erspicu: 然後如果是WEB端就可以解決掉的工作 原PO何必大費周章 06/21 21:29
39F:→ erspicu: 再多裝一台IIS? 直接原來的主機服務處理掉就好啦 06/21 21:29
40F:→ erspicu: 然後你是不是根本沒寫過winform阿? 為啥要寫成win form? 06/21 21:30
41F:→ erspicu: "winform" or "windows form" 沒啥人寫win form..很怪 06/21 21:36
42F:→ enthos: www.codeproject.com/Articles/9433/Understanding-CGI-wi 06/21 22:04
43F:→ erspicu: 網址貼錯 但知道你說的古早的東西 現在用的很少 而且 06/21 22:15
44F:→ erspicu: DESKTOP APP放到WEB 所能生效達到一般APP操作權限的 06/21 22:17
45F:→ erspicu: 只有當台主機..你可以請客戶開啟一個共同頁面和執行 06/21 22:18
46F:→ erspicu: localservice 達成權限穿透 現在很多讀卡機或是 06/21 22:19
47F:→ erspicu: 跨平台元件都是類似的作法 但你不可能每位客戶人人裝IIS 06/21 22:19
49F:→ konkonchou: 簡單就 web 寫 DB,winform 排程掃 DB 06/23 13:07
50F:→ testPtt: 看起來要做activex 06/23 13:37
謝謝各位的回覆,最後是用Httplistener去接
※ 編輯: forewero (111.185.68.213), 06/29/2018 06:18:34
51F:推 sd016808: 我之前是寫一個WCF server 然後winform一打開就與server 09/21 13:20
52F:→ sd016808: 連線 之後web端透過wcf server轉發給winform 09/21 13:20