顯示具有 C#入門 標籤的文章。 顯示所有文章
顯示具有 C#入門 標籤的文章。 顯示所有文章

2023年1月13日 星期五

C# 使用Visual Studio自動版號控制範例

站上有不少程式語言的教學,

之前介紹了多國語言的設置,

以及檔案的處理,

今天則是要來介紹

C# 使用Visual Studio自動版號控制範例

在 Visual Studio 的版號資訊中,

使用的版號格式為

major.minor.build.revision 也就是

主要版號.次要版號.組建編號.修訂編號

在 Visual Studio 提供了一個簡便快速的自動版號控制,

讓每一次釋出的版本有所有不同,

不過主要版號與次要版號依舊得手動更改或者透過第三方程式才能自動修改。


首先必須在專案中找到AssemblyInfo.cs,

若沒有的話自行在專案中新增一個,

在底下影片中有教大家如何新增一個組件資訊檔,

並且將其中的 AssemblyFileVersion 註解,

並將 AssemblyVersion改為 1.0.*,

基本上 Visual Studio 就會自動控制組建編號與修訂編號


有時候改完萬用字元的版號,

在編譯的時候會出現上述的錯誤訊息,

這時就得去專案的資料夾中找到附檔名為 csproj 的專案檔案,

將其中的 Deterministic 改為 false,

重新編譯即可


重新編譯之後,

就可以在程式的詳細資料中,

找到版本資訊,

Visual Studio 會以2000/1/1 至今天的日期的天數

從 00:00 至編譯時間的秒數 / 2 做為修訂的編號





至於要如何取得這個版號呢,

可使用

System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();

就能夠獲取版本資訊來使用

底下附上影片教學

還沒訂閱的朋友記得點選影片右下角的訂閱來支持頻道



2023年1月7日 星期六

C#入門 執行程式出現"要求的作業需要提升的權限"

在 Vista 之後的作業系統支援了 UAC 的功能,

在執行程式的時候,

有時會遇到需要較高權限的提示,

此次就是要教大家

C#入門:執行程式出現"要求的作業需要提升的權限"

當執行設計的程式出現 "要求的作業需要提升的權限",

表示使用到的功能需要管理者權限,


在 C#做法中除了撰寫程式碼讓程式以管理員運行之外,

就是出現提示視窗要求使用者同意授予管理者權限,

首先第一步到專案總管中加入項目,


新增一個"應用程式資訊清單檔案",

也就是 app.manifest 這個檔案,

若專案中本身就有這個檔案的話就不需要再次新增


並在專案屬性設定中找到"應用程式",

將"資訊清單"指定由此檔案來管理


接著打開 app.manifest ,

這邊註解有提到若要改變控制層級必須設定為其中一種:

  • 一般身分開啟
level="asInvoker" (預設是這種)

  • 進階身分開啟
level="requireAdministrator"

  • 最高身份開啟
level="highestAvailable"

此處範例中選擇將其改為

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />



這樣一來,

程式執行的時候會詢問使用者是否給予權限,

同意的話就能讓這個程式正常執行

2022年10月14日 星期五

C# 使用 OpenFileDialog 開啟檔案

學習程式語言最重要的就是實踐,

只要實際操作演練過需要的功能,

就能夠從中學到經驗,

上次的 C# 教學介紹了使用主要 Interop 元件存取Excel 檔案,

今天則是要來介紹

C# 使用 OpenFileDialog 開啟檔案

其實微軟官方網站說明文件都寫得相當的詳細,

不愧為長久以來的軟體巨擘,

對於今天的 OpenFileDialog 當然也有詳細的說明與範例,

有興趣的人可以自行前往下載研究


要使用 OpenFileDialog 要先引入命名空間,

在 C# 程式中寫做:

using System.Windows.Forms;

這樣就能夠使用 OpenFileDialog這個類別的各種屬性與方法,

當然詳細的資訊在官方網站都有說明,

此處範例程式僅以當下的使用情境呼叫相應的屬性與方法


Multiselect ,以布林值表示 ( true 或者 false),決定 OpenFileDialog 是否允許選取多個檔案

Title,作為字串,用以顯示 OpenFileDialog 的標題,如同下圖所示

Filter,可針對特定的副檔名做篩選,方便使用者選擇該類型的檔案

InitialDirectory,決定開啟 OpenFileDialog 的初始資料夾

最後當 ShowDialog 回傳 DialogResult.OK ( 選好檔案點選開啟按鈕 ),

就可藉由 FileName 取得完整的檔案路徑與名稱


當然得知檔案的正確位置與名稱之後,

就能夠透過 FileStream 開啟檔案來存取,

至於要做些什麼事情,

就交由程式設計師根據需求來撰寫相關程式碼囉,

這就不在今天的主題中,

當然還沒有訂閱的朋友,

記得點選影片右下角的訂閱來支持頻道