C# 專案引用 Excel 找不到類型/命名空間 — 解決方案
問題 專案 A 正常引用 Microsoft Excel 11.0 Object Library 可使用 Excel 命名空間。專案 B 同樣引用卻提示:「找不
C# string 類型賦值問題 (1) — 參考型別卻表現像值型別
現象 string s1 = original string; string s2 = s1; // 注意:此時會建立新物件嗎? Console.WriteL
C# string 類型賦值問題 (2) — 字串駐留與 Equals 多載
Equals 三個多載 public override bool Equals(object obj); public bool Equals(string
C# 啟動本地或遠端進程 — Process.Start 範例
Process 類別啟動進程 System.Diagnostics.Process 提供豐富的進程啟動控制。 基本範例:啟動 IE 開啟指定網址 using
C# 程式碼關閉/重啟/登出 Windows XP
原理:調整進程權杖權限後呼叫 ExitWindowsEx 需開啟 SE_SHUTDOWN_NAME 權限,再呼叫 ExitWindowsEx 配合旗標實現不同操
C# 呼叫帶輸入/輸出參數的預存程序 — 登入驗證範例
資料庫預存程序 (SQL Server) USE Hotel IF EXISTS (SELECT * FROM sysobjects WHERE name=p
C# 取得對方 IP 位址 (已知一 IP 反查主機所有 IP)
情境 區域網路中某電腦有多張網卡 (多個 IP),已知其中一個 IP,欲取得該主機所有解析到的 IP 位址。 程式碼 string knownIP = 19
C# 取得本機 MAC 位址、CPU 序號、硬碟序號
使用 WMI (System.Management) 查詢硬體資訊 1. 取得 MAC 位址 private string GetMac() { s
C# 使用指標高效比較字串 (1) — unsafe 與 fixed 實現
背景 C++ 時代常將字串每 4 位元組轉為 int 比較,一次比較 4 字元。C# 能否做到?答案是肯定的,需解決兩個問題: 在 C# 使用指標,且防止 G
C/C# 托管與非托管代碼變數類型對照表
下表列出 Win32 API (Wtypes.h) 與 C 風格函數常用資料類型,以及對應的 .NET 內建值類型/類別。第三欄為托管代碼對應類型,某些情況可用
C# 使用 FileStream 分段複製大檔案,節省記憶體
分段複製原理 每次讀取/寫入固定大小緩衝區,避免一次性載入整個檔案導致記憶體壓力。本機複製亦可直接用 File.Copy,此處示範手動控制流程。 核心程式
C# 利用鉤子控制滑鼠:限制特定 TextBox 僅允許右鍵複製
需求背景 某 Panel 內的 TextBox 僅允許滑鼠右鍵「複製」功能,且不影響其他 Panel 內的 TextBox。一般做法無法精確攔截特定控制項的滑鼠
C# 實現路徑規劃 (最短路徑) 算法 (1) — 圖模型抽象:Edge 與 Node
場景描述 圖由節點與有向邊構成,每條邊具權值 (代價)。最短路徑算法目標:找出從節點 A 到節點 B 的累積權值最小路徑。參考《C++ 算法——圖算法》。 E
C# 實現路徑規劃 (最短路徑) 算法 (2) — PassedPath 中間路徑記錄
PassedPath:記錄到達某節點的目前最優路徑 _passedIDList; } 欄位語意 CurNodeID:此路徑對應的目標節點 ID。 Wei
C# 實現路徑規劃 (最短路徑) 算法 (4) — RoutePlanner 核心遞迴實現
Dijkstra 演算法核心步驟 建立 PlanCourse 記錄源點到各節點最小權值,初始化:直達邊賦權值,其餘設 double.MaxValue。 選取未
C# 實現 A* 算法 (1) — 節點模型與基礎結構
背景:遊戲尋路與 A* 算法 遊戲地圖常抽象為單元格矩陣,傳統圖論最短路徑演算法 (如 Dijkstra) 不再最適合。A* 算法結合實際代價 G 與啟發式預估
C# 實現 A* 算法 (3) — RoutePlanData 與移動代價設計
移動代價設計:整數化提升效能 直角移動 (上下左右) 代價 = 10,斜向移動代價 = 14 (≈ √2 × 10)。放大 10 倍改用整數運算,避免浮點數效能
C# 實現路徑規劃 (最短路徑) 算法 (3) — PlanCourse 中間結果表
PlanCourse:管理從源節點到各節點的最小權值路徑 演算法過程中需記錄每個節點目前已知的最小權值路徑 (PassedPath),PlanCourse 封裝
extern 關鍵字詳解:跨文件變量聲明與 const 變量鏈接特性rand()、srand()、random()、/dev/urandom 與現代最佳實踐