[Csharp]寄送Gmail使用OAuth2

這是一個desktop application桌面應用程式,主要功能利用Gmail寄送郵件。

首先查看Google文件說明,並使用其範例做修改。

1.開啟Gmail API功能

  1. 使用這個連結 在 Google Developers Console建立一個專案並啟用API, 按繼續,來到憑證頁面
  2. 在增加憑證到您的專案頁面,按取消按鈕。
  3. 在頁面頂部,選擇OAuth同意畫面tab。 選擇一個電子郵件地址,輸入一個產品名稱(如果尚未設置),然後單擊儲存按鈕。
  4. 選擇憑證tab,按下建立憑證按鈕,選擇OAuth用戶端ID
  5. 選擇其它,並輸入一個名稱識別,按下建立按鈕。
  6. 建立完成會顯示您的用戶端ID及用戶端密鑰等資訊,按下確定按鈕。
  7. 按下”下載JSON“圖示,把檔案拉至專案Properties目錄,並設定複制到輸出目錄:一律複製

2.建立一個專案,並利用NuGet封裝管理員(工具->NuGet封裝管理員)來增加參考Google.Apis.Gmail.v1。

3.把文件裡的Example copy到Program.cs取代

Read More

.net使用SQLite支援64元位/32位元

之前有寫過一篇Csharp使用ADO.NET操作SQLite,不過作者好像已經沒在開發新的支援了,使用SQLite上用法還是跟這篇文章一樣的

另外找了一個比較通用的SQLite Runtime Library各種版本的.net framework基本上全都有,而且又分為32位元及64位元,如果只想單獨支援某一個元位時,可以選擇下載含”-bundle“字眼的的連結。

說明:

Precompiled Binaries for 32-bit Windows (.NET Framework 2.0 SP2)

Setups for 32-bit Windows (.NET Framework 2.0 SP2)

一樣是for .net 2.0 SP2,不過Precomplied Binaries版本只有把DLL的動態連結檔,可以直接放到需要的目錄,然後再增加參考,而另一個Setups版本就是可以進行安裝的版本,理論上會裝在C:\programs files目錄下,需要時可以直接參考或copy裡面的DLL來使用。

Read More

[Csharp]Panel上置換元件UserControl

如果不使用MDI介面,而使用SDI的話,在部份在處理完Form的資訊後,均會另開Form或關閉Form,來進行資料的流程,其實也可以在同一個Form裡,利用自己建立的使用者控制項UserControl切換Switch,只需要在panel.Controls.Add或是panel.Controls.Remove就好了,底下是個簡單的範例。

設定二個按鈕,按下第一個按鈕時顯示第一個UserControl,按下第二個按鈕時則顯示第二個使用者控制項UserControl。

PanelControl1

Read More