易语言播放内存中的MP3模块源码
系统结构:LoadMemMp3,FreeMemMp3,FreeMemAllMp3,NewCreateFile,安装APIHOOK,卸载APIHOOK,VirtualProtect,LoadLibrary,GetProcAddress,CloseHandle,CreatePipe,WriteFile,RtlComputeCrc32,CreateFile,
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ LoadMemMp3
| |
| |------ FreeMemMp3
| |
| |------ FreeMemAllMp3
| |
| |------ NewCreateFile
| |
| |
======APIHOOK
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 安装APIHOOK
| |
| |------ 卸载APIHOOK
| |
| |
======调用的Dll
| |
| |---[dll]------ VirtualProtect
| |
| |---[dll]------ LoadLibrary
| |
| |---[dll]------ GetProcAddress
| |
| |---[dll]------ CloseHandle
| |
| |---[dll]------ CreatePipe
| |
| |---[dll]------ WriteFile
| |
| |---[dll]------ RtlComputeCrc32
| |
| |---[dll]------ CreateFile
调用的DLL命令:
.DLL命令 VirtualProtect, 整数型, "kernel32", "VirtualProtect"
.参数 lpAddress, 整数型
.参数 dwSize, 整数型
.参数 flNewProtect, 整数型
.参数 lpflOldProtect, 整数型, 传址
.DLL命令 LoadLibrary, 整数型, "kernel32", "LoadLibraryA"
.参数 lpLibFileName, 文本型
.DLL命令 GetProcAddress, 整数型, "kernel32", "GetProcAddress"
.参数 hModule, 整数型
.参数 lpProcName, 文本型
.DLL命令 CloseHandle, 整数型, "kernel32", "CloseHandle"
.参数 hObject, 整数型
.DLL命令 CreatePipe, 整数型, "kernel32", "CreatePipe"
.参数 phReadPipe, 整数型, 传址
.参数 phWritePipe, 整数型, 传址
.参数 lpPipeAttributes, 整数型
.参数 nSize, 整数型
.DLL命令 WriteFile, 整数型, "kernel32", "WriteFile"
.参数 hFile, 整数型
.参数 lpBuffer, 字节集
.参数 nNumberOfBytesToWrite, 整数型
.参数 lpNumberOfBytesWritten, 整数型, 传址
.参数 lpOverlapped, 整数型
.DLL命令 RtlComputeCrc32, 整数型, "ntdll.dll"
.参数 flags, 整数型
.参数 Data, 字节集
.参数 LenData, 整数型
.DLL命令 CreateFile, 整数型, "kernel32", "CreateFileA"
.参数 lpFileName, 文本型
.参数 dwDesiredAccess, 整数型
.参数 dwShareMode, 整数型
.参数 lpSecurityAttributes, 整数型
.参数 dwCreationDisposition, 整数型
.参数 dwFlagsAndAttributes, 整数型
.参数 hTemplateFile, 整数型
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。