Time of Update: 2018-12-07
下面是我根據網路上的應用程式改編的一個簡單的托盤程式的DEMO,實現了一般托盤程式的準系統using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace WindowsApplication4{ public
Time of Update: 2018-12-07
- 輸出檔案 -/out:<file> 輸出檔案名(預設值: 包含主類的檔案或第一個檔案的基名稱)/target:exe 產生控制台可執行檔(預設) (縮寫: /t:exe)/target:winexe 產生 Windows 可執行檔 (縮寫: /t:winexe)/target:library 產生庫 (縮寫: /t:library)/target:module 產生能添加到其他程式集的模組 (縮寫: /t:module)/define:<symbol list>
Time of Update: 2018-12-07
//--需要引用 using System.Net 以及 using System.IO;private string GetContentFromUrll(string _requestUrl) { string _StrResponse =""; HttpWebRequest _WebRequest = ( HttpWebRequest )WebRequest.Create( _requestUrl ); _We
Time of Update: 2018-12-07
方法1:用c/c++自身的字串數組#include <string.h>void test(){ // 用法 1 - 1 char szInfo[100] = {0}; strcpy(szInfo, "hello, world\r\n"); printf(szInfo); // 用法 1- 2 char *pInfo = "hello, guys\r\n"; printf(pInfo); // 用法 1 - 3 char *
Time of Update: 2018-12-07
const 的概念就是一個包含不能修改的值的變數。常數運算式是在編譯時間可被完全計算的運算式。因此不能從一個變數中提取的值來初始化常量。如果 const int a = b+1;b是一個變數,顯然不能在編譯時間就計算出結果,所以常量是不可以用變數來初始化的。readonly 允許把一個欄位設定成常量,但可以執行一些運算,可以確定它的初始值。因為 readonly 是在計算時執行的,當然它可以用某些變數初始化。readonly
Time of Update: 2018-12-07
.NET Framework 4 在一次次跳票中終於發布了,在一次偶然的機會,我看到了 Anytao 的 [你必須知道的.NET]第三十三回,深入.NET 4.0之,Lazy<T>點滴 。我沒有看過在.NET Framework 4.0 beta2 的 關於 Lazy<T> 的實現,也不知道正式版與之前的版本是否有過改進(改變),我只在這裡來單純地談在.NET Framework 4 中 Lazy<T> 的實現。1. Lazy<T>
Time of Update: 2018-12-07
#region 列印對象所有屬性/// <summary>/// 列印對象所有屬性/// </summary>/// <param name="obj"></param>/// <returns></returns>public static string PrintAttribute(object obj){ StringBuilder strBuilder = new StringBuilder(); //組
Time of Update: 2018-12-07
1.啟動子進程,不等待子進程結束private void simpleRun_Click(object sender, System.EventArgs e){ System.Diagnostics.Process.Start(@"C:/listfiles.bat");}2.啟動子進程,等待子進程結束,並獲得輸出 private void runSyncAndGetResults_Click(object sender, System.EventArgs e) {
Time of Update: 2018-12-07
代碼 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->/// <summary>/// 是否能 Ping 通指定的主機/// </summary>/// <param name="ip">ip 地址或主機名稱或網域名稱</param>/// <returns>true 通,false 不通&
Time of Update: 2018-12-07
using System;namespace MyCollections { using System.Collections; public delegate void ChangedEventHandler(object sender, EventArgs e); public class ListWithChangedEvent: ArrayList { public event ChangedEventHandler MyAdd; public
Time of Update: 2018-12-07
Api函數是構築Windws應用程式的基石,每一種Windows應用程式開發工具,它提供的底層函數都間接或直接地調用了Windows API函數,同時為了實現功能擴充,一般也都提供了調用WindowsAPI函數的介面, 也就是說具備調用動態串連庫的能力。Visual C#和其它開發工具一樣也能夠調用動態連結程式庫的API函數。.NET架構本身提供了這樣一種服務,允許受管轄的代碼調用動態連結程式庫中實現的非受管轄函數,包括作業系統提供的Windows
Time of Update: 2018-12-07
XPButton.cs代碼 using System; using System.Windows; using System.Drawing; using System.Drawing.Drawing2D; using System.Windows .Forms ; namespace XPCtrl { /// <summary> /// XPButton 的摘要說明。 /// </summary> public class
Time of Update: 2018-12-07
二部分組成,一個線程管理類ThreadManager,一個線程類MyThreadTest類是用來測試的 1.ThreadManager.cs using System;using System.Threading;using System.Collections;namespace CustomThreadPool{/// <summary>/// 線程管理器,會開啟或喚醒一個線程去執行指定的回調方法/// </summary>public class
Time of Update: 2018-12-07
C#的Enum設計的相關指導在網上有相關文章論述:英文:Design Guidelines Update: Enum Design中文:C# Idioms: Enum還是Enum Class(枚舉類) Enum的運算通常涉及到位元運算(AND、OR、XOR),按位元運算, 常使用FlagsAttribute 自訂屬性定義。FlagsAttribute 和 Enum 的準則:只有要對數值執行按位元運算(AND、OR、XOR)時才對枚舉使用 FlagsAttribute 自訂屬性。 用 2 的冪(
Time of Update: 2018-12-07
yield有兩種使用形式:yield return;和yield break;他們通常配合列舉程式對象IEnumerable(支援非泛型集合上進行簡單迭代)使用。yield return:即取到一個資料後馬上返回該資料,不需要全部資料裝入數列完畢,這樣有效提高了遍曆效率。普通的return只返回一個資料,yield return 可在迴圈中返回合格多個資料。yield break:在迴圈中,配合yield
Time of Update: 2018-12-07
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Net.Mail;namespace EmailTest{ public partial class MsEmail
Time of Update: 2018-12-07
我們先瞭解下系統日誌的一些概念,如示:寫入系統日誌時必需指定事件來源,再由系統判斷該事件來源註冊在哪個日誌下,最後在該日誌下增加一條事件。使用EventLog類很容易就能新增一條事件:複製內容到剪貼簿程式碼 程式碼EventLog.WriteEntry("abc", "Hello World!", EventLogEntryType.Warning);//預設事件在應用程式下下邊建立一個日誌"自訂事件",並將abc事件來源註冊到"自訂事件",最後新增一條事件:複製內容到剪貼簿程式碼
Time of Update: 2018-12-07
Action:相當於一種無參數傳遞的委託,從Framework 3.5開始加如,簡化了委託調用代碼:Delegate原代碼:using System;using System.Windows.Forms;public delegate void DisplayMessage();public class testTestDelegate{ public static void Main() {
Time of Update: 2018-12-07
public static class StructCopyer{ //相當於序列化與還原序列化,但是不用藉助外部檔案 //1、struct轉換為Byte[] public static Byte[] StructToBytes(Object structure) { Int32 size = Marshal.SizeOf(structure); IntPtr buffer = Marshal.AllocHGlobal(size);
Time of Update: 2018-12-07
//當前視窗寬度int iWidth = this.Width;//當前視窗高度int iHeight = this.Height;//截取主畫面Screen scrPrimary = Screen.PrimaryScreen;//建立一個和螢幕一樣大的BitmapImage myImage = new Bitmap(iWidth, iHeight);//從一個繼承自Image類的對象中建立Graphics對象Graphics graphi = Graphics.FromImage(myImag