//
//
//
//
//
//
//
//
//
//
软件Tags:
易语言移除U盘源码系统结构:USB_移除U盘,CTL_CODE,CloseLockFileHandle,NT_SUCCESS,MyGetFileType,GetFileFullPath,取字节集指针,到窄字符,CloseRemoteHandle,GetProcessCommandLine,RemoveUsbDrive,IOCTL_STORAGE_GET_DEVICE_NUMBER,GetDrivesDevInstByDeviceNumber,DLL_SetupDiGetDeviceInterfaceDetail2,DLL_SetupDiGetDeviceInterfaceDetail,DLL_SetupDiEnumDeviceInterfaces,DLL_SetupDiDestroyDeviceInfoList,DLL_设备操作2,DLL_CM_Request_Device_EjectW,NtQuerySystemInformation,DLL_SetupDiGetClassDevs,NtOpenProcess,NtQueryObject,DLL_取中止线程退出代码,ReadProcessMemory,ReadProcessMemory2,DLL_CreateFile,DLL_取当前进程标识符,DLL_取当前进程伪句柄,NtDuplicateObject,WaitForSingleObject,WideCharToMultiByte,CreateRemoteThread,获取逻辑驱动器字串,DLL_CM_Get_Parent,TerminateProcess,DLL_GetDriveType,DLL_CloseHandle,TerminateThread,QueryDosDevice,DLL_取实例句柄,DLL_取进程地址,拷贝内存02,NtClose,拷贝内存01,拷贝内存03,TestLenW2M, ======程序集1 || ||------_启动子程序 || ||------_临时子程序 || ||------USB_移除U盘 || ||------CTL_CODE || || ======modLockFileInfo || ||------CloseLockFileHandle || ||------NT_SUCCESS || ||------MyGetFileType || ||------GetFileFullPath || ||------取字节集指针 || ||------到窄字符 || ||------CloseRemoteHandle || ||------GetProcessCommandLine || || ======modRemoveUsbDrive || ||------RemoveUsbDrive || ||------IOCTL_STORAGE_GET_DEVICE_NUMBER || ||------GetDrivesDevInstByDeviceNumber || || ======调用的Dll || ||---[dll]------DLL_SetupDiGetDeviceInterfaceDetail2 || ||---[dll]------DLL_SetupDiGetDeviceInterfaceDetail || ||---[dll]------DLL_SetupDiEnumDeviceInterfaces || ||---[dll]------DLL_SetupDiDestroyDeviceInfoList || ||---[dll]------DLL_设备操作2 || ||---[dll]------DLL_CM_Request_Device_EjectW || ||---[dll]------NtQuerySystemInformation || ||---[dll]------DLL_SetupDiGetClassDevs || ||---[dll]------NtOpenProcess || ||---[dll]------NtQueryObject || ||---[dll]------DLL_取中止线程退出代码 || ||---[dll]------ReadProcessMemory || ||---[dll]------ReadProcessMemory2 || ||---[dll]------DLL_CreateFile || ||---[dll]------DLL_取当前进程标识符 || ||---[dll]------DLL_取当前进程伪句柄 || ||---[dll]------NtDuplicateObject || ||---[dll]------WaitForSingleObject || ||---[dll]------WideCharToMultiByte || ||---[dll]------CreateRemoteThread || ||---[dll]------获取逻辑驱动器字串 || ||---[dll]------DLL_CM_Get_Parent || ||---[dll]------TerminateProcess || ||---[dll]------DLL_GetDriveType || ||---[dll]------DLL_CloseHandle || ||---[dll]------TerminateThread || ||---[dll]------QueryDosDevice || ||---[dll]------DLL_取实例句柄 || ||---[dll]------DLL_取进程地址 || ||---[dll]------拷贝内存02 || ||---[dll]------NtClose || ||---[dll]------拷贝内存01 || ||---[dll]------拷贝内存03 || ||---[dll]------TestLenW2M 调用的DLL命令: .DLL命令DLL_SetupDiGetDeviceInterfaceDetail2,整数型,"Setupapi.dll","SetupDiGetDeviceInterfaceDetailA" .参数DeviceInfoSet,整数型 .参数DeviceInterfaceData,SP_DEVICE_INTERFACE_DATA .参数DeviceInterfaceDetailData,SP_DEVICE_INTERFACE_DETAIL_DATA .参数DeviceInterfaceDetailDataSize,整数型 .参数RequiredSize,整数型,传址 .参数DeviceInfoData,SP_DEVINFO_DATA .DLL命令DLL_SetupDiGetDeviceInterfaceDetail,整数型,"Setupapi.dll","SetupDiGetDeviceInterfaceDetailA" .参数DeviceInfoSet,整数型 .参数DeviceInterfaceData,SP_DEVICE_INTERFACE_DATA .参数DeviceInterfaceDetailData,整数型 .参数DeviceInterfaceDetailDataSize,整数型 .参数RequiredSize,整数型,传址 .参数DeviceInfoData,整数型 .DLL命令DLL_SetupDiEnumDeviceInterfaces,整数型,"Setupapi.dll","SetupDiEnumDeviceInterfaces" .参数DeviceInfoSet,整数型 .参数DeviceInfoData,整数型 .参数InterfaceClassGuid,字节集 .参数MemberIndex,整数型 .参数DeviceInterfaceData,SP_DEVICE_INTERFACE_DATA .DLL命令DLL_SetupDiDestroyDeviceInfoList,逻辑型,"Setupapi.dll","SetupDiDestroyDeviceInfoList" .参数hDeviceInfoSet,整数型 .DLL命令DLL_设备操作2,整数型,"kernel32.dll","DeviceIoControl" .参数设备句柄,整数型 .参数控制参数,整数型 .参数参数一,整数型 .参数参数二,整数型 .参数参数三,STORAGE_DEVICE_NUMBER .参数参数四,整数型 .参数缓冲区字节数,整数型,传址 .参数OVERLAPPED结构地址,整数型 .DLL命令DLL_CM_Request_Device_EjectW,整数型,"Setupapi.dll","CM_Request_Device_EjectW" .参数dwDevInst,整数型 .参数pVetoType,整数型,传址 .参数pszVetoName,文本型 .参数ulNameLength,整数型 .参数ulFlags,整数型 .DLL命令NtQuerySystemInformation,整数型,"ntdll.dll","NtQuerySystemInformation" .参数SystemInformationClass,整数型 .参数pSystemInformation,字节型,数组 .参数SystemInformationLength,整数型 .参数ReturnLength,整数型,传址 .DLL命令DLL_SetupDiGetClassDevs,整数型,"Setupapi.dll","SetupDiGetClassDevsA" .参数ClassGuid,字节集 .参数Enumerator,文本型 .参数hwndParent,整数型 .参数Flags,整数型 .DLL命令NtOpenProcess,整数型,"ntdll.dll","NtOpenProcess" .参数ProcessHandle,整数型,传址 .参数AccessMask,整数型 .参数ObjectAttributes,OBJECT_ATTRIBUTES .参数ClientID,CLIENT_ID .DLL命令NtQueryObject,整数型,"ntdll.dll","NtQueryObject" .参数ObjectHandle,整数型 .参数ObjectInformationClass,整数型 .参数ObjectInformation,字节集 .参数ObjectInformationLength,整数型 .参数ReturnLength,整数型,传址 .DLL命令DLL_取中止线程退出代码,整数型,"kernel32.dll","GetExitCodeThread" .参数线程句柄,整数型 .参数退出代码,整数型,传址 .DLL命令ReadProcessMemory,整数型,"kernel32.dll","ReadProcessMemory" .参数hProcess,整数型 .参数lpBaseAddress,整数型 .参数lpBuffer,整数型,传址 .参数nSize,整数型 .参数lpNumberOfBytesWritten,整数型,传址 .DLL命令ReadProcessMemory2,整数型,"kernel32.dll","ReadProcessMemory" .参数hProcess,整数型 .参数lpBaseAddress,整数型 .参数lpBuffer,文本型 .参数nSize,整数型 .参数lpNumberOfBytesWritten,整数型,传址 .DLL命令DLL_CreateFile,整数型,"Kernel32.dll","CreateFileA" .参数lpFileName,文本型 .参数dwDesiredAccess,整数型 .参数dwShareMode,整数型 .参数lpSecurityAttributes,整数型 .参数dwCreationDisposition,整数型 .参数dwFlagsAndAttributes,整数型 .参数hTemplateFile,整数型 .DLL命令DLL_取当前进程标识符,整数型,"kernel32.dll","GetCurrentProcessId" .DLL命令DLL_取当前进程伪句柄,整数型,"kernel32.dll","GetCurrentProcess" .DLL命令NtDuplicateObject,整数型,"ntdll.dll","NtDuplicateObject" .参数SourceProcessHandle,整数型 .参数SourceHandle,整数型 .参数TargetProcessHandle,整数型 .参数TargetHandle,整数型,传址 .参数DesiredAccess,整数型 .参数HandleAttributes,整数型 .参数Options,整数型 .DLL命令WaitForSingleObject,整数型,"kernel32.dll","WaitForSingleObject" .参数hHandle,整数型 .参数dwMilliseconds,整数型 .DLL命令WideCharToMultiByte,整数型,"kernel32.dll","WideCharToMultiByte" .参数a,整数型 .参数b0,整数型 .参数PWSTR,整数型 .参数a_1,整数型 .参数pszGbt,文本型 .参数iLen,整数型 .参数a1,整数型 .参数a0,整数型 .DLL命令CreateRemoteThread,整数型,"kernel32.dll","CreateRemoteThread" .参数HANDLE,整数型 .参数p0,整数型 .参数p1,整数型 .参数f2,整数型 .参数module,整数型 .参数p3,整数型 .参数p,整数型 .DLL命令获取逻辑驱动器字串,整数型,"kernel32.dll","GetLogicalDriveStringsA" .参数缓冲器长度,整数型 .参数缓冲区,字节集 .DLL命令DLL_CM_Get_Parent,整数型,"cfgmgr32.dll","CM_Get_Parent" .参数pdwDevInst,整数型,传址 .参数dwDevInst,整数型 .参数ulFlags,整数型 .DLL命令TerminateProcess,整数型,"kernel32.dll","TerminateProcess" .参数线程句柄,整数型 .参数退出代码,整数型 .DLL命令DLL_GetDriveType,整数型,"Kernel32.dll","GetDriveTypeA" .参数lpRootPathName,文本型 .DLL命令DLL_CloseHandle,逻辑型,"Kernel32.dll","CloseHandle" .参数句柄,整数型 .DLL命令TerminateThread,整数型,"kernel32.dll","TerminateThread" .参数线程句柄,整数型 .参数退出代码,整数型 .DLL命令QueryDosDevice,整数型,"kernel32.dll","QueryDosDeviceA" .参数lpDeviceName,文本型 .参数lpTargetPath,文本型 .参数ucchMax,整数型 .DLL命令DLL_取实例句柄,整数型,"kernel32.dll","GetModuleHandleA" .参数file,文本型 .DLL命令DLL_取进程地址,整数型,"kernel32.dll","GetProcAddress" .参数hw,整数型 .参数name,文本型 .DLL命令拷贝内存02,,"kernel32.dll","RtlMoveMemory" .参数目的变量,SYSTEM_HANDLE,数组 .参数源,字节型,传址 .参数尺寸,整数型 .DLL命令NtClose,整数型,"ntdll.dll","NtClose" .参数ObjectHandle,整数型 .DLL命令拷贝内存01,,"kernel32.dll","RtlMoveMemory" .参数目的变量,整数型,传址 .参数源,字节型,传址 .参数尺寸,整数型 .DLL命令拷贝内存03,,"kernel32.dll","RtlMoveMemory" .参数目的变量,整数型,传址 .参数源,整数型 .参数尺寸,整数型 .DLL命令TestLenW2M,整数型,"kernel32.dll","WideCharToMultiByte" .参数a,整数型 .参数b0,整数型 .参数PWSTR,整数型 .参数a_1,整数型 .参数a3,整数型 .参数a2,整数型 .参数a1,整数型 .参数a0,整数型
