Time of Update: 2018-12-06
C#MD5加密解密2007-03-12 11:35using System.Security.Cryptography;using System.IO; using System.Text; ///MD5加密 public string MD5Encrypt(string pToEncrypt, string sKey) { DESCryptoServiceProvider des = new
Time of Update: 2018-12-06
TreeView組件是由多個類來定義的,TreeView組件是由命名空間"System.Windows.Forms"中的"TreeView"類來定義的,而其中的節點(即Node),是由命名空間"System.Windows.Forms"中的"TreeNode"來定義的。所以當在程式中建立一個TreeView對象,其實只是建立了一個可以放置節點的"容器"。而在這個容器中加入一個節點,其實就是加入了從"TreeNode"類中建立的一個節點對象;同樣刪除一個節點,也就是刪除一個"TreeNode"節點
Time of Update: 2018-12-06
我們知道,C#裡面有選擇檔案的對話方塊控制項,卻沒有選擇檔案夾的對話方塊控制項,不少人為了選擇一個檔案夾只好自己用TreeView類來處理,其實在C#裡面完全不用那麼麻煩,我們可以用C#的FolderNameEditor類的子類FolderBrowser類來實現擷取瀏覽檔案夾對話方塊的功能。下面來看看具體是怎麼實現的。首先建立一個winform的項目,再建立一個類檔案(File->AddNewItem->Class)。因為FolderNameEditor是在System.Window
Time of Update: 2018-12-06
1.單線程的定時器存在很多問題,定時器只是定時把訊息WM_TIMER訪到線程的訊息佇列裡,但並不保證訊息會立即被響應,如果碰巧系統比較忙,訊息可能會在隊列裡放一段時間才被響應,這樣會造成本來應該間隔一段時間發生的訊息連續發生了。2. 。NET FrameWork帶來了新的解決方案Server TimersSystem.Timers.Timer基於伺服器的計時器,位於"工具箱"的“組件”選項卡上Thread
Time of Update: 2018-12-06
不能用控制項,防止播放的時候出現延時,或者能夠提供記憶體方法存放聲音資料。目的就是能夠十分準確的播放聲音,不會出現聲音的延遲現象。轉自http://blog.csdn.net/jery_lee/archive/2004/08/06/67239.aspx[DllImport("Winmm.dll")]
Time of Update: 2018-12-06
在很多情況下,C#程式在應用程式完成後,因為某些線程任務沒完成,所以使用者看到程式視窗已經關了,但開啟工作管理員會發現進程還在,還佔用著資源..有時是因為程式本身沒去處理關閉線程而引起的,但也有很多情況是種種原因導至程式中的線程任務長時間卡住,甚至無法結束,在網路程式中更為嚴重..如遇到這類情況,可以用以下代碼,在程式結束操作完成後徹底的關閉程式,釋放資源using
Time of Update: 2018-12-06
本文轉載至http://www.cnblogs.com/Bird/archive/2007/03/14/675222.htmlAn animated progressbar control with many extras BusyBar How to write a loading circle animation in .NET? Fully Customizable XP Progress Bar (with examples) C# StatusBarProgressPanel
Time of Update: 2018-12-06
C#物件導向設計模式縱橫談(1):物件導向設計模式與原則.zip講座內容:本培訓課程從總體介紹物件導向設計模式的基本概念和原則,並示範物件導向設計模式在.NET架構程式設計中的實踐應用。課程講師:李建忠 上海祝成資訊科技有限公司 進階培訓講師 MSDN特邀講師 .NET技術專家,C++/CLI 專欄作家。南京郵電學院畢業,曆任程式員,進階程式員,開... [ 預覽 ]C#物件導向設計模式縱橫談(2):Singleton
Time of Update: 2018-12-06
C#程式安裝部署1 建立安裝部署項目 開啟VS,點擊建立項目,選擇:其他項目類型->安裝與部署->安裝嚮導(安裝項目也一樣),然後點擊確定。 2 安裝嚮導 關閉後開啟安裝嚮導,點擊下一步,或者直接點擊完成。 3 開始製作 安裝嚮導完成後即可進入專案檔夾:
Time of Update: 2018-12-06
1. 我們有一個test.exe的WinForm程式,這是我們要加殼的目標程式。2. 建立一個WinForm工程,刪除Form1,然後建立一個類。如下。3. 將test.exe 拷貝到該工程目錄,作為嵌入式資源。編譯後的程式會自動將資源中的目標檔案載入運行。繼續發揮一下,我們可以增加啟動密碼;將目標程式進代碼Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/
Time of Update: 2018-12-06
本文的主要內容:c#實現對Excel的Open、Save、合併儲存格、儲存格賦值的操作。ExcelHelper代碼: 1 class ExcelHelper 2 { 3 publicstaticvoid SaveData() 4 { 5 string filePath = Environment.CurrentDirectory +"\\Data"; 6 if (!Directory.Exists(filePath)) 7
Time of Update: 2018-12-06
問題:在C#代碼中錯誤刪除了Resources檔案夾下的一個表徵圖檔案,凡是用到表徵圖的toolStripButton的按鈕全部都看不到了,但是屬性裡面還存在這個按鈕的名稱,按鈕對應的事件與屬性也在。也就是說這些按鈕實際存在,就是看不到。如何讓這些消失的按鈕重新出現? 分析:其實是誤刪了布局代碼引起的。由於你刪除某些Resource檔案,Form.designer.cs檔案會自動刪除Form的一些布局代碼。這裡面可能會有些誤刪操作。 解決:比如在你Form.designer.cs的代碼中加入以下
Time of Update: 2018-12-06
本文主要內容:通過代碼的方式關閉進程。 以前關閉進程的方式,通常採用bat檔案的方式。現在通過採用另外一種方式關閉進程。關閉進程主要思路:遍曆所有進程,根據進程名稱,找出需要關閉的進程。開啟進程主要思路:通過遞迴的方式找出檔案夾中所有的exe檔案,並且開啟。其主要代碼如下: 1 #region 方法 2 /// <summary> 3 /// 關閉應用程式 4 /// </summary> 5 ///
Time of Update: 2018-12-06
用代碼說明: 代碼Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> class Program { static void Main(string[] args) { DoWork(); Console.WriteLine(P.Target == null);
Time of Update: 2018-12-06
在WinForm中,可以通過添加設定檔(如App.config)來為程式簡易地設定一些參數,但為了自己指定設定檔的位置,就不用VS添加了,寫兩個方法讀取和修改指定檔案。public class AppSettings { public static string AppConfig() { return System.IO.Path.Combine(Application.StartupPath,
Time of Update: 2018-12-06
Monitor 類的TryEnter() 方法在嘗試擷取一個對象上的顯式鎖方面和 Enter() 方法類似。然而,它不像Enter()方法那樣會阻塞執行。如果線程成功進入關鍵地區那麼TryEnter()方法會返回true.TryEnter()方法的三個重載方法中的兩個以一個timeout類型值作為參數,表示按照指定時間等待鎖。我們來看一個關於如何使用TryEnter()方法的例子,MonitorTryEnter.cs:/*************************************/
Time of Update: 2018-12-06
#region 無焦點表單 [System.Runtime.InteropServices.DllImport("user32.dll")] private extern static IntPtr SetActiveWindow(IntPtr handle); private const int WM_ACTIVATE = 0x006; private const int WM_ACTIVATEAPP = 0x01C;
Time of Update: 2018-12-06
using System.Runtime.InteropServices;[DllImport("user32.dll")] public static extern bool ReleaseCapture(); [DllImport("user32.dll")] public static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam); public const int WM
Time of Update: 2018-12-06
DesignSurface 實現設計器問題?http://topic.csdn.net/u/20090419/02/4c0fe387-c019-4159-ac60-71c04495e2b2.htmlDesignSurface 實現設計器問題?http://topic.csdn.net/u/20090419/02/4c0fe387-c019-4159-ac60-71c04495e2b2.htmlDesignSurface 實現設計器問題?http://topic.csdn.net/u/200904
Time of Update: 2018-12-06
有幾種方法:一.Ring3Hook: 可以寫個驅動程式, 只需要在初始化代碼中用PsSetCreateProcessNotifyRoutine註冊一個回呼函數就可以在接下去任何process建立時獲得通知。 然後只要想辦法通知ring3的前端程式就可以了。 如果想在ring3通過api hook實現, 那麼需要至少hook所有已存在process的建立進程的api, 據我所知,