Time of Update: 2018-12-07
使用Win32 API進行鍵盤UI設計,代碼較多未整理,相關函數請看注釋,點擊 這裡 下載完整代碼。下一篇文章我們將討論C#的定時器,最後是一篇用這些知識編寫一個基於GDI+的小遊戲的文章,敬請關注。using System;using System.Drawing;using System.Collections;using System.ComponentModel;using System.Windows.Forms;using
Time of Update: 2018-12-07
notsamenum++;}}if(notsamenum<4){char cj=(char)datachar[ii];return cj.ToString();}}return jieguo;}/// <summary>/// 檢查特徵庫中是否已經存在相關記錄/// </summary>bool ischardatain(){bool jieguo=false;for(int
Time of Update: 2018-12-07
using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using
Time of Update: 2018-12-07
提高C#編程水平的50個要點1.總是用屬性 (Property) 來代替可訪問的資料成員2.在 readonly 和 const 之間,優先使用 readonly3.在 as 和 強制類型轉換之間,優先使用 as 操作符4.使用條件屬性 (Conditional Attributes) 來代替條件編譯語句 #if5.總是為自訂類重載 ToString 方法6.區別實值型別和參考型別7.使用不可變的實值型別(Immutable Atomic Value
Time of Update: 2018-12-07
一個用C#寫的windows應用程式,作用嘛,就是對asp程式已知的20種漏洞進行掃描,顯示來源程式。在這個應用程式中用到兩種獲得http頁面的方 法,一種是直接用httpwebrequest類,而另一種是同伺服器通過tcp/ip建立socket串連,直接查詢連接埠80 , 為此我寫了以下兩個函數,第一個比較簡單,參數只有一個,就是要求的url ,
Time of Update: 2018-12-07
摘要:本文討論了如何使用C#2.0實現抓取網路資源的網路蜘蛛。使用這個程式,可以通過一個入口網址(如 http://www.comprg.com.cn)來掃描整個互連網的網址,並將這些掃描到的網址所指向的網路資源下載到本地。然後可以利用其他的分析 工具對這些網路資源做進一步地分析,如提取關鍵詞、分類索引等。也可以將這些網路資源作為資料來源來實現象Google一樣的搜尋引擎。關鍵 詞:C#2.0,Html,網路蜘蛛, 鍵樹,Regex 一、引言
Time of Update: 2018-12-07
一.前言: P2P,即英文Peer-to-Peer的縮寫,中譯為對等互聯或點對點技術。講到P2P,人們就會想起Napster,Napster讓人們認識到了P2P技術的威力,P2P技術也就通過Napster進入了大多數使用者的視野,Napster的音樂檔案交換功能是P2P的一個主要應用。P2P技術可以讓使用者可以直接連接到其他使用者的電腦,進行檔案分享權限設定與交換。同時P2P在深度搜尋、分布計算、協同工作等方面也大有用途。 簡單地說,P2P就是一種用於不同PC使用者之間,不經過中繼裝置直接交
Time of Update: 2018-12-07
1. 位域我們來看一個表示日期的結構體:typedef struct{ unsigned int year; unsigned int month; unsigned int day;}MyDate;但是我們可以發現,其實year最大也不會超過四位元,month也就是12,而day最大也就是31。但是我們在上述的結構體中,卻為其分配了4*3=12位元組的記憶體,是不是很浪費呢?C語言為瞭解決這個問題,提出了一個概念,叫位域。看段代碼:typedef struct{
Time of Update: 2018-12-07
園子裡的首頁已經在所謂的C#大論戰和語言大作戰上,風風火火地持續了快一個月了,我想也該告上那麼一段落了。我只在這裡寫下我眼中的看法。1.
Time of Update: 2018-12-07
1. 數組作為函數參數函數是我們學習程式設計語言最基本的東西了,我在此不再贅述。只討論一種特殊情況,就是數組作為函數的參數傳遞。我們都知道,其實在傳遞數組的時候,實際上是傳遞了數組首元素的指標。明確了這一點之後,我們就可以思考下面的問題。既然他只是傳遞了數組首元素的指標,那麼他必然無法知道整個數組的大小,因此,我們如果希望在函數中用到數組的長度,必須要進行顯式傳遞。int Sum(int a[],int size){int i ,sum=0;for(i=0;i<size;i++) {
Time of Update: 2018-12-07
1. 字串入門字串也稱字串字面量,是用一對雙引號括起來的字元序列。我們也許經常會遇到字串特別長的情況,在C#中,我們一般會用@符號來表示。 Console.WriteLine(@"HelloWorld"); 但是在C中,我們會這樣來寫:int main(){ printf("Hello " "world");return 0;}還記得我曾經講的最多的一句話就是,把字串當做字元數組來玩。其實在本質上,C語言就是把字串作為字元數組來處理,當C語言編譯器遇到長度為N的字串時,
Time of Update: 2018-12-07
有些情況下需要一個調度器專門來處理一些工作,如在網路處理常式中,當接收的資料後把資訊存放到隊列中,儘可能的更快地處理下一接收操作.而接收的資料資訊則由調試器來處理,如資料分析,資料包處理等等工作.既然調度器負責處理工作,那最好給需要處理的工作制定一個規則,方便以後靈活擴充處理.制定規則介面?12345public interface IWorkItem:IDisposable { void Execute(); }其實介面制定很簡單就是一個Execute方法,
Time of Update: 2018-12-07
vs2005 中,背景工作執行緒 操作 介面的線程的時候,一般會 報個錯誤,叫 麼子 背景工作執行緒不能夠修改主線程什麼的。解決方案參考如下: #region 重新載入樹圖 /// <summary> /// 重新載入樹圖 /// </summary> private void RedrawTree() { if (treeView1.InvokeRequired)
Time of Update: 2018-12-07
前段時間,本地開發組希望使用集團統一的鑒權組件,所以,把一些程式更改,但是,運行結果卻不是很好,後來查了很久的原因,發現集團公司寫的一個組件記憶體一直佔用很高,且訪問一次,記憶體不段累加,卻沒有被釋放,最終將造成系統記憶體耗光.....由於本地不可能修改該組件,唯一的辦法只有每天定時重啟該服務....c#來重啟服務,包括iis,等等,代碼很簡單.隨便抄一段.停止ServiceController sc = new
Time of Update: 2018-12-07
繼前篇《自製Windows 7 註冊表索引值修改服務》中提出兩個問題之後,今天又遇到了另一個新問題。為了避免域內感染病毒,以及防止安裝盜版軟體等安全問題。公司組策略中不允許域使用者加入本機電腦Administrator 群組,這也就意味著沒有本機管理員(LAdmin)或網域系統管理員(DAdmin)許可權將無法安裝任何軟體,對於使用Windows 7 系統的使用者UAC 會無時不刻的彈出要求輸入LAdmin 或DAdmin 的使用者名稱/密碼。解決方案
Time of Update: 2018-12-07
所謂Windows後台服務,即後台自動啟動並執行程式,一般隨作業系統啟動而啟動,在我的電腦 服務後應用程式
Time of Update: 2018-12-07
這幾天一直在研究c#下進行directX的3D開發,頗有些成績。先貼出一個小例子和大家分享,我做的是一個旋轉的4稜錐。如果有人對這方面感興趣不知道如何學習的話,我建議看兩個文檔<Managed DirectX 9圖形和遊戲編程簡略中文文檔>,<Managed DirectX 9 SDK 中文文檔>。另外最好下載個DirectX SDK (August
Time of Update: 2018-12-07
using System; using System.Collections.Generic; using System.Text; using System.Diagnostics; using System.Text.RegularExpressions; using System.IO; using System.Net; namespace Capture { class Program { static void
Time of Update: 2018-12-07
0.建立表單 及添加按鈕1. 執行如下按鈕事件 private void btnFormMax_Click(object sender, EventArgs e) { if (this.WindowState == FormWindowState.Maximized) { this.WindowState = FormWindowState.Normal; } else { this.WindowState =
Time of Update: 2018-12-07
C#實現實現案頭上的遮罩層(滑鼠穿透)主要通過一下幾個API函數來實現:GetWindowLong,SetWindowLong,SetLayeredWindowAttributes。其中有一個Windows 訊息 WS_EX_TRANSPARENT 比較重要,它實現了滑鼠穿透的功能。 下面來看看完整的實現代碼:using System; using System.Drawing; using System.Windows.Forms; using System.Runtime.