锘??xml version="1.0" encoding="utf-8" standalone="yes"?> 銆銆鍦ㄤ嬌鐢═CP鍗忚鏃訛紝涓鑸湇鍔$榪涚▼鍏堜嬌鐢╯ocket璋冪敤寰楀埌涓涓弿榪?絎︼紝鐒跺悗浣跨敤bind璋冪敤灝嗕竴涓悕瀛椾笌socket鎻忚堪絎﹁繛鎺ヨ搗鏉ワ紝瀵逛簬Internet鍩熷氨鏄皢Internet鍦板潃鑱旂紪鍒皊ocket銆備箣鍚庯紝鏈嶅姟绔?浣跨敤listen璋冪敤鎸囧嚭絳夊緟鏈嶅姟璇鋒眰闃熷垪鐨勯暱搴︺傜劧鍚庡氨鍙互浣跨敤accept璋冪敤絳夊緟瀹㈡埛绔彂璧瘋繛鎺ワ紝涓鑸槸闃誨絳夊緟榪炴帴錛屼竴鏃︽湁瀹㈡埛绔彂鍑鴻繛鎺ワ紝 accept榪斿洖瀹㈡埛鐨勫湴鍧淇℃伅錛屽茍榪斿洖涓涓柊鐨剆ocket鎻忚堪絎︼紝璇ユ弿榪扮涓庡師鍏堢殑socket鏈夌浉鍚岀殑鐗規э紝榪欐椂鏈嶅姟绔氨鍙互浣跨敤榪欎釜鏂扮殑 socket榪涜璇誨啓鎿嶄綔浜嗐備竴鑸湇鍔$鍙兘鍦╝ccept榪斿洖鍚庡垱寤轟竴涓柊鐨勮繘紼嬭繘琛屼笌瀹㈡埛鐨勯氫俊錛岀埗榪涚▼鍒欏啀鍒癮ccept璋冪敤澶勭瓑寰呭彟涓涓繛鎺ャ傚 鎴風榪涚▼涓鑸厛浣跨敤socket璋冪敤寰楀埌涓涓猻ocket鎻忚堪絎︼紝鐒跺悗浣跨敤connect鍚戞寚瀹氱殑鏈嶅姟鍣ㄤ笂鐨勬寚瀹氱鍙e彂璧瘋繛鎺ワ紝涓鏃﹁繛鎺ユ垚鍔熻繑鍥烇紝灝辮鏄?宸茬粡寤虹珛浜嗕笌鏈嶅姟鍣ㄧ殑榪炴帴錛岃繖鏃跺氨鍙互閫氳繃socket鎻忚堪絎﹁繘琛岃鍐欐搷浣滀簡銆?/p>
銆銆.NetFrameWork涓篠ocket閫氳鎻愪緵浜哠ystem.Net.Socket鍛藉悕絀洪棿錛屽湪榪欎釜鍛藉悕絀洪棿閲岄潰鏈変互涓嬪嚑涓父鐢ㄧ殑閲嶈綾誨垎鍒槸: 銆銆·Socket綾?榪欎釜浣庡眰鐨勭被鐢ㄤ簬綆$悊榪炴帴錛學ebRequest錛孴cpClient鍜孶dpClient鍦ㄥ唴閮ㄤ嬌鐢ㄨ繖涓被銆?/p>
銆銆·NetworkStream綾?榪欎釜綾繪槸浠嶴tream媧劇敓鍑烘潵鐨勶紝瀹冭〃紺烘潵鑷綉緇滅殑鏁版嵁嫻?/p>
銆銆·TcpClient綾?鍏佽鍒涘緩鍜屼嬌鐢═CP榪炴帴 銆銆·TcpListener綾?鍏佽鐩戝惉浼犲叆鐨凾CP榪炴帴璇鋒眰 銆銆·UdpClient綾?鐢ㄤ簬UDP瀹㈡埛鍒涘緩榪炴帴(UDP鏄彟澶栦竴縐峊CP鍗忚錛屼絾娌℃湁寰楀埌騫挎硾鐨勪嬌鐢紝涓昏鐢ㄤ簬鏈湴緗戠粶) 銆銆涓嬮潰鎴戜滑鏉ョ湅涓涓熀浜嶴ocket鐨勫弻鏈洪氫俊浠g爜鐨凜#鐗堟湰 銆銆棣栧厛鍒涘緩Socket瀵硅薄鐨勫疄渚嬶紝榪欏彲浠ラ氳繃Socket綾葷殑鏋勯犳柟娉曟潵瀹炵幇錛?/p>
public Socket(AddressFamily addressFamily,SocketType socketType,ProtocolType protocolType); 銆銆鍏朵腑錛宎ddressFamily 鍙傛暟鎸囧畾 Socket 浣跨敤鐨勫鍧鏂規錛宻ocketType 鍙傛暟鎸囧畾 Socket 鐨勭被鍨嬶紝protocolType 鍙傛暟鎸囧畾 Socket 浣跨敤鐨勫崗璁? 銆銆涓嬮潰鐨勭ず渚嬭鍙ュ垱寤轟竴涓?Socket錛屽畠鍙敤浜庡湪鍩轟簬 TCP/IP 鐨勭綉緇滐紙濡?Internet錛変笂閫氳銆?/p>
Socket temp = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); 銆銆鑻ヨ浣跨敤 UDP 鑰屼笉鏄?TCP錛岄渶瑕佹洿鏀瑰崗璁被鍨嬶紝濡備笅闈㈢殑紺轟緥鎵紺猴細 Socket temp = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); 銆 銆涓鏃﹀垱寤?Socket錛屽湪瀹㈡埛绔紝浣犲皢鍙互閫氳繃Connect鏂規硶榪炴帴鍒版寚瀹氱殑鏈嶅姟鍣紙浣犲彲浠ュ湪Connect鏂規硶鍓岯ind绔彛錛屽氨鏄互鎸囧畾鐨勭鍙?鍙戣搗榪炴帴錛屽鏋滀笉浜嬪厛Bind绔彛鍙風殑璇濓紝緋葷粺浼氶粯璁ゅ湪1024鍒?000闅忔満緇戝畾涓涓鍙e彿錛夛紝騫墮氳繃Send鏂規硶鍚戣繙紼嬫湇鍔″櫒鍙戦佹暟鎹紝鑰屽悗鍙互閫氳繃 Receive浠庢湇鍔$鎺ユ敹鏁版嵁錛涜屽湪鏈嶅姟鍣ㄧ錛屼綘闇瑕佷嬌鐢˙ind鏂規硶緇戝畾鎵鎸囧畾鐨勬帴鍙d嬌Socket涓庝竴涓湰鍦扮粓緇撶偣鐩歌仈錛屽茍閫氳繃Listen鏂規硶渚?鍚鎺ュ彛涓婄殑璇鋒眰錛屽綋渚﹀惉鍒扮敤鎴風鐨勮繛鎺ユ椂錛岃皟鐢ˋccept瀹屾垚榪炴帴鐨勬搷浣滐紝鍒涘緩鏂扮殑Socket浠ュ鐞嗕紶鍏ョ殑榪炴帴璇鋒眰銆備嬌鐢ㄥ畬 Socket 鍚庯紝浣?鐢?Close 鏂規硶鍏抽棴 Socket銆? 銆銆鍙互鐪嬪嚭錛屼互涓婅澶氭柟娉曞寘鍚獷ndPoint綾誨瀷鐨勫弬鏁幫紝鍦↖nternet涓紝 TCP/IP 浣跨敤涓涓綉緇滃湴鍧鍜屼竴涓湇鍔$鍙e彿鏉ュ敮涓鏍囪瘑璁懼銆傜綉緇滃湴鍧鏍囪瘑緗戠粶涓婄殑鐗瑰畾璁懼錛涚鍙e彿鏍囪瘑瑕佽繛鎺ュ埌鐨勮璁懼涓婄殑鐗瑰畾鏈嶅姟銆傜綉緇滃湴鍧鍜屾湇 鍔$鍙g殑緇勫悎縐頒負緇堢粨鐐癸紝鍦?.NET 妗嗘灦涓鏄敱 EndPoint 綾昏〃紺鴻繖涓粓緇撶偣錛屽畠鎻愪緵琛ㄧず緗戠粶璧勬簮鎴栨湇鍔$殑鎶借薄錛岀敤浠ユ爣蹇楃綉緇滃湴鍧絳変俊 鎭?Net鍚屾椂涔熶負姣忎釜鍙楁敮鎸佺殑鍦板潃鏃忓畾涔変簡 EndPoint 鐨勫瓙浠o紱瀵逛簬 IP 鍦板潃鏃忥紝璇ョ被涓?IPEndPoint銆侷PEndPoint 綾誨寘鍚簲鐢ㄧ▼搴忚繛鎺ュ埌涓繪満涓婄殑鏈嶅姟鎵闇鐨勪富鏈哄拰绔彛淇℃伅錛岄氳繃緇勫悎鏈嶅姟鐨勪富鏈篒P鍦板潃鍜岀鍙e彿錛孖PEndPoint 綾誨艦鎴愬埌鏈嶅姟鐨勮繛鎺ョ偣銆?/p>
銆銆鐢ㄥ埌IPEndPoint綾葷殑鏃跺欏氨涓嶅彲閬垮厤鍦版秹鍙婂埌璁$畻鏈篒P鍦板潃錛孲ystem.Net鍛藉悕絀洪棿涓湁涓ょ綾誨彲浠ュ緱鍒癐P鍦板潃瀹炰緥錛? 銆銆·IPAddress綾伙細IPAddress 綾誨寘鍚綆楁満鍦?IP 緗戠粶涓婄殑鍦板潃銆傚叾Parse鏂規硶鍙皢 IP 鍦板潃瀛楃涓茶漿鎹負 IPAddress 瀹炰緥銆備笅闈㈢殑璇彞鍒涘緩涓涓?IPAddress 瀹炰緥錛? IPAddress myIP = IPAddress.Parse("192.168.0.1"); 銆 銆闇瑕佺煡閬撶殑鏄細Socket 綾繪敮鎸佷袱縐嶅熀鏈ā寮忥細鍚屾鍜屽紓姝ャ傚叾鍖哄埆鍦ㄤ簬錛氬湪鍚屾妯″紡涓紝鎸夊潡浼犺緭錛屽鎵ц緗戠粶鎿嶄綔鐨勫嚱鏁幫紙濡?Send 鍜?nbsp; Receive錛夌殑璋冪敤涓鐩寸瓑鍒版墍鏈夊唴瀹逛紶閫佹搷浣滃畬鎴愬悗鎵嶅皢鎺у埗榪斿洖緇欒皟鐢ㄧ▼搴忋傚湪寮傛妯″紡涓紝鏄寜浣嶄紶杈擄紝闇瑕佹寚瀹氬彂閫佺殑寮濮嬪拰緇撴潫銆傚悓姝ユā寮忔槸鏈甯?鐢ㄧ殑妯″紡錛屾垜浠繖閲岀殑渚嬪瓙涔熸槸浣跨敤鍚屾妯″紡銆?/p>
// 瀹㈡埛绔?/p>
鏈嶅姟绔細 銆銆瀹㈡埛绔?/p>
TcpClient tcpClient=new TcpCLient(涓繪満IP,绔彛鍙?; 銆銆鏈嶅姟绔?/p>
TcpListener tcpListener=new TcpListener(鐩戝惉绔彛); 銆銆鏈嶅姟绔敤TcpListener鐩戝惉,鐒跺悗鎶婅繛鎺ョ殑瀵硅薄瀹炰緥鍖栦負涓涓猅cpClient,璋冪敤TcpClient.GetStream()鏂規硶,榪斿洖緗戠粶嫻佸疄渚嬪寲涓轟竴涓狽etworlStream嫻?涓嬮潰灝辨槸鐢ㄦ祦鐨勬柟娉曡繘琛孲end,Receive 銆 銆濡傛灉鏄疷dpClient鐨勮瘽,灝辯洿鎺dpClient瀹炰緥鍖?鐒跺悗璋冪敤UdpClient鐨凷end鍜孯eceive鏂規硶,闇瑕佹敞鎰忕殑浜? UdpClient娌℃湁榪斿洖緗戠粶嫻佺殑鏂規硶,灝辨槸璇存病鏈塆etStream鏂規硶,鎵浠ユ棤娉曟祦鍖?鑰屼笖浣跨敤Udp閫氫俊鐨勬椂鍊?涓嶈鏈嶅姟鍣ㄧ洃鍚?/p>
銆銆鐜板湪鎴戜滑澶ц嚧浜嗚В浜?Net Socket閫氫俊鐨勬祦紼嬶紝涓嬮潰鎴戜滑鏉ヤ綔涓涓◢寰鏉傜偣鐨勭▼搴忥紝涓涓箍鎾紡鐨凜/S鑱婂ぉ紼嬪簭銆?/p>
銆銆瀹㈡埛绔璁¢渶瑕佷竴涓?涓狶istBox錛岀敤浜庢樉紺鴻亰澶╁唴瀹癸紝涓涓猅extBox杈撳叆浣犺璇寸殑璇濓紝涓涓狟utton鍙戦佺暀璦錛屼竴涓狟utton寤虹珛榪炴帴銆?/p>
銆銆鐐瑰嚮寤虹珛榪炴帴鐨凚utton鍚庡嚭鏉ヤ竴涓璇濇錛屾彁紺鴻緭鍏ヨ繛鎺ユ湇鍔″櫒鐨処P錛岀鍙o紝鍜屼綘鐨勬樀縐幫紝鍚姩涓涓帴鍙楃嚎紼嬶紝璐熻矗鎺ュ彈浠庢湇鍔″櫒浼犳潵鐨勪俊鎭茍鏄劇ず鍦↙istBox涓婇潰銆?/p>
銆銆鏈嶅姟鍣ㄧ2涓狟utton錛屼竴涓惎鍔ㄦ湇鍔★紝涓涓猅鎺夊凡寤虹珛榪炴帴鐨勫鎴風錛屼竴涓狶istBox鏄劇ず榪炴帴涓婄殑瀹㈡埛绔殑Ip鍜岀鍙c?/p>
銆銆姣旇緝閲嶈鐨勫湴鏂規槸瀛楃涓茬紪鐮佺殑闂錛岄渶瑕佸厛鎶婇渶瑕佷紶閫佺殑瀛楃涓叉寜鐓TF8緙栫爜錛岀劧鍚庢帴鍙楃殑鏃跺欏啀榪樺師鎴愪負GB2312錛屼笉鐒朵腑鏂囨樉紺轟細鏄貢鐮併?/p>
銆銆榪樻湁涓涓氨鏄帴鏀剁嚎紼嬶紝鎴戣繖閲岀畝鍗曞啓鎴愪竴涓猈hile(ture)寰幆錛屼笉鏂垽鏂槸鍚︽湁淇℃伅嫻佸叆錛屾湁灝辨帴鏀訛紝騫舵樉紺哄湪ListBox涓婏紝榪欓噷鏈夐棶棰橈紝鍦?Net2.0閲岄潰錛屼氦閿欑嚎紼嬩慨鏀圭獥浣撶┖闂村睘鎬х殑鏃跺欎細寮曞彂涓涓紓甯革紝涓嶅彲浠ョ洿鎺ヤ慨鏀癸紝闇瑕佸畾涔変竴涓鎵樻潵淇敼銆? 銆 銆褰撳鎴風闇瑕佹柇寮榪炴帴鐨勬椂鍊欙紝姣斿鐐瑰嚮紿椾綋鍙充笂瑙掔殑XX錛屽氨闇瑕佸畾涔変竴涓猼his.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Closing);錛?Net2.0 鏄疐ormClosing緋葷粺浜嬩歡錛夛紝鍦–losing()鍑芥暟閲岄潰錛屽彂閫丆lose瀛楃緇欐湇鍔$錛屾湇鍔″櫒鍒ゆ柇寰幆鍒ゆ柇鎵鏈夌殑榪炴帴涓婄殑瀹㈡埛绔紶鏉ョ殑淇℃伅錛?濡傛灉鏄互Close寮澶達紝鏂紑涓庡叾鐨勮繛鎺ャ傜湅鍒拌繖閲岋紝璇昏呭氨浼氶棶浜嗭紝濡傛灉鎴戝湪鑱婂ぉ紿楀彛杈撳叆Close鏄笉鏄篃鏂紑榪炴帴鍛紵涓嶆槸鐨勶紝鍦ㄨ亰澶╃獥鍙h緭鍏ョ殑淇℃伅浼?緇欐湇鍔″櫒鐨勬椂鍊欏紑澶撮兘瑕佸姞涓奍p淇℃伅鍜屾樀縐幫紝鎵浠ヤ笉浼氬啿紿併?nbsp;
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Net;
using System.Net.Sockets;
namespace ClientDemo

{
class Program
{
static void Main(string[] args)
{
try
銆銆銆
{
銆銆銆銆 int port = 2010;
銆銆銆銆 string host = "127.0.0.1";
銆銆銆銆 IPAddress ip = IPAddress.Parse(host);
銆銆銆銆 IPEndPoint ipe = new IPEndPoint(ip, port);//鎶奿p鍜岀鍙h漿鍖栦負IPEndPoint瀹炰緥
銆銆銆銆 Socket c = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);//鍒涘緩涓涓猄ocket
銆銆銆銆 Console.WriteLine("Conneting
");
銆銆銆銆 c.Connect(ipe);//榪炴帴鍒版湇鍔″櫒
銆銆銆銆 string sendStr = "hello!This is a socket test";
銆銆銆銆 byte[] bs = Encoding.ASCII.GetBytes(sendStr);
銆銆銆 銆 Console.WriteLine("Send Message");
銆銆銆銆 c.Send(bs, bs.Length, 0);//鍙戦佹祴璇曚俊鎭?/span>
銆銆銆銆 string recvStr = "";
銆銆銆銆 byte[] recvBytes = new byte[1024];
銆銆銆銆 int bytes;
銆銆銆銆 bytes = c.Receive(recvBytes, recvBytes.Length, 0);//浠庢湇鍔″櫒绔帴鍙楄繑鍥炰俊鎭?/span>
銆銆銆銆 recvStr += Encoding.ASCII.GetString(recvBytes, 0, bytes);
銆銆銆銆 Console.WriteLine("Client Get Message:{0}", recvStr);//鏄劇ず鏈嶅姟鍣ㄨ繑鍥炰俊鎭?/span>
c.Close();
銆銆銆 }
銆銆銆 catch (ArgumentNullException e)
銆銆銆
{
銆銆銆銆 Console.WriteLine("ArgumentNullException: {0}", e);
銆銆銆 }
銆銆銆 catch (SocketException e)
銆銆銆
{
銆銆銆銆 Console.WriteLine("SocketException: {0}", e);
銆銆銆 }
銆銆銆 Console.WriteLine("Press Enter to Exit");
Console.ReadLine();
}
}
}
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Net;
using System.Net.Sockets;
namespace ServerDemo

{
class Program
{
static void Main(string[] args)
{
try 
{
int port = 2010;
string host = "127.0.0.1";
IPAddress ip = IPAddress.Parse(host);
IPEndPoint ipe = new IPEndPoint(ip, port);
Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); // 鍒涘緩涓涓猄OKCET綾葷殑瀹炰緥
s.Bind(ipe); // 緇戝畾绔彛
s.Listen(0); // 寮濮嬬洃鍚?/span>
Console.WriteLine("Wait for connect");
Socket temp = s.Accept();// 涓烘柊寤鴻繛鎺ュ垱寤烘柊鐨凷ocket
Console.WriteLine("Get a Connect");
string recvStr = "";
byte[] recvBytes = new byte[1024];
int bytes;
bytes = temp.Receive(recvBytes, recvBytes.Length, 0); // 鎺ユ敹瀹㈡埛绔殑淇℃伅
recvStr += Encoding.ASCII.GetString(recvBytes, 0, bytes);
Console.WriteLine("Server Get Message:{0}", recvStr);
string sendStr = "OK! Client Send Message Successful!";
byte[] bs = Encoding.ASCII.GetBytes(sendStr);
temp.Send(bs, bs.Length, 0);
temp.Close();
s.Close();
}
catch (ArgumentNullException e)
銆銆銆
{
銆銆銆銆 Console.WriteLine("ArgumentNullException: {0}", e);
銆銆銆 }
銆銆銆 catch (SocketException e)
銆銆銆
{
銆銆銆銆 Console.WriteLine("SocketException: {0}", e);
銆銆銆 }
銆銆銆 Console.WriteLine("Press Enter to Exit");
銆銆銆 Console.ReadLine();
}
}
}
闈㈢殑渚嬪瓙鏄敤鐨凷ocket綾伙紝System.Net.Socket鍛藉悕絀洪棿榪樻彁渚涗簡涓や釜鎶借薄楂樼駭綾籘CPClient鍜孶DPClient鍜岀敤浜庨氳嫻佸鐞嗙殑NetWorkStream,璁╂垜浠湅涓嬩緥瀛?/p>
NetworkStream ns=tcp.Client.GetStream();
tcpListener.Start();
TcpClient tcpClient=tcpListener.AcceptTcpClient();
NetworkStream ns=tcpClient.GetStream();
鏈枃鏉ヨ嚜CSDN鍗氬錛岃漿杞借鏍囨槑鍑哄錛?a >http://blog.csdn.net/dzfb/archive/2006/12/21/1452139.aspx
]]>
鍦⊿ettings.settings鏂囦歡涓畾涔夐厤緗瓧孌點傛妸浣滅敤鑼冨洿瀹氫箟涓猴細User鍒欒繍琛屾椂鍙洿鏀癸紝Applicatiion鍒欒繍琛屾椂涓嶅彲鏇存敼銆傚彲浠ヤ嬌鐢ㄦ暟鎹綉鏍艱鍥撅紝寰堟柟渚匡紱
2銆佽鍙栭厤緗?/font>
text1.text = Properties.Settings.Default.FieldName;
//FieldName鏄綘瀹氫箟鐨勫瓧孌?/font>
3銆佷慨鏀瑰拰淇濆瓨閰嶇疆
Properties.Settings.Default.FieldName = "server";
Properties.Settings.Default.Save();//浣跨敤Save鏂規硶淇濆瓨鏇存敼
娉ㄦ剰錛氬綋璁劇疆scope涓篣ser鏃朵粬鐨勯厤緗斁鍦?C:\Documents and Settings\LocalService\Local Settings\Application Data\鍦ㄨ繖涓洰褰曚笅鎴栧瓙鐩綍user.config 閰嶇疆鏂囦歡涓?/font>
4錛氳綆?鎷嗙鏄粈涔堬紵
瑁呯錛氱敤浜庡湪鍨冨溇鍥炴敹鍫嗕腑瀛樺偍鍊肩被鍨嬨傝綆辨槸鍊肩被鍨嬪埌 object 綾誨瀷鎴栧埌姝ゅ肩被鍨嬫墍瀹炵幇鐨勪換浣曟帴鍙g被鍨嬬殑闅愬紡杞崲銆?
鎷嗙錛氫粠 object 綾誨瀷鍒板肩被鍨嬫垨浠庢帴鍙g被鍨嬪埌瀹炵幇璇ユ帴鍙g殑鍊肩被鍨嬬殑鏄懼紡杞崲銆?
5錛氫負浣曢渶瑕佽綆憋紵(涓轟綍瑕佸皢鍊肩被鍨嬭漿涓哄紩鐢ㄧ被鍨嬶紵)
涓縐嶆渶鏅氱殑鍦烘櫙鏄紝璋冪敤涓涓惈綾誨瀷涓篛bject鐨勫弬鏁扮殑鏂規硶錛岃Object鍙敮鎸佷換鎰忎負鍨嬶紝浠ヤ究閫氱敤銆傚綋浣犻渶瑕佸皢涓涓肩被鍨?濡侷nt32)浼犲叆鏃訛紝闇瑕佽綆便?
鍙︿竴縐嶇敤娉曟槸錛屼竴涓潪娉涘瀷鐨勫鍣紝鍚屾牱鏄負浜嗕繚璇侀氱敤錛岃屽皢鍏冪礌綾誨瀷瀹氫箟涓篛bject銆備簬鏄紝瑕佸皢鍊肩被鍨嬫暟鎹姞鍏ュ鍣ㄦ椂錛岄渶瑕佽綆便?
6錛氳綆?鎷嗙鐨勫唴閮ㄦ搷浣溿?
瑁呯錛?
瀵瑰肩被鍨嬪湪鍫嗕腑鍒嗛厤涓涓璞″疄渚嬶紝騫跺皢璇ュ煎鍒跺埌鏂扮殑瀵硅薄涓傛寜涓夋榪涜銆?
絎竴姝ワ細鏂板垎閰嶆墭綆″爢鍐呭瓨(澶у皬涓哄肩被鍨嬪疄渚嬪ぇ灝忓姞涓婁竴涓柟娉曡〃鎸囬拡鍜屼竴涓猄yncBlockIndex)銆?
絎簩姝ワ細灝嗗肩被鍨嬬殑瀹炰緥瀛楁鎷瘋礉鍒版柊鍒嗛厤鐨勫唴瀛樹腑銆?
絎笁姝ワ細榪斿洖鎵樼鍫嗕腑鏂板垎閰嶅璞$殑鍦板潃銆傝繖涓湴鍧灝辨槸涓涓寚鍚戝璞$殑寮曠敤浜嗐?
鏈変漢榪欐牱鐞嗚В錛氬鏋滃皢Int32瑁呯錛岃繑鍥炵殑鍦板潃錛屾寚鍚戠殑灝辨槸涓涓狪nt32銆傛垜璁や負涔熶笉鏄笉鑳借繖鏍風悊瑙o紝浣嗚繖紜疄鍙堟湁闂錛屼竴鏉ュ畠涓嶅叏闈紝浜屾潵鎸囧悜Int32騫舵病璇村嚭瀹冪殑瀹炶川(鍦ㄦ墭綆″爢涓?銆?
鎷嗙錛?br>媯鏌ュ璞″疄渚嬶紝紜繚瀹冩槸緇欏畾鍊肩被鍨嬬殑涓涓綆卞箋傚皢璇ュ間粠瀹炰緥澶嶅埗鍒板肩被鍨嬪彉閲忎腑銆?
鏈変功涓婅錛屾媶綆卞彧鏄幏鍙栧紩鐢ㄥ璞′腑鎸囧悜鍊肩被鍨嬮儴鍒嗙殑鎸囬拡錛岃屽唴瀹規嫹璐濆垯鏄祴鍊艱鍙ヤ箣瑙﹀彂銆傛垜瑙夊緱榪欏茍涓嶈绱с傛渶鍏抽敭鐨勬槸媯鏌ュ璞″疄渚嬬殑鏈川錛屾媶綆卞拰瑁呯鐨勭被鍨嬪繀闇鍖歸厤錛岃繖涓鐐逛笂錛屽湪IL灞備笂錛岀湅涓嶅嚭鍘熺悊浣曞湪錛屾垜鐨勭寽嫻嬶紝鎴栬鏄皟鐢ㄤ簡綾諱技GetType涔嬬被鐨勬柟娉曟潵鍙栧嚭綾誨瀷榪涜鍖歸厤(鍥犱負闇瑕佷弗鏍煎尮閰?銆?
7錛氳綆?鎷嗙瀵規墽琛屾晥鐜囩殑褰卞搷
鏄劇劧錛屼粠鍘熺悊涓婂彲浠ョ湅鍑猴紝瑁呯鏃訛紝鐢熸垚鐨勬槸鍏ㄦ柊鐨勫紩鐢ㄥ璞★紝榪欎細鏈夋椂闂存崯鑰楋紝涔熷氨鏄犳垚鏁堢巼闄嶄綆銆?
閭h濡備綍鍋氬憿錛?
棣栧厛錛屽簲璇ュ敖閲忛伩鍏嶈綆便?
姣斿涓婁緥2鐨勪袱縐嶆儏鍐碉紝閮藉彲浠ラ伩鍏嶏紝鍦ㄧ涓縐嶆儏鍐典笅錛屽彲浠ラ氳繃閲嶈澆鍑芥暟鏉ラ伩鍏嶃傜浜岀鎯呭喌錛屽垯鍙互閫氳繃娉涘瀷鏉ラ伩鍏嶃?
褰撶劧錛屽嚒浜嬪茍涓嶈兘緇濆錛屽亣璁句綘鎯蟲敼閫犵殑浠g爜涓虹涓夋柟紼嬪簭闆嗭紝浣犳棤娉曟洿鏀癸紝閭d綘鍙兘鏄綆變簡銆?
瀵逛簬瑁呯/鎷嗙浠g爜鐨勪紭鍖栵紝鐢變簬C#涓瑁呯鍜屾媶綆遍兘鏄殣寮忕殑錛屾墍浠ワ紝鏍規湰鐨勬柟娉曟槸瀵逛唬鐮佽繘琛屽垎鏋愶紝鑰屽垎鏋愭渶鐩存帴鐨勬柟寮忔槸浜嗚В鍘熺悊緇撲綍鏌ョ湅鍙嶇紪璇戠殑IL浠g爜銆傛瘮濡傦細鍦ㄥ驚鐜綋涓彲鑳藉瓨鍦ㄥ浣欑殑瑁呯錛屼綘鍙互綆鍗曢噰鐢ㄦ彁鍓嶈綆辨柟寮忚繘琛屼紭鍖栥?
8錛氬瑁呯/鎷嗙鏇磋繘涓姝ョ殑浜嗚В
瑁呯/鎷嗙騫朵笉濡備笂闈㈡墍璁查偅涔堢畝鍗曟槑浜嗭紝姣斿錛氳綆辨椂錛屽彉涓哄紩鐢ㄥ璞★紝浼氬鍑轟竴涓柟娉曡〃鎸囬拡錛岃繖浼氭湁浣曠敤澶勫憿錛?
鎴戜滑鍙互閫氳繃紺轟緥鏉ヨ繘涓姝ユ帰璁ㄣ?
涓句釜渚嬪瓙銆?
Struct A : ICloneable
{
public Int32 x;
public override String ToString() {
return String.Format(”{0}”,x);
}
public object Clone() {
return MemberwiseClone();
}
}
static void main()
{
A a;
a.x = 100;
Console.WriteLine(a.ToString());
Console.WriteLine(a.GetType());
A a2 = (A)a.Clone();
ICloneable c = a2;
Ojbect o = c.Clone();
}
5.0錛歛.ToString()銆傜紪璇戝櫒鍙戠幇A閲嶅啓浜員oString鏂規硶錛屼細鐩存帴璋冪敤ToString鐨勬寚浠ゃ傚洜涓篈鏄肩被鍨嬶紝緙栬瘧鍣ㄤ笉浼氬嚭鐜板鎬佽涓恒傚洜姝わ紝鐩存帴璋冪敤錛屼笉瑁呯銆?娉細ToString鏄疉鐨勫熀綾籗ystem.ValueType鐨勬柟娉?
5.1錛歛.GetType()錛孏etType鏄戶鎵夸簬System.ValueType鐨勬柟娉曪紝瑕佽皟鐢ㄥ畠錛岄渶瑕佷竴涓柟娉曡〃鎸囬拡錛屼簬鏄痑灝嗚瑁呯錛屼粠鑰岀敓鎴愭柟娉曡〃鎸囬拡錛岃皟鐢ㄥ熀綾葷殑System.ValueType銆?琛ヤ竴鍙ワ紝鎵鏈夌殑鍊肩被鍨嬮兘鏄戶鎵夸簬System.ValueType鐨?銆?
5.2錛歛.Clone()錛屽洜涓篈瀹炵幇浜咰lone鏂規硶錛屾墍浠ユ棤闇瑁呯銆?
5.3錛欼Cloneable杞瀷錛氬綋a2涓鴻漿涓烘帴鍙g被鍨嬫椂錛屽繀欏昏綆憋紝鍥犱負鎺ュ彛鏄竴縐嶅紩鐢ㄧ被鍨嬨?
5.4錛歝.Clone()銆傛棤闇瑁呯錛屽湪鎵樼鍫嗕腑瀵逛笂涓姝ュ凡瑁呯鐨勫璞¤繘琛岃皟鐢ㄣ?
闄勶細鍏跺疄涓婇潰鐨勫熀浜庝竴涓牴鏈殑鍘熺悊錛屽洜涓烘湭瑁呯鐨勫肩被鍨嬫病鏈夋柟娉曡〃鎸囬拡錛屾墍浠ワ紝涓嶈兘閫氳繃鍊肩被鍨嬫潵璋冪敤鍏朵笂緇ф壙鐨勮櫄鏂規硶銆傚彟澶栵紝鎺ュ彛綾誨瀷鏄竴涓紩鐢ㄧ被鍨嬨傚姝わ紝鎴戠殑鐞嗚В錛岃鏂規硶琛ㄦ寚閽堢被浼糃++鐨勮櫄鍑芥暟琛ㄦ寚閽堬紝瀹冩槸鐢ㄦ潵瀹炵幇寮曠敤瀵硅薄鐨勫鎬佹満鍒剁殑閲嶈渚濇嵁銆?
9錛氬浣曟洿鏀瑰凡瑁呯鐨勫璞? 1銆侀鍏堜粠鎵樼鍫嗕腑涓烘柊鐢熸垚鐨勫紩鐢ㄥ璞″垎閰嶅唴瀛樸?/p>
2銆佺劧鍚庡皢鍊肩被鍨嬬殑鏁版嵁鎷瘋礉鍒板垰鍒氬垎閰嶇殑鍐呭瓨涓?/p>
3銆佽繑鍥炴墭綆″爢涓柊鍒嗛厤瀵硅薄鐨勫湴鍧銆?/p>
鍙互鐪嬪嚭錛岃繘琛屼竴嬈¤綆辮榪涜鍒嗛厤鍐呭瓨鍜屾嫹璐濇暟鎹繖涓ら」姣旇緝褰卞搷鎬ц兘鐨勬搷浣溿?/p>
灝嗗紩鐢ㄥ唴鍨嬭漿鎹負鍊煎唴鍨嬶紝闇瑕佽繘琛屾媶綆辨搷浣?unboxing)錛?/p>
1銆侀鍏堣幏鍙栨墭綆″爢涓睘浜庡肩被鍨嬮偅閮ㄥ垎瀛楁鐨勫湴鍧錛岃繖涓姝ユ槸涓ユ牸鎰忎箟涓婄殑鎷嗙銆?/p>
2銆佸皢寮曠敤瀵硅薄涓殑鍊兼嫹璐濆埌浣嶄簬綰跨▼鍫嗘爤涓婄殑鍊肩被鍨嬪疄渚嬩腑銆?/p>
緇忚繃榪?姝ワ紝鍙互璁や負鏄悓boxing鏄簰鍙嶆搷浣溿備弗鏍兼剰涔変笂鐨勬媶綆憋紝騫朵笉褰卞搷鎬ц兘錛屼絾浼撮殢榪欎箣鍚庣殑鎷瘋礉鏁版嵁鐨勬搷浣滃氨浼氬悓boxing鎿嶄綔涓竴鏍峰獎鍝嶆ц兘銆?br>
瀵逛簬宸茶綆辯殑瀵硅薄錛屽洜涓烘棤娉曠洿鎺ヨ皟鐢ㄥ叾鎸囧畾鏂規硶錛屾墍浠ュ繀欏誨厛鎷嗙錛屽啀璋冪敤鏂規硶錛屼絾鍐嶆鎷嗙錛屼細鐢熸垚鏂扮殑鏍堝疄渚嬶紝鑰屾棤娉曚慨鏀硅綆卞璞°傛湁鐐規檿鍚э紝鎰熻鍦ㄨ緇曞彛浠ゃ傝繕鏄婦涓緥瀛愭潵璇達細(鍦ㄤ笂渚嬩腑榪藉姞change鏂規硶)
public void Change(Int32 x) {
this.x = x;
}
璋冪敤錛?
A a = new A();
a.x = 100;
Object o = a; //瑁呯鎴恛錛屼笅闈紝鎯蟲敼鍙榦鐨勫箋?
((A)o).Change(200); //鏀規帀浜嗗悧錛熸病鏀規帀銆?
娌℃敼鎺夌殑鍘熷洜鏄痮鍦ㄦ媶綆辨椂錛岀敓鎴愮殑鏄復鏃剁殑鏍堝疄渚婣錛屾墍浠ワ紝鏀瑰姩鏄熀浜庝復鏃禔鐨勶紝騫舵湭鏀瑰埌瑁呯瀵硅薄銆?
(闄勶細鍦ㄦ墭綆++涓紝鍏佽鐩存帴鍙栧姞鎷嗙鏃剁涓姝ュ緱鍒扮殑瀹炰緥寮曠敤錛岃岀洿鎺ユ洿鏀癸紝浣咰#涓嶈銆?
閭h濡備綍鏄ソ錛?
鍡紝閫氳繃鎺ュ彛鏂瑰紡錛屽彲浠ヨ揪鍒扮浉鍚岀殑鏁堟灉銆?
瀹炵幇濡備笅錛?
interface IChange {
void Change(Int32 x);
}
struct A : IChange {
…
}
璋冪敤錛?
((IChange)o).Change(200);//鏀規帀浜嗗悧錛熸敼鎺変簡銆?
涓哄暐鐜板湪鍙互鏀癸紵
鍦ㄥ皢o杞瀷涓篒Change鏃訛紝榪欓噷涓嶄細榪涜鍐嶆瑁呯錛屽綋鐒舵洿涓嶄細鎷嗙錛屽洜涓簅宸茬粡鏄紩鐢ㄧ被鍨嬶紝鍐嶅洜涓哄畠鏄疘Change綾誨瀷錛屾墍浠ュ彲浠ョ洿鎺ヨ皟鐢–hange錛屼簬鏄紝鏇存敼鐨勪篃灝辨槸宸茶綆卞璞′腑鐨勫瓧孌典簡錛岃揪鍒版湡鏈涚殑鏁堟灉銆?br>
10銆?/strong>--------------------------
灝嗗肩被鍨嬭漿鎹負寮曠敤綾誨瀷錛岄渶瑕佽繘琛岃綆辨搷浣?boxing)錛?/p>
11銆?/strong>-------------------------
NET鐨勬墍鏈夌被鍨嬮兘鏄敱鍩虹被System.Object緇ф壙榪囨潵鐨勶紝鍖呮嫭鏈甯哥敤鐨勫熀紜綾誨瀷錛歩nt, byte, short錛宐ool絳夌瓑錛屽氨鏄鎵鏈夌殑浜嬬墿閮芥槸瀵硅薄銆傚鏋滅敵鏄庤繖浜涚被鍨嬪緱鏃跺欓兘鍦ㄥ爢(HEAP)涓垎閰嶅唴瀛橈紝浼氶犳垚鏋佷綆鐨勬晥鐜囷紒(涓腑鍘熷洜浠ュ強鍏充簬鍫嗗拰鏍堝緱鍖哄埆浼氬湪鍙︿竴綃囬噷鍗曠嫭寰楄璇達紒)
.NET濡備綍瑙e喅榪欎釜闂寰椾簡錛熸鏄氳繃灝嗙被鍨嬪垎鎴愬煎瀷(value)鍜屽紩鐢ㄥ瀷(regerencetype)錛孋#涓畾涔夌殑鍊肩被鍨嬪寘鎷師綾誨瀷錛?span style="COLOR: green">Sbyte銆丅yte銆丼hort銆乁short銆両nt銆乁int銆丩ong銆乁long銆丆har銆丗loat銆丏ouble銆丅ool銆丏ecimal錛夈佹灇涓?enum)銆佺粨鏋?struct)錛屽紩鐢ㄧ被鍨嬪寘鎷細綾匯佹暟緇勩佹帴鍙c佸鎵樸佸瓧絎︿覆絳夈?br>鍊煎瀷灝辨槸鍦ㄦ爤涓垎閰嶅唴瀛橈紝鍦ㄧ敵鏄庣殑鍚屾椂灝卞垵濮嬪寲錛屼互紜繚鏁版嵁涓嶄負NULL錛?br>寮曠敤鍨嬫槸鍦ㄥ爢涓垎閰嶅唴瀛橈紝鍒濆鍖栦負null錛屽紩鐢ㄥ瀷鏄渶瑕丟ARBAGE COLLECTION鏉ュ洖鏀跺唴瀛樼殑錛屽煎瀷涓嶇敤錛岃秴鍑轟簡浣滅敤鑼冨洿錛岀郴緇熷氨浼氳嚜鍔ㄩ噴鏀撅紒
涓嬮潰灝辨潵璇磋綆卞拰鎷嗙鐨勫畾涔夛紒
瑁呯灝辨槸闅愬紡鐨勫皢涓涓煎瀷杞崲涓哄紩鐢ㄥ瀷瀵硅薄銆傛瘮濡傦細
int i=0;
Syste.Object obj=i;
榪欎釜榪囩▼灝辨槸瑁呯錛佸氨鏄皢i瑁呯錛?br>鎷嗙灝辨槸灝嗕竴涓紩鐢ㄥ瀷瀵硅薄杞崲鎴愪換鎰忓煎瀷錛佹瘮濡傦細
int i=0;
System.Object obj=i;
int j=(int)obj;
榪欎釜榪囩▼鍓?鍙ユ槸灝唅瑁呯錛屽悗涓鍙ユ槸灝唎bj鎷嗙錛?/p>
]]>
WMI Performance Adapter
榛樿姝?欏規湇鍔℃槸紱佹鐨?
鏈枃浠?/span>VC6.0瀵硅瘽妗嗗簲鐢ㄧ▼搴忎負渚嬶紝褰撻紶鏍囧湪鎸夐挳涓婄Щ鍔ㄣ佹寜涓嬫垨鑰呭脊璧鋒椂鏄劇ず鎸夐挳鍔熻兘鎻愮ず鏂囨湰錛屾湰鏂囧皢鍦ㄦ寜閽笂鏄劇ず鍔熻兘鎻愮ず鏂囨湰錛?font face="Times New Roman">“IT鐭ラ亾緗?/font>”銆?/font>
鍦?font face="Times New Roman">CXXXDlg.h鏂囦歡涓畾涔夛細
public:
CToolTipCtrl m_openToolTip;
鍦?font face="Times New Roman">CXXXDlg.cpp鐨?/font>OnInitDialog()涓垵濮嬪寲錛?nbsp;
m_openToolTip.Create(this);
m_openToolTip.AddTool( GetDlgItem(IDC_BOTTON), "IT鐭ラ亾緗?/font>" );
m_openToolTip.SetDelayTime(200);
m_openToolTip.SetTipTextColor( #0000ff );
m_openToolTip.SetTipBkColor( #ffffff);
m_openToolTip.Activate(TRUE);
閲嶈澆鍑芥暟PreTranslateMessage
BOOL CXXXDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: Add your specialized code here and/or call the base class
switch(pMsg->message)
{
case WM_LBUTTONDOWN:
case WM_LBUTTONUP:
case WM_MOUSEMOVE:
m_openToolTip.RelayEvent(pMsg);
}
return CDialog::PreTranslateMessage(pMsg);
}
鎵浠ラ渶瑕佸湪鏈哄櫒涓婂畨瑁呬簡EVC4.0鍜孲P4錛岀粨鏋滆繍琛岀▼搴忓嚭鐜幫細
"One or more
files from the Emulator for Windows CE installation is missing. Please
reinstall Emulator for Windows CE and try again."
瑙e喅鍔炴硶錛氭寜鐓т笂闈㈢殑鏂規硶榪涘叆璁懼綆$悊鍣紞錛為珮綰э紞錛炲惎鍔ㄥ拰鏁呴殰鎭㈠(閫夋嫨璁劇疆)->鍦ㄥ惎鍔ㄥ拰鏁呴殰鎭㈠瀵硅瘽妗嗕腑閫夋嫨緙栬緫-> 灝哹oot.ini 涓璶oexcute淇敼涓篹xecute 鐒跺悗閲嶅惎鏈哄櫒灝卞彲浠ヤ簡銆?鍒版鎴戜滑宸茬粡瀹屾垚寮鍙戠幆澧冪殑鎼緩銆?/font>
寰蔣寤鴻鐨勫畨瑁呮楠ゅ畨瑁?
ActiveSync->eVC4->eVC4 sp4->smartphone SDK->.net framework->妯℃嫙鍣╥mages錛涘湪榪涜瀹夎鍓嶏紝寤鴻鎮ㄥ厛鏌ョ湅娉ㄦ剰浜嬮」銆?/font>
寮鍙戝伐鍏蜂笅杞藉湴鍧
1錛宔VC4.0,涓嬭澆鍦板潃錛?br>http://download.microsoft.com/download/c/3/f/c3f8b58b-9753-4c2e-8b96-2dfe3476a2f7/eVC4.exe
http://download.microsoft.com/download/a/7/3/a735c7fb-dcbd-429f-9090-d09b3b15d3fa/evc4sp4.exe
eVC搴忓垪鍙鳳細TRT7H-KD36T-FRH8D-6QH8P-VFJHQ
2錛宻martphone SDK錛宲acket PC SDK涓嬭澆鍦板潃錛?/font>
smartphone 2003 SDK:
http://www.microsoft.com/downloads/details.aspx?FamilyId=A6C4F799-EC5C-427C-807C-4C0F96765A81&displaylang=en
packet PC 2003 SDK:
http://microsoft.com/downloads/details.aspx?FamilyId=9996B314-0364-4623-9EDE-0B5FBB133652&displaylang=en
3,涓枃image鏂囦歡涓嬭澆錛?br>smart phone錛?br>http://www.microsoft.com/downloads/info.aspx?na=46&p=1&SrcDisplayLang=en&SrcCategoryId=&SrcFamilyId=2c144e09-7e75-4275-a6bb-1c3cd55369c5&genscs=0&u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2f6%2fb%2f8%2f6b8d7515-0d0a-4d03-b11c-b31886fbb9ff%2fWindows+Mobile+2003+Second+Edition+Emulator+Images+for+Smartphone+-+CHS.msi
4錛屽畨瑁卛mage鏂囦歡錛屽畨瑁呭畬鍚庝綘騫舵病鏈夊彂鐜頒綘鐨勬ā鎷熷櫒鍙樻垚涓枃鐨勶紝榪欐椂闇瑕佸涓嬫搷浣滐細
C:\Program Files\Pocket PC 2003 Emulation\CHS\Pocket_PC\PPC_2003_CHS.bin5,娉ㄦ剰浜嬮」錛?/strong>
瑕佷繚璇佷綘鐨刅BS鑴氭湰鏈嶅姟鍣ㄨ兘姝e父榪愯錛岀綉涓婂緢澶氫漢瑁呬笉
鎴愬姛錛岄兘鏄洜涓篤BS鑴氭湰娌℃湁姝e父鎵ц銆傚鏋滀綘瑁呬簡瓚呯駭瑙i湼錛屼竴瀹氳娉ㄦ剰錛屽洜涓鴻秴綰цВ闇鎬細鏇存敼
VBS鏂囦歡鐨勬墦寮鏂瑰紡錛屾渶濂芥槸鎶婅В闇稿厛鍗歌澆錛屽嵏杞藉悗鍐嶈繘鍏?#8220;鏂囦歡澶歸夐」”鐨?#8220;鏂囦歡綾誨瀷”涓仮澶峍BS鐨勯粯璁ゆ墦寮鏂瑰紡銆傛墜鍔ㄦ洿鏀規墦寮鏂瑰紡濂藉儚涓嶈銆?br>濡傛灉浣犲畨瑁呭畬鍚庯紝鍙戠幇榪欎釜閿欒錛欳VTRES : fatal error CVT1102: out of memory銆傝鐢ㄥ畨瑁呯洰褰曚笅闈㈢殑\Common\EVC\Bin\CVTRES.EXE瑕嗙洊EVC\wce420\bin\涓嬮潰鐨勫悓鍚嶆枃浠惰瘯璇?/font>
鍏朵腑Chinese (Simplified) Emulation Images錛堟槸Pocket PC 2003 SDK鐨勪腑鏂囧嵃璞℃枃浠訛級涓嶈兘鏄劇ず涓枃鐨勯棶棰樻妸鑻辨枃妯℃嫙鍣ㄥ搴旂殑蹇嵎鏂瑰紡鏀懼埌涓枃妯℃嫙鍣ㄧ殑鐩綍涓嬶紝鏀逛竴涓嬮噷闈㈢殑SKIN鍜孊IN鏂囦歡璺緞錛岃繍琛屼竴涓嬶紝鍐嶆妸 EVC鎵撳紑錛屽湪configure platform manager涓緗竴涓嬭繛鍒頒腑鏂囨ā鎷熷櫒涓婂氨鍙互浜嗐?/font>
杞嚜:http://www.2guys.cn/collection/17461620481620.html
緇忓父鏈夋湅鍙嬫兂瀛︿範 Windows Mobile
寮鍙戯紝浣撻獙縐誨姩寮鍙戠殑涔愯叮錛屼絾涓嶇煡閬撲粠鍝噷涓嬭澆鍚勭寮鍙戝伐鍏峰拰瀛︿範璧勬枡銆備簬鏄垜鏁寸悊浜嗕竴涓垪琛紝閲岄潰鍖呭惈浜嗗悇涓増鏈殑 Windows Mobile
SDK, .NET Compact Framework, SQL Server CE, Device Emulator, Emulator
Image 鍜屽涔犺祫鏂欑殑涓嬭澆閾炬帴銆?br>
濡傛灉浣犲彂鐜拌繕鏈夊叾浠栦笉閿欑殑宸ュ叿娌℃湁鍦ㄨ繖涓垪琛ㄤ腑錛岃鍛婅瘔鎴戯紝鎴戜細鎶婂畠鍔犲叆鍒拌繖涓垪琛ㄤ腑錛岃鏇村鐨勪漢鐢ㄤ笂銆?br>
Windows Mobile 2003 SDK for Pocket PC (鐩存帴涓嬭澆)
Windows Mobile 2003 SDK for Smartphone
Windows Mobile 5.0 SDK for Pocket PC (鐩存帴涓嬭澆)
Windows Mobile 5.0 SDK for Smartphone
Windows Mobile 6 SDK
Windows CE 5.0: Standard Software Development Kit (SDK)
.NET Compact Framework 1.0 SP3 Redistributable
.NET Compact Framework 2.0 Service Pack 1 Redistributable
.NET Compact Framework 2.0 Service Pack 1 Patch
.NET Compact Framework 2.0 Service Pack 2 Redistributable
.NET Compact Framework 3.5 Redistributable
Power Toys for .NET Compact Framework 3.5
SQL Server CE 2.0 Server Tools SP4
SQL Server 2005 Compact Edition
SQL Server 2005 Compact Edition Tools for Visual Studio 2005 Service Pack 1
SQL Server 2005 Compact Edition Server Tools
SQL Server 2005 Compact Edition Books Online (March 2007)
SQL Server 2005 Compact Edition Access Database Synchronizer
SQL Server Compact 3.5 for Windows Desktop
SQL Server Compact 3.5 Books Online and Samples
Synchronization Services for ADO.NET Books Online
ADOCE 3.1 for Windows 3.0 SDKs
Standalone Device Emulator 1.0 with Windows Mobile OS Images
Microsoft Device Emulator 2.0 Standalone
Virtual Machine Network Driver for Microsoft Device Emulator
Microsoft Windows CE 5.0 Device Emulator
Emulator Images for Windows Mobile 2003-based Pocket PC Development
Emulator Images for Windows Mobile 2003-based Smartphone Development
Emulator Images for Windows Mobile 2003 Second Edition-based Pocket PC Development
Emulator Images for Windows Mobile 2003 Second Edition-based Smartphone Development
Localized Windows Mobile 5.0 Pocket PC Emulator Images
Localized Windows Mobile 5.0 Smartphone Emulator Images
eMbedded Visual C++ 4.0
eMbedded Visual C++ 4.0 SP4
OpenNETCF Smart Device Framework v1.4
OpenNETCF Smart Device Framework v2.0
Mobile Client Software Factory – July 2006
Architecture Overview for Mobile Applications
UI Design Considerations in Mobile Applications
Designing Mobile Applications in an Occasionally-Connected World
Microsoft Windows Mobile Device Center 6.1 for Windows Vista (32-bit)
Microsoft Windows Mobile Device Center 6.1 for Windows Vista (64-bit)
Microsoft ActiveSync 4.5
Redistributable Server Components for Windows Mobile 5.0
Device Security Manager PowerToy for Windows Mobile 5.0
Windows Mobile Network Analyzer PowerToy
Microsoft Smart Devices Remote Tools Framework Powertoy 1.0
Windows Mobile Developer Power Toys