1. 程式人生 > 其它 >使用CamFI裝置二次開發,傳輸照片遇到的問題

使用CamFI裝置二次開發,傳輸照片遇到的問題

Q:在ComFi軟體中下載檔案時,一是將檔案轉換為以%2F替換的URL,獲取時檔案會找不到,同時不以%2F替換的url進行獲取資料檔案時,也找不到檔案。

%2F是/ 的轉義字元。

在這裡只能給出解決方案,具體原因筆者也一知半解,只在此記錄:

Step1

在ComFi給出的Demo中,新增配置檔案,方法是 右擊專案->新增->新建項,在Visual C#中選擇 應用程式配置檔案,新建一個配置檔案,寫入內容:(大體意思就是關閉/轉義字元吧)

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
	<uri>
		<schemeSettings>
			<add name="http" genericUriParserOptions="DontUnescapePathDotsAndSlashes" />
		</schemeSettings>
	</uri>
</configuration>

Step2

​ 接下來在ConFI 的Demo 中,直接修改file_added事件的響應函式即可,函式實現了將相機拍攝的照片通過ComFi裝置傳輸到電腦上。

            socket.On("file_added", new Action<object>((filename) =>
            {
                string name = filename.ToString();
                MessageBox.Show("File add:" + name);
                name = System.Web.HttpUtility.UrlEncode(name, System.Text.Encoding.GetEncoding("UTF-8"));
                req = new RestRequest("/raw/" + name);
                req.Credentials = new NetworkCredential("CamFi", "");
                req.Method = Method.GET;
                res = (RestResponse)client.Execute(req);

                MemoryStream ms = new MemoryStream(res.RawBytes);
                FileStream fs = new FileStream("D:\\img\\1.jpg",FileMode.Create);
                ms.WriteTo(fs);
                ms.Close();
                fs.Close();

            }));

照片結果: