① 紼嬪簭鑴卞3鏄浠涔堟剰鎬濓紵
澹崇殑姒傚康錛
鎵璋撯滃3鈥濆氨鏄涓撻棬鍘嬬緝鐨勫伐鍏楓
榪欓噷鐨勫帇緙╁苟涓嶆槸鎴戜滑騫蟲椂浣跨敤鐨凴AR銆乑IP榪欎簺宸ュ叿鐨勫帇緙╋紝澹崇殑鍘嬬緝鎸囩殑鏄閽堝筫xe銆乧om銆佸拰dll絳夌▼搴忔枃浠惰繘琛屽帇緙╋紝鍦ㄧ▼搴忎腑鍔犲叆涓孌靛傚悓淇濇姢灞傜殑浠g爜錛屼嬌鍘熺▼搴忔枃浠朵唬鐮佸け鍘繪湰鏉ラ潰鐩錛屼粠鑰屼繚鎶ょ▼搴忎笉琚闈炴硶淇鏀瑰拰鍙嶇紪璇戱紝榪欐靛傚悓淇濇姢灞傜殑浠g爜錛屼笌鑷鐒剁晫鍔ㄦ嶇墿鐨勫3鍦ㄥ姛鑳戒笂鏈夊緢澶氱浉浼肩殑鍦版柟錛屾墍浠ユ垜浠灝卞艦璞″湴縐頒箣涓虹▼搴忕殑澹熾
澹崇殑浣滅敤錛
1.淇濇姢紼嬪簭涓嶈闈炴硶淇鏀瑰拰鍙嶇紪璇戙
2.瀵圭▼搴忎笓闂ㄨ繘琛屽帇緙╋紝浠ュ噺灝忔枃浠跺ぇ灝忥紝鏂逛究浼犳挱鍜屽偍瀛樸
澹沖拰鍘嬬緝杞浠剁殑鍘嬬緝鐨勫尯鍒鏄
鍘嬬緝杞浠跺彧鑳藉熷帇緙╃▼搴
鑰岀粡榪囧3鍘嬬緝鍚庣殑exe銆乧om鍜宒ll絳夌▼搴忔枃浠跺彲浠ヨ窡姝e父鐨勭▼搴忎竴鏍瘋繍琛
涓嬮潰鏉ヤ粙緇嶄竴涓媯嫻嬪3鐨勮蔣浠
PEID v0.92
榪欎釜杞浠跺彲浠ユ嫻嬪嚭 450縐嶅3
鏂扮増涓澧炲姞鐥呮瘨鎵鎻忓姛鑳斤紝鏄鐩鍓嶅悇綾繪煡澹沖伐鍏蜂腑錛屾ц兘鏈寮虹殑銆
鍙﹀栬繕鍙璇嗗埆鍑篍XE鏂囦歡鏄鐢ㄤ粈涔堣璦緙栧啓鐨刅C++銆丏elphi銆乂B鎴朌elphi絳夈
鏀鎸佹枃浠跺す鎵歸噺鎵鎻
鎴戜滑鐢≒EID瀵筫asymail.exe榪涜屾壂鎻
鎵懼埌澹崇殑綾誨瀷浜
UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo
璇存槑鏄疷PX鐨勫3
涓嬮潰榪涜
姝ラ2 鑴卞3
瀵逛竴涓鍔犱簡澹崇殑紼嬪簭錛屽幓闄ゅ叾涓鏃犲叧鐨勫共鎵頒俊鎮鍜屼繚鎶ら檺鍒訛紝鎶婁粬鐨勫3鑴卞幓錛岃В闄や吉瑁咃紝榪樺師杞浠舵湰鏉ョ殑闈㈢洰銆傝繖涓榪囩▼灝卞彨鍋氳劚澹熾
鑴卞3鎴愬姛鐨勬爣蹇
鑴卞3鍚庣殑鏂囦歡姝e父榪愯岋紝鍔熻兘娌℃湁鎹熻椼
榪樻湁涓鑸鑴卞3鍚庣殑鏂囦歡闀垮害閮戒細澶т簬鍘熸枃浠剁殑闀垮害銆
鍗充嬌鍚屼竴涓鏂囦歡錛岄噰鐢ㄤ笉鍚岀殑鑴卞3杞浠惰繘琛岃劚澹籌紝鐢變簬鑴卞3杞浠剁殑鏈虹悊涓嶉氾紝鑴卞嚭鏉ョ殑鏂囦歡澶у皬涔熶笉灝界浉鍚屻
鍏充簬鑴卞3鏈夋墜鍔ㄨ劚澹沖拰鑷鍔ㄨ劚澹
鑷鍔ㄨ劚澹沖氨鏄鐢ㄤ笓闂ㄧ殑鑴卞3鏈鴻劚 寰堢畝鍗 鎸夊嚑涓嬪氨 OK浜
鎵嬪姩鑴卞3鐩稿硅嚜鍔ㄨ劚澹 闇瑕佺殑鎶鏈鍚閲忓井楂 榪欓噷涓嶅氳翠簡
UPX鏄涓縐嶅緢鑰佽屼笖寮哄ぇ鐨勫3 涓嶈繃瀹冪殑鑴卞3鏈洪殢澶勫氨鑳芥壘鍒
UPX鏈韜紼嬪簭灝卞彲浠ラ氳繃
UPX 鏂囦歡鍚 錛峝
鏉ヨВ鍘嬬緝 涓嶈繃榪欎簺闇瑕佺殑 鍛戒護絎︿腑杈撳叆
浼樼偣鏂逛究蹇鎹 緙虹偣DOS鐣岄潰
涓轟簡璁╁ぇ瀹剁渷鍘婚夯鐑︾殑鎿嶄綔 灝變駭鐢熶簡涓縐嶅彨 UPX SHELL鐨勫栧3杞浠
UPX SHELL v3.09
UPX 澶栧3紼嬪簭錛
鐩鐨勮︰PX鐨勮劚澹沖姞澹沖偦鐡滃寲
娉錛氬傛灉紼嬪簭娌℃湁鍔犲3 閭d箞鎴戜滑灝卞彲浠ョ渷鍘葷浜屾ョ殑鑴卞3浜嗭紝鐩存帴瀵硅蔣浠惰繘琛屽垎鏋愪簡銆
鑴卞畬鍚 鎴戜滑榪涜
姝ラ3
榪愯岀▼搴
灝濊瘯娉ㄥ唽
鑾峰彇娉ㄥ唽鐩稿叧淇℃伅
閫氳繃灝濊瘯娉ㄥ唽 鎴戜滑鍙戠幇涓涓鍏抽敭鐨勫瓧絎︿覆
鈥滃簭鍒楀彿杈撳叆閿欒鈥
姝ラ4
鍙嶆眹緙
鍙嶆眹緙栦竴鑸鐢ㄥ埌鐨勮蔣浠 閮芥槸 W32Dasm
W32dasm瀵逛簬鏂版墜 鏄撲簬涓婃墜 鎿嶄綔綆鍗
W32Dasm鏈夊緢澶氱増鏈 榪欓噷鎴戞帹鑽愪嬌鐢 W32Dasm 鏃犳瀬鐗
鎴戜滑鐜板湪鍙嶆眹緙朩ebEasyMail鐨勭▼搴忔枃浠秂asymail.exe
鐒跺悗鐪嬬湅鑳戒笉鑳芥壘鍒板垰鎵嶇殑瀛楃︿覆
姝ラ5
閫氳繃eXeScope榪欎釜杞浠舵潵鏌ョ湅鏈鑳藉湪w32dasm涓姝g『鏄劇ず鐨勫瓧絎︿覆淇℃伅
eXeScope v6.50
鏇存敼瀛椾綋錛屾洿鏀硅彍鍗曪紝鏇存敼瀵硅瘽妗嗙殑鎺掑垪錛岄噸鍐欏彲鎵ц屾枃浠剁殑璧勬簮錛屽寘鎷(EXE錛孌LL錛孫CX錛夌瓑銆傛槸鏂逛究寮哄ぇ鐨勬眽鍖栧伐鍏鳳紝鍙浠ョ洿鎺ヤ慨鏀圭敤 VC++ 鍙 DELPHI 緙栧埗鐨勭▼搴忕殑璧勬簮錛屽寘鎷鑿滃崟銆佸硅瘽妗嗐佸瓧絎︿覆琛ㄧ瓑
鏂扮増鍙浠ョ洿鎺ユ煡鐪 鍔犲3鏂囦歡鐨勮祫婧
鎴戜滑鎵撳紑eXeScope
鎵懼埌濡備笅瀛椾覆絎
122,"搴忓垪鍙瘋緭鍏ラ敊璇 "
123,"鎮鍠滄偍鎴愪負WebEasyMail姝e紡鐢ㄦ埛涓鐨勪竴鍛! "
124,娉ㄥ唽鎴愬姛
125,澶辮觸
閲嶇偣鏄122
姝ラ6
鍐嶆¤繑鍥 w32dasm
* Possible Reference to String Resource ID=00122: "?椴筫?"
浣嗘槸鍙屽嚮鍚
鎻愮ず璇存壘涓嶅埌榪欎釜瀛椾覆絎
涓嶆槸娌℃湁 鏄鍥犱負 "?椴筫?"鏄涔辯爜 w32dasm瀵逛簬涓鏂囨樉紺轟笉鏄澶濂
姣曠珶涓嶆槸鍥戒駭杞浠
鍏堟妸浠婂ぉ浼氱敤鍒扮殑奼囩紪鍩烘湰鎸囦護璺熷ぇ瀹惰В閲婁竴涓
mov a,b ;鎶奲鐨勫艱祴緇檃錛屼嬌a錛漛
call 錛氳皟鐢ㄥ瓙紼嬪簭 錛屽瓙紼嬪簭浠ret緇撲負
ret 錛氳繑鍥炰富紼嬪簭
je鎴杍z 錛氳嫢鐩哥瓑鍒欒煩杞
jne鎴杍nz 錛氳嫢涓嶇浉絳夊垯璺寵漿
push xx錛歺x 鍘嬫爤
pop xx錛歺x 鍑烘爤
鏍堬紝灝辨槸閭d簺鐢辯紪璇戝櫒鍦ㄩ渶瑕佺殑鏃跺欏垎閰嶏紝鍦ㄤ笉闇瑕佺殑鏃跺欒嚜鍔ㄦ竻妤氱殑鍙橀噺鐨勫瓨鍌ㄥ尯銆傞噷闈㈢殑鍙橀噺閫氬父鏄灞閮ㄥ彉閲忋佸嚱鏁板弬鏁扮瓑銆
鎴戜滑鎼滅儲
Possible Reference to String Resource ID=00122
鍥犱負瀵笶鏂囨敮鎸佸緢濂
鎴戜滑鏉ュ埌浜
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00406F17(C) //璺寵漿鏉ヨ嚜 406F17
|
* Possible Reference to String Resource ID=00125: "1%"
|
:004070DD 6A7D push 0000007D
:004070DF 8D4C2410 lea ecx, dword ptr [esp+10]
:004070E3 E8F75A1200 call 0052CBDF
* Possible Reference to String Resource ID=00122: "?椴筫?"
|
:004070E8 6A7A push 0000007A
:004070EA 8D4C2408 lea ecx, dword ptr [esp+08]
:004070EE E8EC5A1200 call 0052CBDF
鎴戜滑鏉ュ埌
:00406F01 8B876C080000 mov eax, dword ptr [edi+0000086C]榪欓噷鏄瀵
:00406F07 8B4C2408 mov ecx, dword ptr [esp+08]
:00406F0B 50 push eax//榪欎袱涓猠ax鍜宔cx鍏ユ爤灝辨瘮杈冭╂垜浠鎬鐤戜簡
:00406F0C 51 push ecx//浜х敓娉ㄥ唽鐮
:00406F0D E8AE381100 call 0051A7C0//榪機ALL閲屽規敞鍐屼綅搴旇ヤ細鏈夎劇疆
:00406F12 83C40C add esp, 0000000C
:00406F15 85C0 test eax, eax// 媯嫻嬫敞鍐屼綅
:00406F17 0F85C0010000 jne 004070DD //涓嶅瓨鍦ㄦ敞鍐屼綅 灝變細璺沖埌4070DD灝變細鍑虹幇閭d釜閿欒鐨勫瓧涓茬︿簡
鎴戜滑璁頒綇406F01榪欎釜鍦板潃
鎺ョ潃榪涜屼笅涓姝
姝ラ7
榪欎竴姝ユ垜浠榪涜岀殑鏄璋冭瘯
鐢ㄥ埌鐨勮蔣浠舵槸ollydbg
濂戒簡鎴戜滑鎵懼埌浜 娉ㄥ唽鐮0012AF04 00FD4A10 ASCII ""
浣嗘槸榪欎釜騫朵笉鏄鎴戜滑鐨勪富瑕佺洰鐨
鎴戜滑榪樿佸仛鍑哄睘浜庤嚜宸辯殑娉ㄥ唽鏈
鐩鎬俊榪欎釜鏄寰堝氫漢姊﹀瘣浠ユ眰鐨勪簨鎯
姝ラ8
鍒朵綔娉ㄥ唽鏈
娉ㄥ唽鏈烘垜浠闇瑕佺殑鏄涓涓狵EYMAKE鐨勮蔣浠
鍥犱負2.0鏄婕旂ず鐗堣屼笖鍋滄㈡洿鏂頒簡
鎵浠ユ垜浠鐢1.73鐗
鍋氫竴涓鍐呭瓨娉ㄥ唽鏈 闇瑕佷笅闈㈠嚑涓璧勬枡
涓鏂鍦板潃錛406F0C
涓鏂嬈℃暟錛1
絎涓瀛楄妭錛51
鎸囦護闀垮害錛1
濂戒簡 涓涓瀹岀編鐨勬敞鍐屾満 灝變駭鐢熶簡
榪樹笉璧跺揩鍙戠粰浣犵殑鏈嬪弸 鐐鑰涓涓
淇濊瘉璁╀粬榪風硦姝 浣╂湇寰椾綘瑕佹
鍏跺疄鏈鍚庤繕鏈夊嚑涓姝ラ
灝辨槸鎾板啓鐮存枃
涓嶈繃澶у墮兘鏄鏂版墜 榪欎釜姝ラ 灝卞幓浜嗗惂
涓嶇煡涓嶈夎翠簡榪欎箞澶氬簾璇 甯屾湜鑳藉瑰ぇ瀹舵湁浜涗綔鐢
濡傛灉鏈変粈涔堜笉鎳 涓嶇悊瑙g殑浜嬫儏 璇瘋仈緋繪垜 鎴栬呭埌璁哄潧鍙戣創
QQ:9595859
MSN:[email protected]
浠婂ぉ鐨勮劇▼灝卞埌榪欓噷 澶у惰刀蹇鍘誨姩鎵嬪疄璺靛惂鍀烇紒
--------------------------------------------------------------------------------
-- 浣滆咃細admin
-- 鍙戝竷鏃墮棿錛2005-10-11 11:13:00
-- 瀹炴垬鏌ュ3鑴卞3鍒朵綔鐮磋В娉ㄥ唽鏈烘渶璇︾粏鐨勬暀紼
澶у跺ソ錛屾垜鏄痥carhc
浠婂ぉ8鏈1鏃ヤ簡 鍒氫粠鍖婚櫌鍥炴潵 姝eソ鍑屾櫒
榪欐湡鐨勮劇▼鍋氭櫄浜 榪欓噷緇欏ぇ瀹墮亾涓姝
8鏈1鏃 濡傛灉鎴戞病璁伴敊
鏄寤哄啗鑺
鏃㈢劧鏄寤哄啗鑺 涔熻佽薄寰佹х殑寮勪簺涓滆タ鏉
涓轟簡寤哄啗鑺 榪欐湡鎴戦夋嫨鎵撳嚮榛戞殫鍔垮姏錛嶏紞榛戠ぞ浼
閭d箞浠婂ぉ鐨勪富棰樺氨鏄
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛
榪庢帴寤哄啗鑺傦紝閾查櫎榛戠ぞ浼
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛
棣栧厛浠嬬粛杞浠
榛戠ぞ浼2.0
[鍔熻兘綆浠媇:
1 浜斿ぇ蹇呭囧姛鑳
榪滅▼灞忓箷; 瀹屽叏鎺у埗; 鏂囦歡浼犻; Telnet; 榪滅▼鍏蟲満
2 鎻愪緵IP鍙嶅脊瀹氫綅鍔熻兘
鍙浠ラ氳繃闈欐両P鍔ㄦ佸煙鍚,緗戦〉鏂囦歡鐨勬柟寮忓弽寮歸氱煡IP.
3 闆嗘垚vidc瀹㈡埛絝
鍐呯綉鐨勬湅鍙嬫兂鐢ㄨ嚜鍔ㄤ笂綰垮姛鑳,鍙浠ュ疄鐜頒簡
4 鏈杞浠墮泦鎴愪簡甯哥敤鏀誨嚮宸ュ叿(濡侽penTelnet OpenTftp絳)
閫氳繃IPC鎷瘋礉,鑰屼笖甯︽湁鏍囧噯鐨勬嫹璐濊繘搴,鍏ㄧ悆棣栨¢潰涓;
opentelnet灝變笉浠嬬粛浜,鐩鎬俊澶у墮兘鐭ラ亾;
opentftp涓烘湰杞浠剁嫭鍒,鍙浠ヨ繙紼嬪紑鍚痶ftp鏈嶅姟;
5 鏈杞浠墮泦鎴愮殑鏋侀熺鍙f壂鎻忓櫒(鎵鎻忛熷害涓栫晫棰嗗厛)
鏈寮濮嬫垜鐢ㄧ殑鎵鎻忓櫒鏄澶у悕榧庨紟鐨凷uperScan3.0,鎰熻夐熷害寰堟參;
鍚庢潵鏀圭敤SSPort1.0 鎵鎻忛熷害鏈変簡鏄庢樉鐨勬彁楂.
緇忚繃閫熷害瀵規瘮,鏈杞浠舵壂鎻忛熷害姣擲SPort蹇 1/3 ,鏄瘲uperScan鐨凬鍊!!!
鎴戠殑鏈哄櫒鏄 璧涙壃700+256M鍐呭瓨,涓鑸鎵鎻忛熷害涓180鍙/縐;
涓浜涘彿縐板彲浠ヨ揪鍒1000鍙/縐掔殑鎵鎻忓櫒鍦ㄦ湰鏈轟笂璇曢獙鍙鏈120鍙/縐.
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞
鍑嗗囧伐浣滐細
瀹夎呴粦紺句細
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞
姝ラや竴 鏌ュ3
Peid v0.92
ASPack 2.12 -> Alexey Solodovnikov銆
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞
姝ラや簩 鑴卞3
鎵嬪姩鑴卞3
蹇閫熻劚鎺堿SPACK鎵鏈夌増鏈鐨勬柟娉
鐨凮EP鍏抽敭鐐瑰湪涓嬮潰
0048D3AF 61 POPAD
0048D3B0 75 08 JNZ SHORT 榛戠ぞ浼.0048D3BA
0048D3B2 B8 01000000 MOV EAX,1
0048D3B7 C2 0C00 RETN 0C//402c4a
0048D3BA 68 00000000 PUSH 0
402ca4灝辨槸鎴戜滑瑕佹壘鐨凮EP
鑷鍔ㄨ劚澹
AspackDie v1.41
榪欐槸涓涓灝忓皬鐨 PE 鏂囦歡瑙e帇緙╁櫒 (EXE, DLL, ...) 濂瑰彲浠ヨВ鍘嬬緝
鑷 Aspack 2000 浠ュ悗鐨勪換浣 Aspack 鐗堟湰. 鍖呮嫭:
- Aspack 2000
- Aspack 2001
- Aspack 2.1
- Aspack 2.11
- Aspack 2.11c/d
- Aspack 2.12
- Aspack 2.12a/b
- 涓浜涙湭鐭ョ殑鐗堟湰
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛
姝ラや笁 璇曡繍琛岀▼搴 鍙戠幇紿佺牬鐐
鐪嬪埌鍏抽敭瀛楃︿覆
鈥滄敞鍐岀爜閿欒!鈥
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛
姝ラゅ洓 W32DASM 瀵繪壘紿佺牬鐐
鐢╳32dasm杞藉叆宸茬粡鑴卞3鐨勭▼搴
瀛楃︿覆瀵熺湅
鏈鍙戠幇 瀛楃︿覆 鑰屾槸鍙戠幇涓鍫嗕貢鐮
澶у朵簬鏄涓瀹氭兂鍒頒簡絎涓鑺傜殑鍔炴硶
鐢‥XESCOPE
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛
姝ラゅ洓 瀵熸壘 瀛楃︿覆
鎵撳紑eXeScope 騫惰澆鍏 浣嗘槸鍙戠幇 閮芥病鏈夊瓧絎︿覆
榪欓」
涓哄暐鍛錛熷ぇ瀹朵竴瀹氫細鐤戦棶
涓鑸鐢╡XeScope鏌ヤ笉鍒
鎴戜滑灝嗗紑濮
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛
姝ラや簲 鏌ヨ㈣蔣浠剁殑緙栬瘧綾誨瀷
Peid v0.92
Microsoft Visual Basic 5.0 / 6.0
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞
姝ラゅ叚 閲囩敤GetVBRes v0.51 瀵逛粯VB紼嬪簭
GetVBRes v0.51 涓涓闈炲父濂界殑VB奼夊寲宸ュ叿
瀵逛簬VB紼嬪簭 鎴戜滑鐢ㄤ笓闂ㄦ眽鍖栫敤鐨凣etVBRes v0.51鏉ュ逛粯瀹
涔熻告湁浜轟笉鐞嗚В 涓哄暐鐢ㄦ眽鍖栧伐鍏峰憿
鍏跺疄eXeScope涔熷睘浜庢眽鍖栧伐鍏
GetVBRes杞藉叆榛戠ぞ浼
鍙戠幇娌℃湁涔辯爜浜
鐪嬪埌鐨勫叏鏄瀹屾暣鐨勫瓧絎
鎴戜滑鎵懼埌浜
娉ㄥ唽鐮侀敊璇!
榪欎釜瀛楃︿覆
鎺ョ潃涓轟簡鑳芥悶鍒扮▼搴忓叧閿鐐瑰湴鍧
鎴戜滑鎶娾滄敞鍐岀爜閿欒!鈥
鏀規垚111111
涓哄暐鏀規垚111111鍥犱負111111111
淇濆瓨淇鏀
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛
姝ラゅ叚 鐢╓32Dasm杞藉叆淇鏀瑰悗鐨勬枃浠
鍙戠幇瀛楃︿覆涓鏈111111
閭d釜灝辨槸鎴戜滑淇鏀圭殑 鍘熸潵鏄鈥滄敞鍐岀爜閿欒!鈥
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004792EF(C)
|
:00479474 B904000280 mov ecx, 80020004
:00479479 B80A000000 mov eax, 0000000A
:0047947E 894D9C mov dword ptr [ebp-64], ecx
:00479481 894DAC mov dword ptr [ebp-54], ecx
:00479484 894DBC mov dword ptr [ebp-44], ecx
:00479487 8D5584 lea edx, dword ptr [ebp-7C]
:0047948A 8D4DC4 lea ecx, dword ptr [ebp-3C]
:0047948D 894594 mov dword ptr [ebp-6C], eax
:00479490 8945A4 mov dword ptr [ebp-5C], eax
:00479493 8945B4 mov dword ptr [ebp-4C], eax
* Possible StringData Ref from Code Obj ->"1111111" //鍒氭墠鎴戜滑鐪嬪埌鐨勬敞鍐屽悧閿欒鐨勫摝
|
:00479496 C7458C98194100 mov [ebp-74], 00411998
:0047949D C7458408000000 mov [ebp-7C], 00000008
鍙戠幇璺寵漿鏉ヨ嚜鍒4792EF
瀹夌収涔犳儻 鎴戜滑鏉ュ埌4792EF鍚 鎺ョ潃鍚戝墠鐪
鐪嬪埌涓涓璺沖埌榪欓噷鐨勯偅涓鍦板潃
榪欓噷鏄40928C
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00479278(C)
|
:0047928C 8B55E4 mov edx, dword ptr [ebp-1C]
* Reference T MSVBVM60.__vbaStrMove, Ord:0000h
|
:0047928F 8B3578124000 mov esi, dword ptr [00401278]
:00479295 8D4DE0 lea ecx, dword ptr [ebp-20]
:00479298 895DE4 mov dword ptr [ebp-1C], ebx
:0047929B FFD6 call esi
:0047929D 8B4DE8 mov ecx, dword ptr [ebp-18]
:004792A0 6A01 push 00000001
:004792A2 8D55E0 lea edx, dword ptr [ebp-20]
:004792A5 51 push ecx
:004792A6 52 push edx
:004792A7 E8440F0000 call 0047A1F0
:004792AC 8BD0 mov edx, eax
:004792AE 8D4DDC lea ecx, dword ptr [ebp-24]
:004792B1 FFD6 call esi
:004792B3 50 push eax
:004792B4 53 push ebx
* Reference T MSVBVM60.__vbaInStr, Ord:0000h
|
:004792B5 FF15E8114000 Call dword ptr [004011E8]
:004792BB 8BF0 mov esi, eax
:004792BD 8D45E8 lea eax, dword ptr [ebp-18]
:004792C0 F7DE neg esi
:004792C2 8D4DDC lea ecx, dword ptr [ebp-24]
:004792C5 50 push eax
:004792C6 1BF6 sbb esi, esi
:004792C8 8D55E0 lea edx, dword ptr [ebp-20]
:004792CB 51 push ecx
:004792CC 52 push edx
:004792CD F7DE neg esi
:004792CF 6A03 push 00000003
:004792D1 F7DE neg esi
* Reference T MSVBVM60.__vbaFreeStrList, Ord:0000h
|
:004792D3 FF150C124000 Call dword ptr [0040120C]
:004792D9 8D45D4 lea eax, dword ptr [ebp-2C]
:004792DC 8D4DD8 lea ecx, dword ptr [ebp-28]
:004792DF 50 push eax
:004792E0 51 push ecx
:004792E1 6A02 push 00000002
* Reference T MSVBVM60.__vbaFreeObjList, Ord:0000h
|
:004792E3 FF1548104000 Call dword ptr [00401048]
:004792E9 83C41C add esp, 0000001C
:004792EC 663BF3 cmp si, bx
:004792EF 0F847F010000 je 00479474
鎴戜滑鍦
004792AC鐪嬪埌涓嬮潰榪欎簺
EAX=0015A47C, (UNICODE "")
EDX=00000000
鎬鐤慐AX涓虹殑
涓烘敞鍐岀爜
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞
姝ラや竷 鐢ㄤ笉紜瀹氭g『鐨勬敞鍐 灝濊瘯娉ㄥ唽
鐢
榪欎釜娉ㄥ唽鍚
鎴戜滑鍙戠幇 娉ㄥ唽鎴愬姛
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞
姝ラゅ叓 鍒跺仛娉ㄥ唽鏈
Keymake v1.73
涓鏂鍦板潃錛4792AC
涓鏂嬈℃暟錛1
絎涓瀛楄妭錛8B
鎸囦護闀垮害錛2
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞
姝ラや節 鍙戝竷娉ㄥ唽鏈
鎵句竴涓緗戠珯姣斿傞粦鍩烘垨鑰呬綘鐨勬湅鍙嬩箣闂
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞
姝ラゅ嶮 浼戞伅
榛戠ぞ浼氱粓浜庡共鎺変簡
鐜板湪鍘繪壘浣犵殑鐢鋒湅鍙嬫垨鑰呭コ鏈嬪弸
鑰佸叕鎴栬呰佸﹩
鎵句釜鍦版柟鑱婅亰澶 鏀炬澗鏀炬澗
鍛婅瘔浠栦滑 浣犲垰鍒氭妸榛戠ぞ浼 鎽嗗鉤浜
涓瀹氬緢鏈夎叮鐨
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞
璇劇▼緇撴潫
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞
鏈変簨鎯呭ぇ瀹跺彲浠ュ幓璁哄潧
涓嶈繃浣犲傛灉鎬у瓙鎬
鎴栬呭珜鎴戝洖澶嶇殑閫熷害鎱
鎴戝緩璁浣犵洿鎺ヨ仈緋繪垜
鍙瑕佹垜鍦 鍩烘湰鍙浠ラ┈涓婄粰浣犺В絳
涓嶅湪鍙浠ョ暀璦
鎴戠殑涓や釜鑱旂郴鏂瑰紡
QQ:9595859
MSN:[email protected]
鏈鍚 璇翠竴涓浜
鎴戠殑濂蟲湅鍙嬫渶榪戠敓鐥呬簡
鎵浠ユ墠瀵艱嚧榪欐湡鐨勮劇▼ 榪欎箞鏅氭墠鍋氬嚭鏉
甯屾湜澶у惰兘鐞嗚В鎴
鎴戣繕甯屾湜澶у惰兘紲濈忓ス鏃╂棩搴峰
涓嶇劧鐨勮瘽
浣犱滑瑙佸埌鎴戠殑鏃ュ瓙鍙鑳戒細灝戜簡
鐢氳嚦鍙鑳戒細娑堝け鍦ㄤ綘浠鐪煎墠
濂戒簡涓嶈翠簡 浠婂ぉ灝辨槸鍒版OVER鍚
---------- kcarhc
2004騫8鏈1鏃 鍑屾櫒 娌堥槼
--------------------------------------------------------------------------------
-- 浣滆咃細admin
-- 鍙戝竷鏃墮棿錛2005-10-11 16:42:00
-- 浣跨敤OllyDbg蹇閫熻劚澹
浣滆咃細KU-鍑屻
鐩鏍囷細閲囩敤ASPACK銆乁PX鍔犲3鐨凬OTEPAD.EXE
宸ュ叿錛歄llyDbg 1.09鑻辨枃鐗堛丏UMP鎻掍歡銆丳Editor
緋葷粺錛歐in98SE
鍏抽敭璇嶏細 鑴卞3銆丱llyDbg銆丱D銆丏UMP銆丳USHAD銆丳OPAD
棰勫囩煡璇
銆 澶у氭暟澹抽兘鏈変竴涓鍏卞悓鐨勭壒鐐廣傚湪澹沖噯澶囧紑濮嬭В鍘嬫椂閮借佹墽琛孭USHAD錛屽綋澹寵В鍘
瀹屾椂閮借佽皟鐢≒OPAD銆傚埌搴昉USHAD鍜孭OPAD鏄浠涔堝共浠涔堢敤鐨勫憿錛熷叾瀹濸USHAD鏄鐢ㄦ潵灝
鎵鏈夋櫘閫氬瘎瀛樺櫒欏哄簭榪涙爤鐨勬寚浠わ紝POPAD鏄鎵鏈夋櫘閫氬瘎瀛樺櫒欏哄簭鍑烘爤鎸囦護銆侾OPAD鐨勫嚭
鏍堥『搴忓拰PUSHAD鐩稿弽銆傚3涓轟簡淇濇姢瀵勫瓨鍣錛屼究鍦ㄨВ鍘嬪墠灝嗘墍鏈夊瘎瀛樺櫒榪涙爤淇濇姢璧鋒潵錛
褰撹В鍘嬪畬鎴愬悗鍙堝皢瀵勫瓨鍣ㄥ嚭鏍堬紝鎮㈠嶅叾鍘熻矊錛屽苟灝咺P璁劇疆涓哄師紼嬪簭鐨凮EP銆傝繖鏍鋒垜浠灝卞彲浠ラ氳繃榪欎釜鐗圭偣蹇閫熻劚鎺夊氱嶈蔣浠剁殑澹熾
ASPACK綃
銆 鍏堢敤ASPACK灝哊OTEPAD.EXE鍔犲3銆傜敤OllyDbg錛堜互涓嬬畝縐癘D錛夎澆鍏ャ傜湅瑙佸厜鏍囧仠鍦
澹崇殑鍏ュ彛澶勩
0040D001 >銆60銆銆銆銆銆銆銆PUSHAD ;澹崇殑鍏ュ彛銆傚噯澶囧紑濮嬭В鍘嬶紝淇濇姢瀵勫瓨鍣
0040D002銆銆E8 03000000銆銆CALL銆銆NOTEPAD.0040D00A
鈥︹
鎴戜滑涓嶇″畠錛岀洿鎺ュ悜涓嬬炕欏墊壘POPAD鎸囦護銆傚湪40D3AF澶勬壘鍒癙OPAD
鈥︹
0040D3AF銆銆61銆銆銆銆銆銆銆POPAD ;瑙e帇瀹屾垚錛屾仮澶嶅瘎瀛樺櫒
0040D3B0銆銆75 08銆銆銆銆銆JNZ銆銆SHORT NOTEPAD.0040D3BA
0040D3B2銆銆B8 01000000銆銆MOV銆銆EAX, 1
0040D3B7銆銆C2 0C00銆銆銆銆RETN銆銆0C
0040D3BA銆銆68 CC104000銆銆PUSH銆銆NOTEPAD.004010CC ;榪斿洖鍒板師紼嬪簭OEP澶
0040D3BF銆銆C3銆銆銆銆銆銆銆RETN
鈥︹
閫夊畾40D3AF榪欎竴琛岋紝F4榪愯屽埌姝ゅ勩傚湪榪欓噷璇存槑澹沖凡緇忓畬鎴愯В鍘嬪伐浣溿傚苟涓旇繑鍥炲埌鍘
紼嬪簭鐨勫叆鍙e勩侳8鍗曟ュ埌4010CC錛岃繖閲屼究鏄鍘熺▼搴忕殑OEP銆傜敤DUMP鎻掍歡鐩存帴DUMP鍑烘潵灝卞彲浠ヤ簡錛堝湪DUMP鏃舵敞鎰忓皢鍏ュ彛鐐規敼涓10CC錛屽嵆4010CC-400000=10CC錛400000鏄鏄犺薄鍩哄湴鍧錛夈傛枃浠跺ぇ灝忔槸77059瀛楄妭錛岀敤PEditor閲嶅緩PE澶翠究鍙浠ヤ簡銆傛湭鍘嬬緝鐨勬枃浠跺ぇ灝忔槸53248瀛楄妭錛岃劚澹沖悗鐨勬枃浠跺ぇ灝忔槸60930瀛楄妭銆
UPX綃
銆 鐢║PX灝哊OTEPAD.EXE鍔犲3錛岀劧鍚庣敤OD杞藉叆銆傚仠鍦≒USHAD澶勶紝鐢ㄨ劚ASPACK鍚屾牱鐨勬柟
娉曪紝鍚戜笅緲婚〉鎵綪OPAD銆
鈥︹
0040E9FE銆銆61銆銆銆銆銆銆銆POPAD
0040E9FF銆- E9 C826FFFF銆銆JMP銆銆NOTEPAD.004010CC
鈥︹
涓嬮潰鐨凧MP灝辨槸璺寵漿鍒扮▼搴忕殑OEP澶勩侳4鍒40E9FF澶勶紝F8鍗曟ヤ竴涓嬶紝鏉ュ埌OEP澶勶紝DUMP鍑烘潵銆侱UMP鏂囦歡鐨勫ぇ灝忔槸65536瀛楄妭錛岀洿鎺ュ氨鍙浠ヨ繍琛屻備負浜嗗畬緹庯紝鐢≒Editor閲嶅緩PE澶淬傞偅涔堣劚澹沖悗鐨勬枃浠跺ぇ灝忔槸60293瀛楄妭銆
鍚庤
銆 鐢ㄤ笂闈㈣寸殑鏂規硶錛屽緢澶氱嶅3閮藉彲浠ュ揩閫熺殑鎵嬪姩鑴辨帀銆傚傛灉浣犳病鏈塐D鐨凞UMP鎻掍歡錛
鍙浠ュ埌鏂拌哄潧鐨勪笅杞藉尯鎵俱傚傛灉瀹炲湪娌℃湁錛屼篃鍙浠ョ洿鎺ュ仠鍦∣EP澶勭敤PEDump鏉DUMP銆傚緢涔呮病鏈夊啓涓滆タ浜嗐傝繖涓綃囨槸鍐欑粰鍒濆﹁呯粌鎵嬬殑銆傚叾瀹炲3涔熸槸杞浠訛紝鍐嶆庝箞澶嶆潅閮芥湁鍙鑳借鑴變笅鏉ャ傜濅綘濂借繍銆
銆 鍙﹀栵紝杞杞芥椂璇蜂繚鎸佹湰鏂囩殑瀹屾暣銆
--------------------------------------------------------------------------------
-- 浣滆咃細admin
-- 鍙戝竷鏃墮棿錛2005-10-11 17:10:00
-- 鐢∣llydbg鎵嬭劚EncryptPE V1.2003.5.18鍔犲3鐨凞LL
鏈夊厔寮熻╃湅鐪婨ncryptPE鍔犲3鐨凞LL錛屾垜璇存柊鐗堢殑灝變笉琛屼簡錛屾悶涓嶅畾鐨勩傚悗鏉ョ湅鏄疎ncryptPE V1.2003.5.18鏃х増鍔犲3鐨勶紝搴旇ョ敤鐨勬槸鑰佺帇鑰佸笀鍙戝竷鐨勫厤璐圭増銆傚懙鍛碉紝鎵浠ヨ劚浜嗕竴涓嬶紝欏轟究璁板綍榪囩▼銆
澶у跺彲浠ヨ嚜宸辯敤EncryptPE V1.2003.5.18鍏嶈垂鐗堝姞涓狤drLib.dll鐪嬬湅銆
鈥斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺
涓銆侀伩寮IAT鍔犲瘑
璁劇疆Ollydbg蹇界暐鎵鏈夌殑寮傚父閫夐」銆傜敤IsDebug 1.4鎻掍歡鍘繪帀Ollydbg鐨勮皟璇曞櫒鏍囧織銆
娣誨姞鈥滃悓鏃跺拷鐣0EEDFADE銆丆0000008銆009B25C銆00953D74鈥濆紓甯搞
浠g爜:--------------------------------------------------------------------------------
00877000 60 pushad//榪涘叆OD鍚庡仠鍦ㄨ繖
00877001 9C pushfd
00877002 64:FF35 00000000 push dword ptr fs:[0]
00877009 E8 79010000 call EdrLib.00877187
--------------------------------------------------------------------------------
涓嬫柇錛欱P IsDebuggerPresent 鏂涓嬪悗鍙栨秷鏂鐐
鐜板湪鎴戜滑Ctrl+G:711A0000
涓轟綍鐢ㄨ繖涓鍦板潃錛熷洜涓篤12003518.EPE鏄鐩稿悓鐨勩傚懙鍛碉紝閽諱簡涓鏃х増鐨勭┖瀛愩
鍏跺疄鍙浠ュ啀BP GetProcAddress錛屾牴鎹榪斿洖鍦板潃鏉ュ垽鏂銆傚傛灉榪斿洖鍦板潃鏄711XXXXX錛岃存槑榪欐槸V12003518.EPE鐨勮皟鐢錛屽氨鍙浠ュ彇娑堟柇鐐笴trl+F9榪斿洖浜嗐傚叿浣撴儏鍐典互鍫嗘爤鐨勮繑鍥炲湴鍧涓哄噯銆
鐜板湪Ctrl+S 鍦ㄢ滄暣涓鍖烘碘濇悳緔㈠懡浠ゅ簭鍒楋細
浠g爜:--------------------------------------------------------------------------------
mov eax,edi
mov edx,dword ptr ss:[ebp-8]
mov dword ptr ds:[eax],edx
xor eax,eax
--------------------------------------------------------------------------------
鎵懼埌鍦711A339F澶勶紝鎴戜滑鍦711A339F澶勪笅涓 紜浠舵墽琛 鏂鐐廣
鐜板湪鎴戜滑鍏抽棴Ollydbg錛岄噸鏂拌澆鍏ヨ繖涓猟ll錛岀洿鎺Shift+F9榪愯岋紝涓鏂鍦711A339F澶
浠g爜:--------------------------------------------------------------------------------
711A339F 8BC7 mov eax,edi
711A33A1 8B55 F8 mov edx,dword ptr ss:[ebp-8]
//鏀逛負錛 mov edx,dword ptr ss:[ebp-4] 鈽 姝g『鍑芥暟鍐欏叆
711A33A4 8910 mov dword ptr ds:[eax],edx
711A33A6 33C0 xor eax,eax
711A33A8 5A pop edx
711A33A9 59 pop ecx
711A33AA 59 pop ecx
711A33AB 64:8910 mov dword ptr fs:[eax],edx
711A33AE EB 0A jmp short V1200351.711A33BA
--------------------------------------------------------------------------------
鎶711A33A1澶勪慨鏀瑰ソ涔嬪悗錛屽彇娑堜互鍓嶄笅鐨711A339F澶勭殑鏂鐐廣
鍐岰trl+S鎼滅儲鍛戒護搴忓垪錛
浠g爜:--------------------------------------------------------------------------------
add ebx,4
mov eax,dword ptr ss:[ebp-4C]
add eax,4
--------------------------------------------------------------------------------
鎵懼埌鍦711A43C2澶勶紝鎴戜滑鍦ㄤ笅闈xor eax,eax鐨711A4401涓嬫柇銆係hift+F9榪愯
浠g爜:--------------------------------------------------------------------------------
711A43C2 83C3 04 add ebx,4
711A43C5 8B45 B4 mov eax,dword ptr ss:[ebp-4C]
711A43C8 83C0 04 add eax,4
711A43CB 8945 B4 mov dword ptr ss:[ebp-4C],eax
711A43CE 8B03 mov eax,dword ptr ds:[ebx]
711A43D0 85C0 test eax,eax
711A43D2 0F87 39FDFFFF ja V1200351.711A4111
711A43D8 A1 74C71B71 mov eax,dword ptr ds:[711BC774]
711A43DD 8038 00 cmp byte ptr ds:[eax],0
711A43E0 75 1F jnz short V1200351.711A4401
711A43E2 8B45 C4 mov eax,dword ptr ss:[ebp-3C]
711A43E5 83C0 14 add eax,14
711A43E8 8945 C4 mov dword ptr ss:[ebp-3C],eax
711A43EB 8B45 C4 mov eax,dword ptr ss:[ebp-3C]
711A43EE 8378 0C 00 cmp dword ptr ds:[eax+C],0
711A43F2 76 0D jbe short V1200351.711A4401
711A43F4 8B45 C4 mov eax,dword ptr ss:[ebp-3C]
711A43F7 8378 10 00 cmp dword ptr ds:[eax+10],0
711A43FB 0F87 38FCFFFF ja V1200351.711A4039//寰鐜澶勭悊IAT
711A4401 33C0 xor eax,eax//姝ゅ勪笅鏂錛 鈽
--------------------------------------------------------------------------------
褰撴垜浠涓鏂鍦711A4401澶勬椂IAT宸茬粡澶勭悊瀹屾瘯錛屾ゆ椂灝卞彲浠ョ敤ImportREC寰楀埌姝g『鐨勮緭鍏ヨ〃浜嗐
鍥犱負EncryptPE鍚庨潰鏈夎嚜鏍¢獙錛屾墍浠ユ垜浠榪斿洖711A33A1澶勶紝鐐瑰彸閿錛>鎾ら攢閫夋嫨錛屾仮澶嶅師鏉ョ殑浠g爜銆
鈥斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺
浜屻佸緱鍒伴噸瀹氫綅琛ㄤ俊鎮銆佽幏寰桹EP
Ctrl+S 鍦ㄢ滄暣涓鍖烘碘濇悳緔㈠懡浠ゅ簭鍒楋細
② 如何成為一個程序員
想要從零開始成為程序員,先不要著急的去學習,而是先要去了解程序員。
1.隨便在招聘網站搜索就會發現程序員會分有很多類型,那你就需要確定自己將來想要發展的方向,自己的職業規劃是什麼?
2.通過搜索可以看到,剛剛起步的程序員工資並不是很高而且學習階段也會比較忙,那這個時候你是不是靠考慮一下如何兼顧生活和工作?工資如何支配合理等問題(沒有經驗限制的工作相對較低)
PHP程序員崗位要求
關於學習建議你這樣試試看:
學習的方式基本可分為兩個類型,一個是碎片化的學習,一個是系統進修。
你可以從網路上各機構大量的視頻或者書籍得到相關的學習資料。從大量的資料中,發現真正的干貨,從而不斷學習,這屬於碎片化的自習。由於自學周期比較長,還有不少小夥伴選擇是一邊工作賺取生活費,一邊再利用閑暇時間學習,當然如果你的精力充沛,這也是一個好辦法。
如果要報培訓班, 一定要找正規的培訓機構學習,不然容易被坑。培訓機構裡面的課程都是現在工作中需要用到的,時間短,基本上是可以讓你快速上手工作的。但是要把所有的知識點都消化就沒那麼快了,所以需要自己私下更加的努力,鞏固學習。
注意事項:
1. 自學要注意的是:自學入門時會很枯燥,不要兩天打魚三天曬網!!!切記
2. 在培訓機構里學習要注意的是:勤加練習、主動自學、有問題提,不懂的盡管問老師(把交的錢發揮到極致),不然之後再有問題就沒有這么好的機會能夠直接得到老師的指點了。
最後,祝願想要成為程序員的小夥伴都能心想事成哦(*^▽^*)~
③ java學習作為一名java初學者,如何快速學習j
那首先來了解一下什麼是java:
Java是SUN(Stanford University Network,斯坦福大學網路公司)1995年推出的一門高級編程語言,是一種面向Internet的編程語言。隨著Java技術在web方面的不斷成熟,已經成為Web應用程序的首選開發語言。
那麼為什麼要使用這個語言呢,Java語言的特點跨平台性,通過Java語言編寫的應用程序在不同的系統平台上都可以運行。原理是只要在需要運行java應用程序的操作系統上,先安裝一個Java虛擬機(JVM Java Virtual Machine)即可。由JVM來負責Java程序在該系統中的運行。
下面對java學習進行一次史無前例的剖析,細致的講解零基礎的人怎麼學習Java。先看下Java在基礎階段的知識點路線圖。
④ 閿欒鐨勬剰鎬
闂棰樹竴錛氶噰鍙栭敊璇鏄浠涔堟剰鎬 閿欒涓昏佸寘鎷涓ゅぇ綾伙紝鍗沖弻鏂歸敊璇鍜屽崟鏂歸敊璇銆傛墍璋撳弻鏂歸敊璇鎸囧弻鏂瑰綋浜嬩漢瀵逛簬浜ゆ槗鎵鍙戠敓鐨勯敊璇錛屽嵆鍙屾柟褰撲簨浜哄湪涓轟氦鏄撹屼負鏃跺逛簬姝ょ嶈屼負鎵涓虹殑鎰忔濊〃紺哄彂鐢熼敊璇錛屽叿浣撳寘鎷錛氬叧浜庢爣鐨勭墿瀛樺湪鐨勯敊璇錛屽叧浜庢爣鐨勭墿鎬ц川鐨勯敊璇錛屽叧浜庢爣鐨勭墿鏈韜鐨勯敊璇錛屽叧浜庡戠害灞ヨ屼箣鍙鑳芥х殑閿欒錛屽叧浜庢爣鐨勭墿鐨勬暟閲忓拰璐ㄩ噺鐨勯敊璇銆傛墍璋撳崟鏂歸敊璇錛屾寚浠呬竴鏂瑰綋浜嬩漢瀵規剰鎬濊〃紺轟駭鐢熼敊璇銆傞暱鏈熶互鏉ワ紝浼犵粺娉曞緥璁や負錛岄櫎闈炲規柟褰撲簨浜虹煡閬撴垨鏈夌悊鐢辯煡閬撻敊璇瀛樺湪錛屽惁鍒欙紝浠呭氨涓鏂瑰綋浜嬩漢鎵鍙戠敓鐨勫崟鏂歸敊璇鑰岃█錛屼笉鍏佽稿綋浜嬩漢鎾ら攢銆傜幇浠f硶寰嬪垯鍏佽歌〃鎰忎漢灝卞叾鍗曟柟閿欒琛屼負浜堜互鎾ら攢銆傞敊璇鏄鍚︿負鏃犳晥鎴栨槸鍚︿負鍙鎾ら攢錛屽彇鍐充簬娉曞緥鎵閲囧彇鐨勫師鍒欍傚傛灉瀵規剰鎬濊〃紺洪噰鍙栬〃紺轟富涔夛紝鍒欓敊璇琛屼負涓烘湁鏁堣屼負錛屼笉鍏佽鎬互閿欒涓虹敱鑰屼簣浠ユ挙閿錛涘傛灉閲囧彇鎰忔濅富涔夛紝鍒欓敊璇琛屼負涓烘棤鏁堛傝屽傛灉閲囧彇鎶樿》涓諱箟錛屽垯閿欒琛屼負鍘熷垯涓婁負鍙鎾ら攢鐨勮屼負錛屼緥澶栫殑涓嶅緱鎾ら攢銆傚逛簬絎涓変漢鑰岃█錛屽傛灉絎涓変漢鏄鍠勬剰鐨勶紝鍒欏洜閿欒琛屼負琚鎾ら攢鑰屽彈鍒版崯瀹蟲椂錛屽彲浠ヨ佹眰琛ㄦ剰浜哄硅嚜宸辨壙鎷呮崯瀹寵禂鍋胯矗浠伙紱濡備負鎮舵剰絎涓変漢錛屽垯涓嶅緱瑕佹眰琛ㄦ剰浜烘壙鎷呮崯瀹寵禂鍋胯矗浠匯
闂棰樹簩錛氬艦瀹歸敊璇鐨勬垚璇鍙婅В閲婃湁鍝浜 銆愭姳鍚鏁戠剼銆戱細姣斿柣鐢ㄩ敊璇鐨勬柟娉曞幓娑堥櫎鐏劇ジ,緇撴灉浣跨伨紲稿弽鑰屾墿澶.鍚屸滄姳鍚鏁戠伀鈥.
銆愭姳鍚鏁戠伀銆戱細鍚錛氭煷鑽.鎶辯潃鏌磋崏鍘繪晳鐏.姣斿柣鐢ㄩ敊璇鐨勬柟娉曞幓娑堥櫎鐏劇ジ,緇撴灉浣跨伨紲稿弽鑰屾墿澶.
銆愭姳緗鎬鐟曘戱細鐟曪細緹庣帀涓婄殑鏂戠偣,姣斿柣緙虹偣閿欒.鎸囧洜鐘榪囬敊璇鑰屾劅鍒板唴鐤.
銆愰薊鍨╂尌鏂ゃ戱細鎸ヨ垶鏂уご鍓婇櫎榧葷涔嬪灘.姣斿柣鎸囨i敊璇.
銆愮曡█璋璇淬戱細鎸囬敊璇鐨勮█璁.
銆愯ˉ婕忚㈣廣戱細琛ワ細琛ュ厖,濉婊★紱璁癸細閿欒.琛ュ厖緙烘紡,璁㈡i敊璇.
銆愯ˉ鍋忔晳寮娿戱細鍋忥細鍋忓樊錛涘紛錛氳禐緹.琛ユ晳鍋忓樊婕忔礊,綰犳g己鐐歸敊璇.
銆愪笉鏁欒屾潃銆戱細鏁欙細鏁欒偛錛涙潃錛氬勭綒,鏉姝.涓嶈﹀憡灝卞勬.鎸囦簨鍏堜笉鏁欒偛浜,涓鐘閿欒灝卞姞浠ユ儵緗.
銆愪笉鏁欒岃瘺銆戱細鏁欙細鏁欒偛錛涜瘺錛氬勭綒,鏉姝.涓嶈﹀憡灝卞勬.鎸囦簨鍏堜笉鏁欒偛浜,涓鐘閿欒灝卞姞浠ユ儵緗.
銆愪笉鍜庢棦寰銆戱細鍜庯細璐f.瀵逛互寰鐨勯敊璇鎴栫姜璐d笉鍐嶈拷絀.
銆愪笉鍒婁箣璁恆戱細鍒婏細鍓婇櫎,鍙や唬鎶婂瓧鍐欏湪絝圭畝涓,鏈夐敊璇灝卞墛鍘.鎸囨g『鐨勩佷笉鍙淇鏀圭殑璦璁.
銆愪笉鑳借嚜鎷斻戱細鎷旓細鎽嗚劚.涓嶈兘涓誨姩鍦頒粠鐥涜嫤銆侀敊璇鎴栫姜鎮朵腑瑙h劚鍑烘潵.
銆愪笉奼傛湁鍔,浣嗘眰鏃犺繃銆戱細涓嶈佹眰絝嬪姛,鍙甯屾湜娌℃湁閿欒.
銆愪笉濉炰笉嫻,涓嶆涓嶈屻戱細姣斿柣鍙鏈夌牬闄ゆ棫鐨勩侀敊璇鐨勪笢瑗,鎵嶈兘寤虹珛鏂扮殑銆佹g『鐨勪笢瑗.
銆愪笉浠ヤ竴鐪氭帺澶у痙銆戱細浠ワ細鍥狅紱鐪氾細榪囧け,閿欒錛涙帺錛氶伄钄,閬鐩栵紱寰鳳細寰瘋.涓嶅洜涓轟竴涓浜烘湁涓鍒鐨勯敊璇鑰屾姽鏉浠栫殑澶у姛緇.
銆愪笉榪芥棦寰銆戱細榪斤細榪界┒.瀵逛互寰鐨勯敊璇鎴栫姜璐d笉鍐嶈拷絀.
銆愬樊鑻ユ鍘,璋浠ュ崈閲屻戱細寮濮嬫椂鉶界劧鐩稿樊寰堝井灝,緇撴灉浼氶犳垚寰堝ぇ鐨勯敊璇.
銆愬樊浠ユ鍘,璋浠ュ崈閲屻戱細宸錛氱浉宸錛涙鍘橈細寰堝皬鐨勮¢噺鍗曚綅錛涜艾錛氬悓鈥滅吉鈥.寮濮嬫椂鐩稿樊寰堝井灝,緇撴灉浼氶犳垚寰堝ぇ鐨勯敊璇.
銆愬樊浠ユ鍘,澶變箣鍗冮噷銆戱細寮濮嬫椂鉶界劧鐩稿樊寰堝井灝,緇撴灉浼氶犳垚寰堝ぇ鐨勯敊璇.
銆愬樊涔嬫鍘,璋浠ュ崈閲屻戱細寮濮嬫椂鉶界劧鐩稿樊寰堝井灝,緇撴灉浼氶犳垚寰堝ぇ鐨勯敊璇.
銆愬樊涔嬫鍘,澶變箣鍗冮噷銆戱細寮濮嬫椂鉶界劧鐩稿樊寰堝井灝,緇撴灉浼氶犳垚寰堝ぇ鐨勯敊璇.
銆愭湞榪囧曟敼銆戱細鏃╀笂鐘鐨勮繃澶,鏅氫笂灝辨敼姝d簡.褰㈠規敼姝i敊璇寰堝揩.
銆愭湞闂誨曟敼銆戱細鏃╂櫒闂昏繃,鏅氫笂鍗蟲敼姝.褰㈠規敼姝i敊璇涔嬭繀閫.
銆愭儵鍓嶆瘱鍚庛戱細鎯╋細璀︽垝錛涙瘱錛氳皚鎱.鎸囨壒鍒や互鍓嶆墍鐘鐨勯敊璇,鍚稿彇鏁欒,浣誇互鍚庤皚鎱庝簺,涓嶈嚧鍐嶇姱.
銆愬嚭鍏ヤ漢緗銆戱細鎸囨硶搴瑁佸垽閿欒,鎶婃湁緗鐨勪漢璁や負鏃犵姜,鎶婃棤緗鐨勪漢璁や負鏈夌姜.
銆愯壋璁圭櫨鍑恆戱細鑸涳細閿欎貢.璁癸細閿欒.閿欎貢鐨勫湴鏂瑰緢澶.涓鑸鎸囦功綾嶇殑鍐欎綔鎴栧嵃鍒朵笉綺.
銆愯仾鏄庝竴涓,鎳墊噦涓鏃躲戱細鎳墊噦錛氬ご鑴戜笉娓呮氭垨涓嶈兘鏄庤鯨浜嬬墿.浜轟竴杈堝瓙閮藉緢綺炬槑,浣嗘湁鏃朵竴涓嬪瓙緋婃秱.鎸囪仾鏄庝漢涔熶細鐘閿欒.
銆愰敊涓婂姞閿欍戱細鏈鏉ュ凡緇忛敊浜,鍙堢姱浜嗘柊鐨勯敊璇.
銆愬ぇ閿欑壒閿欍戱細寮鴻皟閿欒鍒版瀬鐐.
銆愬ぇ姊﹀垵閱掋戱細璞″仛浜嗕竴鍦哄ぇ姊︽墠閱.姣斿柣琚閿欒鐨勪笢瑗胯挋钄戒簡璁鎬箙,寮濮嬮啋鎮熻繃鏉.
銆愬ぇ姊︽柟閱掋戱細璞″仛浜嗕竴鍦哄ぇ姊︽墠閱.姣斿柣浠庨暱鏈熺殑閿欒銆佽挋钄芥垨榪瘋尗涓寮濮嬮啋鎮熻繃鏉.鍚屸滃ぇ姊﹀垵閱掆.
銆愭埓緗絝嬪姛銆戱細甯︾潃緗榪囨垨閿欒鍘誨壋絝嬪姛鍕,浠ュ姛璧庣姜.
銆愪絾奼傛棤榪囥戱細浣嗭細浠,鍙瑕侊紱榪囷細閿欒.鍙榪芥眰娌℃湁榪囬敊.褰㈠瑰仛浜嬩繚瀹堝鉤搴告曞嚭宸閿.
銆愬脊灝勫埄鐥呫戱細寮瑰皠錛氱洿鐜囧湴鎸囨憳錛涚棶錛氬紛鐥.鐩寸巼鐨勬壒璇勬湁鍒╀簬鏀規g己鐐瑰拰閿欒.
銆愯箞鍏惰嗚緳銆戱細韞堬細韙╋紱瑕嗭細棰犲掞紱杈欙細杞﹁抗,鎸囬亾璺.閲嶈蛋鍒浜虹炕杞︾殑璺.姣斿柣涓嶆帴鍙楁暀璁,閲嶇姱鍒浜虹姱榪囩殑閿欒.
銆愭釘鐟曡箞闅欍戱細鎸囨敾鍑誨埆浜虹殑寮辯偣鎴栭敊璇.
銆愭姷鐟曡箞闅欍戱細闅欙細瑁傜紳,闂撮殭.鎸囨敾鍑誨埆浜虹殑寮辯偣鎴栭敊璇.
銆愭姷鐟曢櫡鍘勩戱細鎶碉細瑙︼紱鐟曪細鐟曠柕,緙虹偣錛涢櫡錛氭敾鐮達紱鍘勶細榪瀹.鎸囨敾鍑誨埆浜虹殑寮辯偣鎴栭敊璇.
銆愪笢宸瑗胯銆戱細鎸囧嚭鐜拌繖鏍鋒垨閭f牱鐨勫樊奼犮侀敊璇.褰㈠瑰姙浜嬩笉寰楀姏.
銆愭潨娓愰槻寰銆戱細鏉滐細鍫典綇錛涙笎錛氭寚浜嬬墿鐨勫紑絝錛涘井錛氬井灝.閿欒鎴栧潖浜嬪垰鍐掑ご灝卞強鏃跺埗姝,涓嶈╁畠鍙戝睍.
銆愭柇娓緇濇艦銆戱細娼錛氫綆媧肩殑縐姘村潙.鏃犳硶閫氳岀殑姘磋礬.姣斿柣閿欒鐨,涓嶅彲鑳借揪鍒扮洰鐨勭殑鍔炴硶.......>>
闂棰樹笁錛氱増鏈閿欒鏄浠涔堟剰鎬濓紵 鍙鑳芥槸鏌愪簺鏂囦歡鍑洪敊浜
鏇存柊涓嬪氨鍙浠ヤ簡
瀹炲湪涓嶈屽氨寰椾粠瑁
闂棰樺洓錛氱綉緇滈敊璇浠涔堟剰鎬濓紵 瀹藉甫adsl鎷ㄥ彿涓婄綉浣跨敤pppoe鍗忚榪炴帴,閫氳繃鐢佃瘽綰誇紶杈撴暟鎹,浣跨敤adsl涓撶敤modem瀹炵幇鏁版嵁鐨勮皟鍒惰В璋冦
涓銆侀敊璇鎻愮ず678鐨勫惈涔夋槸:
榪滅▼璁$畻鏈烘棤鍝嶅簲,鎰忔濇槸浠庤$畻鏈哄彂鍑烘寚浠ゅ埌緗戝崱鍚戝栧彂閫佹暟鎹,鍖呮嫭鐢佃瘽綰跨殑浼犺緭,灞絝(鐢典俊灞鏈烘埧絝)絝瀛愭澘鐨勭鍙e勭悊鍒拌繑鍥炴暟鎹鍒拌$畻鏈虹殑榪囩▼涓鏁版嵁浼犺緭鍑洪棶棰橀兘浼氭彁紺678閿欒銆傜畝鍗曞湴璇村氨鏄緗戠粶涓嶉氫簡銆
浜屻佸湪閬囧埌鈥滈敊璇678鈥濈殑鏀昏佽В鍐蟲濊礬鍜屾ラ:
1銆佹渶榪戜綘鐨勮$畻鏈烘湁娌℃湁鍔ㄨ繃?鐗瑰埆鏄疉DSL Modem榪炵嚎銆佺嚎璺鏈夋病鏈夊姩榪?璇峰厛媯鏌モ滅尗鈥濅笂淇″彿鐏鏄涓嶆槸浼氶棯(鐚涓嶅悓,鎸囩ず鐏涔熶笉鍚,涓昏佹湁dsl銆乤dsl,line,link,@絳夐兘鏄瀹藉甫淇″彿鎸囩ず鐏),濡傛灉瑕侀棯,媯鏌ョ嚎璺鏈夋病鏈夋帴瀵(涓昏佹槸鍒嗙誨櫒涓,鏈変笁涓鍙,姣忎釜鍙e瑰簲涓鏍圭嚎,鎺ユ硶鏄鎬葷嚎灝辨槸榪涚嚎鎺line鍙,鐢佃瘽鏈烘帴phone鍙,鍙﹀杕odem鎴朼dsl鎺ュ藉甫鐚,浣犱篃鍙浠ョ洿鎺ュ皢鐢佃瘽榪涚嚎鎺ュ湪鐚涓婅瘯,榪欐牱鍙浠ユ帓闄ゅ垎紱誨櫒鍧),濡傛灉鎺ュ硅繕鏄闂,媯鏌ョ數璇濈嚎璺鏄涓嶆槸鏈夋帴澶,綰胯礬姘у寲鎺ヨЕ涓嶅ソ涔熶細鍑虹幇淇″彿瀹氫笉浣(鐢佃瘽綰胯繘鐚鐨勬按鏅跺ご鎴栫嚎鏈夐棶棰,涔熶細閫犳垚綰胯礬涓嶉氥
2銆佺『璁adsl modem鎷ㄥ彿姝e父,鍥犱負緗戝崱鑷鍔ㄨ幏鍙栫殑IP娌℃湁娓呴櫎,鎵浠ュ啀嬈℃嫧鍙風殑鏃跺欑綉鍗℃棤娉曡幏鍙栨柊鐨処P鍦板潃浼氭彁紺678,鎿嶄綔鏂規硶鏄:鍏抽棴adsl modem,榪涘叆鎺у埗闈㈡澘鐨勭綉緇滆繛鎺ュ彸鍑繪湰鍦拌繛鎺ラ夋嫨紱佺敤,5縐掗挓鍚庡彸鍑繪湰鍦拌繛鎺ラ夋嫨鍚鐢,鐒跺悗鎵撳紑adsl modem鎷ㄥ彿鍗沖彲;
3銆佸傛灉絎涓姝ユ棤鏁,鍒欏湪鍏抽棴adsl modem鐨勬儏鍐典笅,浠嶇劧紱佺敤鏈鍦拌繛鎺(緗戝崱),閲嶅惎璁$畻鏈,鐒跺悗鍚鐢ㄦ湰鍦拌繛鎺(緗戝崱),鍐嶆墦寮adsl modem鍗沖彲瑙e喅;
4銆佸傛灉涓婅堪姝ラら兘鏃犳硶瑙e喅,鏌ョ湅緗戝崱鐏鏄鍚︿寒,濡傛灉緗戝崱鐏涓嶄寒,媯鏌ョ綉鍗″拰緗戠嚎銆
5銆佸傛灉緗戝崱鐏姝e父1,2姝ユ棤娉曡В鍐沖垯鍗歌澆緗戝崱椹卞姩,閲嶈呯綉鍗¢┍鍔ㄣ
6銆佸傛灉涓婅堪鎿嶄綔鏃犳晥鑱旂郴鐢典俊閮ㄩ棬紜璁ょ鍙c傜瑪鑰呭湪瀹朵腑涓婄綉涔熸浘閬囧埌榪団678鈥濋敊璇,鍒氬紑濮嬩粈涔堥棶棰樹篃媯鏌ヤ笉鍑烘潵,鍚庢潵鍙戠幇鏄鐢典俊灞閭h竟鐨勭鍙f澗鍔ㄤ簡,瀵艱嚧綰胯礬涓嶉氥
7銆佽繕鏈変竴縐嶆儏鍐,絎旇呬篃鏇劇板埌榪,濡傛灉浣犵殑瀹朵腑鏈変袱鍙頒互涓婄殑鐢佃剳,鐢ㄦ潵鎺ョ數鑴戠殑HUB絝鍙f崯鍧忕殑璇,涔熶細鍑虹幇鈥678閿欒鈥,榪欐椂鏇存崲涓涓濂界殑絝鍙e氨鍙浠ヤ簡銆
8銆佹湁浜涚粡榪囩數淇℃嫻嬪悗緗戠粶鎯呭喌姝e父,涔熷嚭鐜頒簡閿欒鈥678鈥濈殑鎻愮ず,榪欐椂瑕佽冭檻浣跨敤榪囩▼涓鍚勭嶅簲鐢ㄨ蔣浠剁殑鍐茬獊,鍚屾牱涔熶細寮曞彂緗戠粶涓嶉氥傚傗滈泤鉶庡皬鍔╂墜鈥濄佹潃姣掕蔣浠舵垨鑰呴槻鐏澧欑瓑鍑虹幇寮傚父寮曞彂閿欒鈥678鈥濇彁紺虹殑鐜拌薄銆傛墍浠,鍦ㄦ偍鍙戠幇閿欒鈥678鈥濈殑鎻愮ず鏃,鍙浠ュ厛灝濊瘯鏆傛椂鍗歌澆鈥滈泤鉶庡皬鍔╂墜鈥濄侀鍑烘潃姣掕蔣浠舵垨鑰呮殏鏃跺叧闂闃茬伀澧,閲嶆柊榪涜岃繛鎺,璇曡瘯鐪嬫槸鍚﹁兘澶熻В鍐抽棶棰樸
9銆佷竾涓嶅緱宸叉椂,鍙浠ョ敤閲嶆柊鍚鍔ㄢ滅尗鈥濆拰璁$畻鏈虹殑鍔炴硶鏉ヨВ鍐,鐪嬬湅鑳戒笉鑳藉忔晥銆
闂棰樹簲錛氭湇鍔″櫒閿欒鏄浠涔堟剰鎬 鍑虹幇500閿欒鐨勫師鍥犳槸寰堝氱殑錛屼竴鑸鏉ヨ達紝濡傛灉紼嬪簭鍑洪敊錛岄偅涔堝湪嫻忚堝櫒鍐呬細榪斿洖緇欑敤鎴蜂竴涓鍙嬪ソ鐨勯敊璇鎻愮ず錛岀粺涓縐頒箣涓烘湇鍔″櫒500閿欒銆傝В鍐崇殑鏂規硶灝辨槸鎮ㄥ繀欏誨湪涓鑳藉熸g『鐨勮幏寰楅敊璇淇℃伅錛屾柟娉曚負錛氳鋒墦寮嫻忚堝櫒錛岄夋嫨宸ュ叿-internet閫夐」-楂樼駭錛屽湪楂樼駭涓鐨勬祻瑙堥」鐩閲岄潰鏈変竴涓鈥滄樉紺哄弸濂介敊璇鎻愮ず鈥濈殑澶嶉夋嗭紝璇峰彇娑堣ュ嶉夋嗭紝榪欐牱鎮ㄥ彲浠ヨ幏寰楁g『鐨勯敊璇鎻愮ず銆
闂棰樺叚錛氶敊璇400鏄浠涔堟剰鎬濓紵 400閿欒鏄鐢變簬涓嶆g『鐨勮鋒眰閫犳垚鐨,璇存槑姝e湪 璁塊棶鐨勭綉欏靛彲鑳藉凡緇忓垹闄ゃ佹洿鍚嶆垨鏆傛椂涓嶅彲鐢 銆
闂棰樹竷錛氭樉紺哄弬鏁伴敊璇鏄浠涔堟剰鎬濓紵 鐧懼害鐭ラ亾涓婇潰榪欐牱琛ㄧず鍚鏈夎紱佹㈢殑鍏抽敭璇嶏紝涓嶅厑璁稿彂閫侊紝鍙浠ヤ嬌鐢ㄧ┖鏍奸殧寮
闂棰樺叓錛氬彲鎬曠殑涓嶆槸閿欒錛屽彲鎬曠殑鏄閿欒鐨勫瑰緟閿欒榪欏彞璇濈殑鎰忔 灝辨槸璇達紝浜烘椿鐫錛岃皝閮藉厤涓嶄簡浼氱姱閿欒錛岀姱浜嗛敊璇騫朵笉鍙鎬曪紝鍙鎬曠殑鏄錛岀姱浜嗛敊璇鍚庝笉鐭ユ倲鏀癸紝涓嶆壙璁ら敊璇錛屼笉鍚稿彇鏁欒錛屽埌浜嗕笅嬈¤繕浼氬啀嬈$姱鍚屾牱鐨勯敊璇錛岃繖鎵嶆槸鏈鍙鎬曠殑浜嬫儏銆傚氨鏄榪欎釜鎰忔濄
濡傛灉鎴戠殑鍥炵瓟鑳藉熷府鍔╁埌浣狅紝璇風偣鍑燴滈噰綰充負婊℃剰絳旀堚濄
闂棰樹節錛歟rror鏄浠涔堟剰鎬 error 鏄閿欒鐨勬剰鎬濄
涓鑸鍦ㄨ$畻鏈虹紪紼嬫椂浼氭姤閿欍傚ぇ鑷村垎涓ょ1縐嶄簨error涓縐嶆槸warning銆
error鏃訛紝緙栬瘧涓嶈兘鎴愬姛瀹屾垚錛屼笉鑳界敓鎴愮浉搴旂殑鎵ц屾枃浠躲
warning鏄璀﹀憡錛岃櫧鐒跺彧鏈夎﹀憡娌℃湁error鏃朵篃鑳界敓鎴愭墽琛屾枃浠訛紝鎴蜂絾warning鎻愰啋浣犲彲鑳芥湁闂棰橈紝鏈濂借繕鏄鐪嬬湅璀﹀憡鐨勫唴瀹癸紝寰寰鑳藉彂鐜頒竴浜涢殣鈃忕殑闂棰樸
闂棰樺嶮錛1 鎻愮ず鐨勯敊璇鏄浠涔堟剰鎬 1錛夊傛灉鏄瀹藉甫鏈韜鐨勯棶棰橈紝棣栧厛鐩存帴鑱旀帴瀹藉甫緗戠嚎嫻嬭瘯錛屽傛灉鏄瀹藉甫鐨勯棶棰橈紝鑱旂郴瀹藉甫瀹㈡湇瑙e喅銆2錛夊傛灉鏄璺鐢卞櫒鐨勯棶棰橈紝濡傛灉鍘熸潵鍙浠ョ敤錛屾殏鏃朵笉鑳界敤浜嗭紝鎴戣嚜宸辯殑瀹炶返鏄涓涓鏄鏂鎺夎礬鐢卞櫒鐨勭數婧愬湪鎻掍笂錛岀瓑浼氱湅鐪嬨傚湪鏈夊氨鏄鎮㈠嶅嚭鍘傝劇疆錛屼粠鏂拌劇疆灝卞彲浠ョ敤浜嗭紙榪欐槸鍦ㄧ墿鐞嗚繛鎺ユg『鐨勫墠鎻愪笅錛屾湁鏃舵槸璺鐢卞櫒瀵籌P鍦板潃鎱㈡垨澶辮觸寮曡搗鐨勶紝騫朵笉鏄璇磋礬鐢卞櫒鍧忎簡錛夈傚傛灉鎬繪槸涓嶈兘瑙e喅錛屽緩璁緇欒礬鐢卞櫒鐨勫㈡湇鎵撶數璇濓紝浠栦滑鏈夌數璇濆湪綰挎寚瀵礆紝鎴戦亣鍒拌嚜宸變笉鑳借В鍐崇殑闂棰橈紝鍜ㄨ浠栦滑緇欑殑寤鴻鏄寰堟湁鐢ㄧ殑錛屼粬浠浼氶拡瀵逛綘鐨勮劇疆鎴栨搷浣滅粰鍑烘g『寤鴻鐨勩3錛夊傛灉鍏抽棴浜嗘棤綰垮紑鍏沖紑鍚灝辨槸浜嗭紝濡傛灉鏄鐢ㄨ蔣浠惰繛鎺ョ殑鏃犵嚎錛岃蔣浠朵笉濂界敤鍙堢粡甯稿嚭闂棰樻槸寰堟e父鐨勶紝娌℃湁鏇村ソ鐨勬柟娉曪紝鐢ㄨ礬鐢卞櫒鍚с傚彟澶栧氨鏄緗戝崱椹卞姩娌℃湁鎴栦笉鍚堥傚紩璧風殑錛岀綉綰挎帴鍙f垨緗戠嚎鏄涓嶆槸鏈夐棶棰樼瓑銆4錛夊傛灉鏄緋葷粺闂棰樺紩璧風殑錛屽緩璁榪樺師緋葷粺鎴栭噸瑁呫5錛夋湁闂棰樿鋒偍榪介棶鎴戙
⑤ Java編程中 常見的異常有哪幾種
相信作為程序員的我們在對程序進行編譯過程中經常會遇到錯誤,或者在運行過程中出現錯誤,在這里主要跟大家談談經常遇到的一些異常與錯誤,以及解決辦法。
異常是指程序在編譯或運行過程出現的錯誤。
在java.lang包中Throwable包含了所有的異常。
Error (錯誤) 和Exception(異常)
(1)Error(錯誤)
一旦發生無法修復,但可以避免發生。
常見錯誤類:
IOError:I/O錯誤,當發生嚴重的I/O錯誤時,拋出此錯誤。
VirtualMachineError:虛擬機錯誤,當 Java 虛擬機崩潰或用盡了它繼續操作所需的資源時,拋出該錯誤。
StackOverflowError:棧內存滿了,當應用程序遞歸太深而發生堆棧溢出時,拋出該錯誤。
OutofMemoryError:堆內存滿了,因為內存溢出或沒有可用的內存提供給垃圾回收器時,Java 虛擬機無法分配一個對象,這時拋出該異常。
以上是一些常見的錯誤,在Error類中還有一些別的錯誤(參照文件Java.lang.Throwable.Error).
(2)Exception(異常)
一旦發生,可以捕獲並處理,不會導致程序終止,有時可以避免有時無法避免。
異常的分類:
1.編譯時異常(需要強制處理) 2.運行時異常(不需要強制處理)
常見的異常有:
IOException:輸入輸出流異常
FileNotFoundException:文件找不到的異常
ClassNotFoundException:類找不到的異常
DataFormatException:數據格式化異常
NoSuchFieldException:沒有匹配的屬性異常
NoSuchMethodException:沒有匹配的方法異常
SQLException:資料庫操作異常
TimeoutException:執行超時異常
常見的運行時異常:
RuntimeException:運行時異常
NullPointerException:空指針異常
:數組越界異
ClassCastException:類型轉換異常
IllegalArgumentException:非法的參數異常
InputMismatchException:輸入不匹配
以上是常見的一些異常,另外還有別的異常,參見文件:Java.lang.Throwable.Exception
既然我們常常會遇到一些異常,那我們如何來處理這些異常就是一個急需解決的事情。
(1) 如何處理編譯時異常?
方法一:將需要處理的代碼塊放在一個try...catch...中
try{
//需要處理異常的代碼
}catch(XXXException ef){
ef.printStackTrace();
}
我們方法一就是要將我們不確定的代碼放入try......catch中,先進行try一下,如果沒有異常,則不會觸發catch,沒有輸出,一旦出現異常,那麼catch就會工作,在catch中捕獲異常信息,根據異常信息進行補救措施。
如以下代碼:
從結果可以看出,我們在輸入數據的時候出現錯誤,這樣通過自定義異常能夠讓我們更直接快速的找到運行或編譯時的異常。
在上述中我們分別提到了三種throw,分別是Throwable,Throws以及throw,那麼到底三者有什麼區別?
Throwable:是指在在Java.lang包中的一個類,其包含了所有的異常和錯誤,其中類Error和Exception 是它
的子類。
Thows:是指在解決編譯時異常,將方法中異常拋給上一級,在方法後面要加Throw Exception來進行拋。
throw:是指在自定義異常時,如果方法出現異常,那麼將作為引用方法的對象拋出。即拋出異常。
希望對您有所幫助!~
⑥ Java的自學過程中怎麼能有個清晰的學習路線
首先先搞懂JavaSE的部分,Swing和swt部分就可以少看或不看,因為現在用的比較少。重點是看懂Java中的面向對象、集合框架、JDBC、異常、IO、線程和網路編程。JavaSE搞定後再學習Servlet、JSP,然後才是經典的Struts2、Hibernate和Spring,學習框架時重點理解框架的運行原理,甚至可以嘗試自己寫個輕量級的框架。理解運行原理的最好方法就是閱讀源代碼,還是要感謝Java中的開源項目。這期間還要多找各種大小的項目去完成,不一定要大,但是要精緻,功能要完整,這樣可以練習所學知識,並且可以在做項目中發現自己的知識體系中不足的地方。關於看視頻,我不推薦,很多同學一天到晚就知道看視頻,殊不知,編程真理在於「練習,練習,不停練習」!
再補充下:當學習Java的期間,會碰到各種各樣的異常,請積累這晌神些異常信息,以及如何出現的異常和如何處理的,因為java中常見的異常就那麼幾種,積累的多了,處理問題的能力就提高,這樣水平會提高的很快!
SpringMVC 這幾年的佔有率迅速的提高,可能之後會取代 Struts2,但是無論怎麼變化,這些還都是 MVC 模式,理解了這個模式,上手任何的 MVC框架都應該很快。
企業需要的變化還體現在大數據方面,因為 Hadoop 的流行,Java 的應用場景又多了一個。所以,不喜歡 web 的可以考慮學習大數據方面的知識。
另一個流行的場景自然就是 Android,學習 Android 依然需要你有 JavaSE 的底子+HTTP 協議的理解,再配合上 Linux 的知識就可以開始了。
再說下找項目的問題,初學宴粗虧者可能會碰到不知道做什麼的問題,其實最開始大家都是從模仿開始的,例如你學會了 jsp+Servlet,那就可以模仿一個 v2ex 這樣的論壇出來。學會了 SpringMVC,那就試著將論壇的代碼重構,提供restful介面供客戶端訪問(Android、IOS 、web 等)。論壇做的沒難度了,那就模仿一個團購網站,依然是不一定要做全部的功能,但是做出的功能要穩定,要精緻。或者一個微信公眾平台的開發都是不錯的項目。
初學者看源代碼有的人推薦看 Struts2、spring 的,但是我相信10個初學者9個看不懂,那就從簡單的開始,例如 Apache 的 Commons 庫,例如 lang、dbutils、io 等,這些都是非常不錯的代碼,類的數量不多而且質量也不錯,這些看懂之後,你的基礎水平增長的不是一點點。
再次提醒初學者,學習編程沒有你想的那麼簡單,必須要多練習,多思考,最主要的是你對這個有興趣。現在不少網站和媒體都宣傳1個月學會凳棚前端、3個月入職 BAT 的口號,那也就是口號而已,別太認真。這條路沒有捷徑,寫你的代碼就是了!
推薦幾本書:
Java基礎部分
JAVA核心技術(卷1) (豆瓣)
Head First Java (豆瓣)
重構 (豆瓣)
Effective java 中文版(第2版) (豆瓣)
Head First 設計模式(中文版) (豆瓣)
嚴重不推薦《Java編程思想》,這句話一出,估計很多人會噴死我,因為這本書被很多人奉為Java中的聖經級的書籍。但是我真的想問問這些人,你們真的看過這本書嗎?真的適合初學者去看嗎?多少初學者就是看了這本書做到了從入門到放棄的過程。所以,我的觀點是,有一定Java開發經驗了再看這聖經。
資料庫部分
MySQL必知必會 (豆瓣)
JSP和Servlet部分
Head First Servlets & JSP(中文版) (豆瓣)
HTTP權威指南 (豆瓣)
圖解HTTP (豆瓣)
框架部分
Spring實戰(第3版) (豆瓣)
Spring技術內幕 (豆瓣)
Java Persistence with MyBatis 3 (豆瓣)
深入淺出Hibernate (豆瓣) 雖然老,但是經典
Struts 2實戰 (豆瓣)
Android
Android編程權威指南(第2版) (豆瓣)
其他
Redis實戰 (豆瓣)
Redis設計與實現 (豆瓣)
Redis入門指南 (豆瓣)
來源於知乎
⑦ MUD游戲是什麼游戲
MUD游戲(Multiple User Domain多用戶虛擬空間游戲)。大家對MUD也許很熟悉,這就是你一直聽到的,可能卻始終不聽不懂的「泥巴」,雖然你可能還不知道它確切是什麼東西。但在泥巴一族中間,MUD就是他們第二個生存空間。
1979年第一個MUD(多用戶土牢)多人交互操作站點建立。這個站點包含了各種冒險游戲、棋類游戲和豐富詳盡的資料庫。大受歡迎的《網路創世紀》(UO)則是真正意義上的第一個大型圖形MUD,也是至盡被認為是最完善的網路游戲,玩家只要自己喜歡,可以專心做買賣,或到處游歷,或什麼事情也不做而隨便走走,與現在網路游戲中充斥著的PK,殺戮相比,UO是一片純粹的游戲玩家的夢寐以求的聖土,依然是網路游戲的顛峰之作,在UO上發生的很多傳奇故事至盡仍被廣為流傳。
MUD的歷史
原作: Lauren P. Burka
翻譯: stoneboy
1989年的八月,CARNEGIE MELLON的一個研究生在一個周末寫了一個叫做TinyMUD的游戲。那是一個簡單的,多用戶的游戲。在互聯網只要誰知道他的地址與埠(lancelot.avalon.cs.cmu.e 4201),那麼誰就可以得到這個游戲。然而TinyMUD並不是最開始的MUD游戲,這個游戲容易使用,並且可被移植到許多UNIX系統上。這使得MUD風潮像爆炸一樣風靡世界至今未衰。現在的各種MUD游戲就在你的身邊,另你目不暇接。
MUDs(多用戶空間)有如下的各種優點:
許多人可以一起玩;
游戲被分成許多虛擬的空間以便在一個空間的人或物不會影響到另一個空間的人或物;
所有的交互內容以文字出現,沒有圖片或聲音;
通訊靠TCP套接字實現;
大多數代碼由學校里的學生來完成維護並且可以公開地得到;
實物,空間和人物的組合可以由簡單的命令來完成,而其他語言編寫的MUD游戲允許有更復雜的命令和道具;
盡管MUD是為了一個嚴肅的目的而出現的,但是它仍然保持著原始冒險或RPG游戲的氣氛;而且游戲玩家的身份並不被現實所束縛,MUD里的游戲的角色有現實虛擬如一的人,有毛茸茸的動物,有科幻故事裡的英雄,以及所有可愛的,醜陋的,令人討厭的,智慧的人,或者僅僅是一個平常的怪人。
JIM ASPENS(現在是YALE大學的老師)認為TinyMUD無足輕重,很快就會喪失掉新意。他有了些想法卻又舉棋不定,這對MUD游戲的優點和缺點都有一定的影響。
從地獄開始:MUD游戲--內存VS硬碟
早期的MUD游戲傾向於把大部分游戲數據放到硬碟上。當玩家需要時,空間和物體的數據從硬碟上被取出來。這種方式很慢。
TinyMUD把所有的數據都放在內存裡面。這種設計假設數據不會變得特別多。實際上,對於小的MUD游戲,基於內存的數據存儲是很快的。但當數據量增加得很多時,進程會開始頻繁地在硬碟和內存之間交換數據。系統的負載會由於頁面錯誤的集中出現而攀升。許多系統結構都有一個處理數量限制。ASPENS最終拋棄了TinyMUD當它在他的機器上達到了32M處理數量極限而崩潰的時候。MUD游戲的數據膨脹使問題惡化了,導致巨大的個人對象(INDIVIDUAL OBJECT),甚至後台進程。LambdaM00,運行在SparcCenter 1000上的Xerox Parc平台上,在1994年就要求有198M給予進程並且數據要佔有80M的硬碟空間。
很大的基於內存的MUD游戲的表現不盡人意眾所周知。盡管有大量的優秀的MUD程序員,直到很晚這個數據層的改進問題才被考慮到。有以下幾點原因:
無知。很多學生懂得C語言,但幾乎沒有MUD程序員研究過資料庫的設計。我還記得在新聞組rec.games.mud上,一個學生堅持認為基於硬碟的MUD游戲會把硬碟搞得疲勞不堪。
習慣。有很多MUD游戲是基於硬碟的。包括Marcus Rarnum(那時是DEC的員工)的UberMUD和UnterMUD和Andrew Molitor(Wesleyan大學的研究生)的TeenyMUD,是Andrew Molitor諸多計劃中的一個。UberMUD,用到了b+樹型數據結構,但被證明對於大多數MUD程序員是相當復雜的。UnterMUD用到了hash表,使用了很高明的緩沖技術而提高了數據訪問速度。這種技術被用到了一些商業MUD產品中。但是這種數據結構不允許一些MUD程序員所喜好的操作,比如檢查數據對象的總數量。UnterMUD的數據結構,也就是緩沖技術,已經被應用於其他一些伺服器中,比如MUSH 2.0。
至少有一種運行得很長時間的TeenyMUD。TeenyMUD使用了一種平直的文件,這種文件使用了一種直接索引方式,和hash搜索同樣有效,盡管比之於UnterMUD和UberMUD在緩沖技術方面還欠缺一點點。它的資源佔用率很低,對於那些只想試用MUD一兩個星期的人很適用。但是,那些喜歡小玩意的MUD程序員常常忽視了TeenyMUD因為它缺少一種可編程的環境。不言自明,如果你的伺服器是完全基於內存,而你的MUD進程增長迅速使得依靠硬碟的方式變得很誘人的話,那麼在這個時候要不損壞數據而更換伺服器則太晚了。
基於硬碟方式不是一種萬能鑰匙。它使得checkpoint(當伺服器運行時做備份)變得很復雜。一種技術上的意見認為基於硬碟的數據結構不會增進效率,如果這些數據夠多。理論上,經常被訪問的數據對象的緩沖會被放在內存中。,當需要時,這些數據就被交換到進程地址空間裡面。既然對象不能因為分布狀況而被組合到數據頁上,任何順序地訪問大量數據的操作都會使進程運行艱難。操作系統比大多數應用程序要更善於交換數據,一個基於硬碟的資料庫比一個基於內存的資料庫要痛苦一些。基於硬碟方式仍然會給數據增長加上一個令人滿意的上限,盡管硬碟映像會變地更大,更臃腫,有更多的碎片。
與其找尋一種復雜的方法來解決數據增長問題,許多MUD游戲寧願依靠一種公共的約束或rm -rf(rm:Unix命令-刪除)和一切從新開始者來構建資料庫。很不幸,這種標志之一以及一個成功的MUD游戲的副作用就是在程序大小和子進程數量兩方面的增長。————————
應該注意到硬碟,內存和cpu要佔用較多的系統資源。一個50個用戶的MUD游戲要佔用一個FTP進程的一定比例的網路帶寬而且不會使通訊顯著地減慢。
在1989年和1994年之間,普通互聯網主機上的內存和cpu性能增長了一到兩個數量級。但是在1989年,只有很少數的人曾經登錄到有額外的 CPU周期分給MUD游戲的互聯網主機上,特別是一個那種能控制整個的工作站使其他進程不能以合理的反應時間運行的主機。
同時,隨著MUD玩家把游戲介紹給他們的朋友,一定數量的大學生開始迷上了MUD游戲。但給予MUD的CPU周期仍然增長緩慢。這種不和諧導致了兩個結果。
人們開始在任意的地方運行MUD,也不請求得到系統管理員的允許。1990年,某個使用GNU群件的人總會在一個機器上發現四到五個MUD在運行,而用戶要干點實際的工作就必須殺死這些MUD進程。
在某個正在發展的虛擬社區里,掌握著可以運行MUD的資源的人總是有著很大的權力,甚至要超過他們對繼續改進MUD所需投入的時間和精力。
這樣我們就碰到了關於MUD的第二個問題
究竟是哪些人的游戲呢?
ASPNES認為他的游戲可能在幾個星期後人們就會對之興味索然。然而確沒發生這樣的情況,他於是就繼續運行他的游戲。很多用戶認為TinyMUD,還有他們在構建這個游戲的努力,會永遠持續下去(或者至少是在他們畢業之前,還有機會接觸網路的時候)。同時,ASPNES,他是一個游戲中的巫師,當游戲變得越來越大,越來越難以控制的時候,卻越來越懶地維護他的 MUD游戲,不去管理資源使用,也不去觀察游戲參與者的行為了。
一個用戶在TinyMUD上的所建對象的數目的限制只是一個「錢」(當然是游戲中的貨幣)的問題。玩家需要數個便士來建造空間和對象。一個玩家開始是一分錢也沒有的,但卻可以通過訪問別人的建築或尋找寶藏來賺一些錢。有野心的建造者很快發現計算金錢的系統可以用宏來屏蔽掉以便不斷地攫取有價值的寶藏。這對那些有野心的龐大建築計劃者很合口味。但對其他人來說,例如,他們建造了500個對象,卻被告知:「你找到了一分錢!」。他們被留在了鎮子的中心,以至於任何經過此地的人都必須看著這500個對象的列表。一旦這些對象被去掉,它們仍被加到資料庫里直到有人發出了一個工作循環命令。
TinyMUD的一些部分以線性的方式延伸,比如街道和地下鐵道。另外的部分卻互相交織在一起。有些電話亭連接了四到五個方向。WESLEYAN大學的蒸氣管道連接到了FLORIDA大學的校園里。台灣竟就在劍橋的旁邊。還有一些謎語,包括巨洞歷險的遺跡。還有住宅,准確地說,是一個住宅。
REC ROOM是一個早期的資料庫。它有一些玩具和場景。REC ROOM的主人讓別人可以連到資料庫上還為建造著提供了自由的外出的通道。因此任何建造了些對象的人都作了一個入口和出口同道連到了REC ROOM上,以代替資料庫的線性部分。很快REC ROOM成為一個生存的場所,但也是一個交通要沖。
同時,一小部分MUD玩家在建造,而只有極少數的人在探索。更多人把TinyMUD作為一個有傢具的交談系統。曾經有過議論要是鼓勵,或甚至於強迫玩家去探索。但是,定居卻成為MUD游戲里與建造和探索相競爭東西。大多數伺服器把交談設置得同建造一樣復雜。
當人們在一個虛擬的空間里聚集的時候,就意味著任何想搞點破壞的人可以寫一個程序連到MUD上,找到那個房間,發出大量的字元,那麼MUD就會死掉。
對於TinyMUD的這些已被發現的缺點,擁有資源的MUD玩家,或者從別人那裡能搞到機器運行MUD的人,開始設計新的MUD游戲。這些新的MUD游戲在建造方面有某種中央建設的計劃,或者至少在哪個人把什麼東西放在什麼地方的問題上有限制。所有這些育游戲都有更加積極的巫師。建造方面的限制導致了爭吵,偶爾甚至相當有強調性和尖刻。建造者可以看到他們的傑作被巫師循環掉以減少資料庫的在內存和硬碟間的交換數據。「REC ROOM現象」使建造一般空間的的人被提升到實際上的巫師的地位,他們能控制哪一個人能進入或者建造新的建築到公共的空間里去。這些人的力量只在系統管理員之下其他人之上。
MUD玩家大多數是大學學生,他們剛剛發現所謂「言論自由」和「藝術性表達」的概念。他們通常是狂野的,也是毫無效果地把這些想法加到資料庫上的項目里。而對於MUD游戲的下一個階段的矛盾已經被埋下伏筆,而且至今仍未被解決。
哪些人擁有MUD資料庫呢? 系統管理員? 巫師(在MUD游戲中有著編程和管理系統許可權的人)? 還是那些揮灑了汗水建造游戲中風景的人?
一個資料庫只是一個文件。如果你拷貝下來又會發生什麼呢? 哪些人又有這些拷貝呢? 如果在不同的機器上有著同一個資料庫的兩個拷貝在運行呢?
如果MUD游戲的規則或者是管理員定的規則發生了變化,那麼反對這些規則的玩家能不能摧毀他們的建築呢? 如果玩家沒有什麼舉動,是不是就意味著他們贊同新個規則呢? 如果玩家的建築包含了「公共」空間或vital topological interlink呢?
玩家有沒有權力參與MUD游戲? 他們有沒有權力去建造呢? 對於那些公平地參與者會不會有限制呢? 對於那些在建築上進行了投資的玩家對資料庫能有影響么? (Can it be decommissioned over their protests?)
分布式MUD游戲,(就象所有其他的分布式的東西一樣。) 已經被作為資料庫所有權問題和所有其他常見的錯誤的解決方案被提出來了。而且已經有了一些初步成功的分布式MUD游戲的實驗。玩家能夠從一個MUD游戲毫無困難地走到另一個MUD游戲。如果被拒絕的話,人們可以簡單地「拿起他們的玩具回家」。但是,分布式MUD游戲卻不怎麼流行。
很自然,如果用戶許可權的問題不被解決的話,對於那些有著用戶分級的系統就不會有令人滿意的解決方案。一個MUD系統管理員可能會選擇去相信一些主機上的MUD系統,但是如果其中的一個MUD因為疏忽而出現了安全問題,他們可以允許製造麻煩的人從這個MUD中出去然後登錄到另外的主機上。
而且,一個分布式的MUD游戲要求每個參與的MUD系統都使用同樣的伺服器代碼,或者至少是一個同樣的資料庫層。我還不知道有任何的令人滿意的解決方案來解決游戲玩家把游戲中的東西從一個MUD帶到另一個MUD中的問題。
做你想做的,那就是規則的全部含義。
正如其他的系統的管理員所知道的,人們對於共享的計算機資源和對於真實生活的資源都同樣的不是很有理性。在沒有一個積極的系統管理員的情況下,開始的TinyMUD的資料庫不僅變得很大而且亂七八糟。網路上有著年青的,未諳世事的年青人,他們喜歡搞破壞,而不是為自己建設。甚至能用一些簡單的編程工具來製造系統災難。在MUD上這可能變得更加糟糕,因為網路上對於匿名用戶的許可使的一般人也可以對網路安全造成威協。
MUD只是游戲,但是大多數系統管理員和玩家都普遍認為MUD是很有趣的,對於大多數人,接收端的煩惱並不是很有趣。但是對於煩惱到底是什麼的問題卻比編程時的問題要更加痛苦。狂暴的舉動或者是淫穢的內容能保護語言性的或藝術性的表達么? 或者對於那些平靜的玩家是一件煩人的事情?扮演一角色會給一個玩家粗魯的或侵虐的性格么?
當實際上沒有什麼社會規范時強迫玩家遵守社會規范沒有什麼用處。在一個MUD上,性別,種族,狀態,甚至地球引力都不是他們看上去那麼回事。一個人可以很好地理解,當那些憂郁的,或毛絨絨的,或那些可以飛的人堅持認為新手會在現實生活中和MUD中一樣行動,所帶來的混亂。而且,一種社會規范會成為一個社會團體存在的前提。一些學生利用學習的間隙想些別的事情而不是考慮關於道德的事情。
不管MUD游戲系統是不是社團,象泥(mud)水坑裡會生蟲一樣,他們也產生了、管理機構。通常,對於系統管理員有三種理解。
有象JIM ASPNES式的「放任自流」模式。這種MUD游戲趨向於毫無規律地快速增長,也沒有人去踢出那些搗亂的人。沒有一個積極的管理員,許多MUD社區<使用了一種強有力的MUD客戶端軟體作為主持正義的義務警察。防禦的功能包括:禁止問題玩家的輸出。對於攻擊的問題,有可能採用/usr/dict/words(是一個UNIX下的字典文件,有大概400多K位元組)來把對方給趕跑,特別是當對方的客戶端沒有你的強大時。
另一個方面,一些MUD游戲採用了另一種轉移的方式,組織了一個以可憎的行為為規范的社區,交互的集中形式是TinyMUD 的「kill」的命令。CATHARSIS是一個很多人知道的虛擬王國,那裡不需勞神費事,淫穢的內容就可以被提升到藝術的高度。
一些MUD游戲採取了自動管理的模式。這種方式工作得相當不錯,如果管理機器的人員就是MUD的頂級巫師,而且經常上線玩,因此熟知其他玩家,並且能觀察到不斷出現的問題的話。許多這樣的MUD游戲也使用一種用戶注冊的方式,使任何一個人想玩的人都必須回復一個有效的地址。而生事的傢伙也就永遠toaded. 這個系統最大的缺陷就是一個獨裁的MUD只會接納喜歡,或者至少是能容忍,頂級巫師的人。......
第三個可能是在大多數有能力的玩家中選出人來產生一個合作控制的MUD游戲管理模式。有人幽默地指出道:冒險式的MUD 游戲,允許用戶通過猜迷,殺死巫師直到他們也到了巫師階段,然後才開始建造自己的東西。TinyMUD和與之類似的MUD同類有一個相似的分級方式:玩家們通過和巫師外出遊歷直到他們也變成巫師來取得分數。有一些運行了很長時間的MUD使用了一種合作式的管理方式,通常是又投票來決定。當巫師和玩家分成了不同的派別,互相譴責對方粗野的不正當的行為,特別是在公共的論壇里的比如USENET里,這些MUD產生了復雜的或者是丑惡的政治問題
在另一個方面,政治是現實生活的一個不可避免的部分。一些玩家可能會認為政治很好玩,但是另外的人對此報著悲觀恐懼的看法。互聯網正在變得越來越擁擠,而這種早期的令人喜悅的無政府的狀態可能會轉變為一種更復雜的,但可以接受的狀態。
總結:你不能考軟體來解決社會問題。
幾年以前,系統管理員都在把沒有用的MUD從他們的機器上刪除掉。現在管理員們發現,MUD游戲為地理上分隔得很開的項目組成員在郵件列表上提供了顯而易見的優勢。使學生們為合作完成作業而與同學和老師保持聯系,也使行動不便的學生能夠有機會參與社會活動。MUD游戲讓學生和其他地方的學生在網路上實時交談,讓處於城市郊區的大學沒有了隔離的問題。一個虛擬的的公共機構可以讓充滿希望的學生,職員和貢獻者們做虛擬的旅行。
很清除,更進一步的軟體發展是組成穩定的MUD社區的前提。希缺資源對虛擬設區的重視和對真實社區是一樣的。MUD 的資料庫在運行它的伺服器超過了它的處理能力時,或者系統軟體變得不正常時,會被刪除掉,使得建造活動和社區建設的活動受到壓制。
即使有對伺服器軟體的升級,在一個字元界面的虛擬社區里生活的社會問題在五年裡幾乎沒有什麼變化。當有限的資源被去掉時,磨擦仍然會存在。
在MUD上有過主流媒體對「社會問題」的關注(這並不讓人吃驚;網路空間里的性和死亡比資料庫層面的討論要賣座得多)但是如果那些將要成為系統管理員人認為虛擬的強奸和MUD毒癮只是他們面對的唯一問題,他們會感到吃驚的。
MUD游戲應該是匿名的么,或者MUD的ID應該與現實生活的信息相聯系? 匿名問題可能會促進反社會的行為,但是經過注冊的ID免去了MUD游戲中最有用的性質:遮羞的面紗。一個妥協的方法是系統管理員不能隨意進入修改身分信息。但是任何保存在文件中的信息並不是象人們想像的那樣能夠保密。
哪些人去建造呢? 限制建造的目標到某些特定的主題和布局可以把那些有不同想法的人排除出去。但是無法控制的建造活動會使在資料庫里尋找一個目標或者搜索資料庫變得不可能。一個數據太多的資料庫對任何人是沒有任何趣味的。
新用戶應該學些什麼呢? 喜歡謾罵的用戶在MUD應該受到懲罰么,或者游戲裡面應該有現實生活的秩序? 你能夠確定的知道任何人的現實身份嗎? 把你的真實的生活中的行為移植到虛擬的環境中是沒有什麼用的。「財富」的和「個人」的概念在虛擬的生活中並不適用。文字的交互比真實生活的交流要簡單一些,只是沒了語調和真實的表達。也可能在這種環境種要知道語言對別人的影響也是不可能的。如果一個用戶用無意義的信息轟炸別人使得他或她不能使用MUD,那麼攻擊者要被認為是犯了錯誤嗎?......
即使是簡單的情況,象姓名的管理,也會是一個復雜的問題。一個MUD能夠支持多少個叫DAVE的人? 那麼給用戶分配唯一的數字-字母的ID會不會打破這種虛擬社區里社會的氣氛?
隨便想一想就會看到每一個社會問題並不能靠一個代碼補丁來解決。一個面向大學本科學生的MUD游戲的管理員可能會被裝上一些過慮的裝置來過慮一些特定的字詞。學生們卻又會想出一些新的方法來互相謾罵,這要比伺服器上的規定的更新要快得多。既然一些人能夠被一些簡單的話感動,任何形式的話語很快就會變得冗長無比。
忽視這些問題的MUD系統管理員會發現他們自己碰到每一個事件時都會隨意定一些規則。另一個方面,使規則生效的虛擬社區的社會情況比真實生活的變化要快很多。
「我們,世界上的MUD玩家,為了構建一個完美的資料庫,宣布聯合起來,並保證對於任何有能力的人都能得到kill命令的使用權力。而且在網路死掉之前提供一個備份的MUD,還要提高提示出現的頻率,而且保證我們還有我們的後代有一個安全的站點可以連線。為此我們宣布並確立這個《真實世界的虛擬城邦憲法》」
中國泥巴簡史
作者:龍鱗兒
二十世紀的某一天,在一個距離我們相當遙遠的國度里……
……
一群年輕人發瘋了似的狂喊著:「成了!成功了!我們成功了!!」
……
他們,就是泥巴的始祖----地球上第一批的MUD巫師。
在他們手中,誕生了地球上第一個MUD游戲(網路多用戶文字游戲)。他們,是偉大的,然而,他們的令人垂涎三尺的MUD是我們大部分並不精通英文的國人所可望而不可及的。所以,就有了我們中國自己的巫師的誕生。在中國,第一批接觸MUD的應該屬《東方故事》的巫師們了。他們重新修改並編譯了MUD的核心程序,並極富創意地加入了外國MUD中所沒有的一些核心程序。在他們的努力之下,第一個中文MUD誕生了。這,在中國MUD史上無疑是一個驚天地泣鬼神的壯舉!在他們不懈地宣傳和鼓動下,也誕生了中國第一批的MUD玩家----元老級的MUD玩家。而他們之中的很大一部份人也成了日後許多MUD大站的極具權威的巫師----所以說來說去還是一句話----得感謝《東方故事》的巫師們。
而後,不長的一段時間里,又有了許多聞名天下的MUD站點----《俠客行》、《天龍八部》、《西遊記》、《風雲》和《金庸群俠傳》(即後來的《書劍》)。然而,在MUD游戲在中國開始怒放的時候,老天送給了我們一個晴空霹靂----據傳,由於某些原因,MUD的元老----《東方故事》,將不得不退出歷史舞台----這是一個令人萬分沮喪的消息,面對這一事實,許多許多的玩家和巫師們都以淚洗面,恨不能從自己的身上挖出一塊肉來以換取《東方故事》的繼續開放。可該發生的還是發生了----《東方故事》還是關閉了,也不知當我們的可愛的玩家們滿懷希望地看著Zmud上的「Attempting connection to 東方故事」後,看到了無數次的「Reconnecting to 東方故事 on X seconds」的界面,會有何反應。
在後來一段日子裡,MUD界出現了一陣子平靜,而後又一個令MUD界震驚的消息傳來,《金庸群俠傳》等大型MUD被盜版了,這是就是那些居心不軌的巫師們乾的好事,他們先混入一個MUD的巫師內部,取得大部分巫師們的信任,然後,在為取得其他巫師的同意下,利用自己的許可權,把MUD的源碼通通地運回家裡去。一部分犯罪巫師利用這些源碼架設了自己的站點,而令一部分巫師中的敗類甚至把源碼賣給了別人。這就是當初為什麼許多大型的MUD巫師內部不穩定團結,為許可權問題爭的焦頭爛額以及《金庸群俠傳》後來改名叫《書劍》的原因。從此以後,各MUD都竭盡全力,力爭把許可權的設置盡力搞得萬無一失。於是,每一個MUD的文件夾又憑空大了好幾MB。
到了現在,MUD界基本上已處於一個平穩的階段。許多老玩家對MUD漸漸失去了興趣。而新的玩家也難以對一個單純的文字游戲產生興趣,加之許多巫師們逐漸的退出了江湖,不問世事,MUD的開發也有所停滯。MUD的生意也不再象過去一般紅火了。而此時,許多強有力的競爭對手又出現了,《笑傲江湖》、UO、《萬王之王》、《網路三國》等等均以其多媒體的優勢超越了MUD。看來,似乎是文字MUD該退伍的時候了,然而,事實並非如此!!!!!