Time of Update: 2018-12-05
今天寫代碼的時候要用到輸入框,想起VB中的InputBox,於是翻了一下.net的類庫,居然找不到它的身影,真沒想到啊~~VB中的InputBox,很好用,當點擊按鈕時彈出一個對話方塊,在對話方塊中的文字框中可以輸入字串,點擊OK後可以返回你剛才輸入的字串。通過網上查閱資料,解決辦法要麼是自己寫個inputbox類,要麼是使用VB類庫。這裡我談下後者:具體實現的方法:1.添加引用:Microsoft.VisualBasic,1圖1 2.using Microsoft.VisualBasic;3
Time of Update: 2018-12-05
在搜尋引擎的開發中,我們需要對網頁的Html內容進行檢索,難免的就需要對Html進行解析。拆分每一個節點並且擷取節點間的內容。此文介紹兩種C#解析Html的方法。第一種方法:用System.Net.WebClient下載Web Page存到本地檔案或者String中,用Regex來分析。這個方法可以用在Web Crawler等需要分析很多Web Page的應用中。估計這也是大家最直接,最容易想到的一個方法。轉自網上的一個執行個體:所有的href都抽取出來: Codeusing
Time of Update: 2018-12-05
ThreadPool(線程池)是一個靜態類,它沒有定義任何的構造方法(),我們只能夠使用它的靜態方法,這是因為,這是因為ThreadPool是託管線程池,是由CLR管理的。ThreadPool使用WaitCallback委託,它所要做的工作是在後台進行的。使工作項目的排隊和運行更容易,可以給工作者線程傳遞一個狀態物件(提供資料)。狀態物件是私人的範圍位於線程層,所以不需要進行同步。ThreadPool目標是為了減除線程的初始化開銷,實現平行處理。.NET類庫中的ThreadPool是非同步IO的
Time of Update: 2018-12-05
在程式中,進行類型轉換是常見的事。那麼在C#中支援以前語言的類型轉換方法,即用類型名進行強行轉換,例如:object objTest = new NewType();NewType newValue = (NewType)objTest; 但是這樣轉換,有個嚴重的問題,就是在把objTest強轉換成NewType類型對象的時候,這個過程是不安全的,因此需要用try-catch語句來進行保護。這樣一來,比較安全的代碼方式應該如下所示。 object objTest = new
Time of Update: 2018-12-05
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;namespace 字串相似性{ public partial class Form1 : Form { public
Time of Update: 2018-12-05
1http://www.l78zw.com/read.php/58.htm C#中的公用勾子類 2http://www.diybl.com/course/4_webprogram/asp.net/netjs/2008515/116961.html 利用勾子監視系統或進程中的各種事件訊息,截獲發往目標視窗的訊息並進行處理3http://blog.csdn.net/jackiechen01/archive/2007/08/11/1738010.aspx 兩分鐘用C#搭建IE BHO勾子,
Time of Update: 2018-12-05
錯誤資訊是這樣的: Form1 可以進行設計,但不是檔案中的第一個類。Visual Studio 要求設計器使用檔案中的第一個類。移動類代碼使之成為檔案中的第一個類,然後嘗試重新載入設計器。
Time of Update: 2018-12-05
在我們的程式中,經常會有一些耗時較長的運算,為了保證使用者體驗,不引起介面不響應,我們一般會採用多線程操作,讓耗時操作在後台完成,完成後再進行處理或給出提示,在運行中,也會時時去重新整理介面上的進度條等顯示元,必要進,還要控制後台線程中斷當前操作。以前,類似的應用會比較麻煩,需要寫的代碼較多,也很容易出現異常。在 .net中,提供了一個組件
Time of Update: 2018-12-05
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.Threading;using System.Diagnostics;namespace
Time of Update: 2018-12-05
這節我們按照線程池的核心思想來自訂一個簡單的線程池:1) 池中使用的線程不少於一定數量,不多於一定數量2) 池中線程不夠的時候建立,富裕的時候收回3) 任務排隊,沒有可用線程時,任務等待我們的目的只是實現這些“需求”,不去考慮效能(比如等待一段時間再去建立新的線程等策略)以及特殊的處理(異常),在實現這個需求的過程中我們也回顧了線程以及線程同步的基本概念。首先,把任務委託和任務需要的狀態資料封裝一個對象:public class WorkItem{ public WaitCallback
Time of Update: 2018-12-05
圖1 帶EventArgs的委託示範圖2 不帶EventArgs的委託示範 本例原始碼下載:1。不帶參數的委託2。帶參數的委託帶EventArgs的委託示範常式原始碼如下:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using
Time of Update: 2018-12-05
授權CSDN, 請在徵求同意後轉載. 作者: 陳嘉, NetSecure Inc, Canada, 軟體工程師微軟在1997年正式退出Browser Helper Object (BHO), 使程式員能夠更好的對IE進行二次開發和操作. 在通過編寫BHO程式數月後, 我希望把我的一些經驗告訴才開始的同志, 避免走一些彎路.我本人是非常喜歡C++的. 因為C++對記憶體直接操作的方式可以節省非常多的記憶體損耗, 也更快一些. 但是在開發BHO的時候, 我的確也認識到, C#明顯要比C++強大很多.
Time of Update: 2018-12-05
池(Pool)是一個很常見的提高效能的方式。比如線程池串連池等,之所以有這些池是因為線程和資料庫連接的建立和關閉是一種比較昂貴的行為。對於這種昂貴的資源我們往往會考慮在一個池容器中放置一些資源,在用的時候去拿,在不夠的時候添點,在用完就歸還,這樣就可以避免不斷的建立資源和銷毀資源。如果您做過相關實驗的話可能會覺得不以為然,似乎開1000個線程也用不了幾百毫秒。我們要這麼想,對於一個高並發的環境來說,每一秒假設有100個請求,每個請求需要使用(開和關)10個線程,也就是一秒需要處理1000個線程的
Time of Update: 2018-12-05
原始碼: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.Diagnostics;using System.Net;using
Time of Update: 2018-12-05
HttpWebRequest畢竟是WebClient 的父類,因此POST起來比較麻煩。 try { string valpairs=""; valpairs="c="+textBox1.Text; UTF8Encoding encoding=new UTF8Encoding(); b = encoding.GetBytes(valpairs); HttpWebRequest request = (HttpWebRequest)WebRequest.
Time of Update: 2018-12-05
原始碼: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.Diagnostics;using System.Net;using
Time of Update: 2018-12-05
原始碼如下: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;using System.Threading;using
Time of Update: 2018-12-05
本來想寫一個將圖片處理成磨砂玻璃的函數,從網上找到一個C#的類,小日本的代碼,功能較多,沒有注釋。處理出來的效果還可以,但不是我想要的ImageUtils.cs用這個類寫的“磨砂玻璃”效果如下:代碼:Code highlighting produced by Actipro CodeHighlighter
Time of Update: 2018-12-05
protected string GetWebContent(string url) { Stream outstream = null; Stream instream = null; StreamReader sr = null; HttpWebResponse response = null; HttpWebRequest request = null; // 要注意的這是這個編碼方式,還有內容的Xm
Time of Update: 2018-12-05
將C++託管擴充項目從純粹的中繼語言轉換成混合模式編譯:Northtibet原文出處:Converting Managed Extensions for C++ Projects from Pure Intermediate Language to Mixed Mode建立 DLL 的 C++ 託管擴充項目預設包含 MSIL(微軟中繼語言)代碼,這個代碼並不與 C 執行階段程式庫(CRT),ATL 或 MFC 這樣的本機 C/C++