易语言取WinSock程序源码
系统结构:子程序1,取十六进制,取注册表,转换Unicode转Ansi,API_StringFromGUID2,API_LocalAlloc,API_LocalFree,API_WSAStartup,API_memmove,API_CopyMemory,API_取环境变量值,API_WSACleanup,API_WSCGetProviderPath,API_RegOpenKey,API_RegCloseKey,API_取系统目录,wvsprintf,API_RegQueryValueEx,API_WPUGetProviderPath,API_WSAEnumNameSpaceProviders,
======窗口程序集1
| |
| |------ _按钮1_被单击
| |
| |------ 子程序1
| |
| |------ 取十六进制
| |
| |------ 取注册表
| |
| |------ 转换Unicode转Ansi
| |
| |
======调用的Dll
| |
| |---[dll]------ API_StringFromGUID2
| |
| |---[dll]------ API_LocalAlloc
| |
| |---[dll]------ API_LocalFree
| |
| |---[dll]------ _宽字符到双字节
| |
| |---[dll]------ _宽字符到双字节1
| |
| |---[dll]------ API_WSAStartup
| |
| |---[dll]------ API_memmove
| |
| |---[dll]------ API_CopyMemory
| |
| |---[dll]------ API_取环境变量值
| |
| |---[dll]------ API_WSACleanup
| |
| |---[dll]------ API_WSCGetProviderPath
| |
| |---[dll]------ API_RegOpenKey
| |
| |---[dll]------ API_RegCloseKey
| |
| |---[dll]------ API_取系统目录
| |
| |---[dll]------ wvsprintf
| |
| |---[dll]------ API_RegQueryValueEx
| |
| |---[dll]------ API_WPUGetProviderPath
| |
| |---[dll]------ API_WSAEnumNameSpaceProviders
调用的DLL命令:
.DLL命令 API_StringFromGUID2, 整数型, "ole32.dll", "StringFromGUID2"
.参数 rguid, GUID, 传址
.参数 lpsz, 字节型, 数组
.参数 cchMax, 整数型
.DLL命令 API_LocalAlloc, 整数型, "kernel32", "LocalAlloc", , 从堆分配内存
.参数 wFlags, 整数型
.参数 wBytes, 整数型
.DLL命令 API_LocalFree, 整数型, "kernel32", "LocalFree", , 释放本地内存信息
.参数 hMem, 整数型
.DLL命令 _宽字符到双字节, , "kernel32.dll", "WideCharToMultiByte"
.参数 代码页, 整数型, , CodePage
.参数 标志, 整数型, , dwFlags
.参数 宽字符文本, 字节集, , lpWideCharStr
.参数 宽字符文本长度, 整数型, , cchWideChar
.参数 双字节文本, 字节集, , lpMultiByteStr
.参数 双字节文本长度, 整数型, , cchMultiByte
.参数 默认文本, 整数型, , lpDefaultChar
.参数 使用默认文本, 逻辑型, , lpUsedDefaultChar
.DLL命令 _宽字符到双字节1, 整数型, "kernel32.dll", "WideCharToMultiByte"
.参数 代码页, 整数型, , CodePage
.参数 标志, 整数型, , dwFlags
.参数 宽字符文本, 字节集, , lpWideCharStr
.参数 宽字符文本长度, 整数型, , cchWideChar
.参数 双字节文本, 整数型, , lpMultiByteStr
.参数 双字节文本长度, 整数型, , cchMultiByte
.参数 默认文本, 整数型, , lpDefaultChar
.参数 使用默认文本, 逻辑型, , lpUsedDefaultChar
.DLL命令 API_WSAStartup, 整数型, "ws2_32.dll", "WSAStartup"
.参数 wVersionRequired, 短整数型
.参数 lpWSAData, WSAData, 传址
.DLL命令 API_memmove, , "crtdll.dll", "memmove"
.参数 pVoid, WSANAMESPACE_INFOA, 传址
.参数 pVoid, 整数型
.参数 FunctionCall, 整数型, 传址
.DLL命令 API_CopyMemory, , "kernel32", "RtlMoveMemory"
.参数 pDest, WSANAMESPACE_INFOA, 传址
.参数 pSrc, 整数型
.参数 ByteLen, 整数型
.DLL命令 API_取环境变量值, 整数型, "kernel32", "GetEnvironmentVariableA", , 取得一个环境变量的值 载入的环境变量的长度。如指定的环境字串不存在,就返回零。如lpBuffer的长度不足以全部容下字串,则返回字串的全长。随后可用这个长度分配一个足够大的缓冲区
.参数 环境字串名称, 文本型, , 欲读入的环境字串的名称
.参数 缓冲区, 字节集, , 随同字串装载的一个缓冲区。注意预先将其初始化到合适的长度
.参数 缓冲区长度, 整数型, , lpBuffer的长度;
.DLL命令 API_WSACleanup, 整数型, "ws2_32.dll", "WSACleanup"
.DLL命令 API_WSCGetProviderPath, 整数型, "ws2_32.dll", "WSCGetProviderPath"
.参数 lpProviderId, GUID
.参数 lpszProviderDllPath, 字节型, 数组
.参数 lpProviderDllPathLen, 整数型, 传址
.参数 lpErrno, 整数型, 传址
.DLL命令 API_RegOpenKey, 整数型, "advapi32.dll", "RegOpenKeyA", , 打开一个现有的注册表项 零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
.参数 hKey, 整数型, , 一个已打开项的句柄,或指定一个标准项名
.参数 lpSubKey, 文本型, , 要打开的项名
.参数 phkResult, 整数型, 传址, 指定一个变量,用于装载(保存)打开注册表项的一个句柄;
.DLL命令 API_RegCloseKey, 整数型, "advapi32.dll", "RegCloseKey", , 关闭系统注册表中的一个项(或键) 零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
.参数 hKey, 整数型, , 要关闭的项;
.DLL命令 API_取系统目录, 整数型, "kernel32", "GetSystemDirectoryA", , 这个函数能取得Windows系统目录(System目录)的完整路径名。在这个目录中,包含了所有必要的系统文件。根据微软的标准,其他定制控件和一些共享组件也可放到这个目录。通常应避免在这个目录里创建文件。在网络环境中,往往需要管理员权限才可对这个目录进行写操作 装载到lpBuffer缓冲区的字符数量。如lpBuffer不够大,不能容下文件名,则返回要求的缓冲区长度
.参数 缓冲区, 字节集, , 用于装载系统目录路径名的一个字串缓冲区。它应事先初始化成nSize+1个字符的长度。通常至少要为这个缓冲区分配MAX_PATH个字符的长度
.参数 缓冲区长度, 整数型, , lpBuffer字串的最大长度;
.DLL命令 wvsprintf, 整数型, "user32.dll", "wvsprintfA", 公开, 十进制转十六进制
.参数 lpstr, 文本型, , 取空白文本
.参数 lpcstr, 文本型, , “%X”
.参数 OptionalArguments, 整数型, 传址, 欲取的数据
.DLL命令 API_RegQueryValueEx, 整数型, "advapi32.dll", "RegQueryValueExA", , 获取一个项的设置值 零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
.参数 hKey, 整数型, , 一个已打开项的句柄,或者指定一个标准项名
.参数 lpValueName, 文本型, , 要获取值的名字
.参数 lpReserved, 整数型, , 未用,设为零
.参数 lpType, 整数型, , 用于装载取回数据类型的一个变量
.参数 lpData, 字节集, , 用于装载指定值的一个缓冲区
.参数 lpcbData, 整数型, 传址, 用于装载lpData缓冲区长度的一个变量。一旦返回,它会设为实际装载到缓冲区的字节数;
.DLL命令 API_WPUGetProviderPath, 整数型, "ws2_32.dll", "WPUGetProviderPath"
.参数 lpProviderId, GUID
.参数 lpszProviderDllPath, 字节型, 数组
.参数 lpProviderDllPathLen, 整数型, 传址
.参数 lpErrno, 整数型, 传址
.DLL命令 API_WSAEnumNameSpaceProviders, 整数型, "ws2_32.dll", "WSAEnumNameSpaceProvidersA"
.参数 lpdwBufferLength, 整数型, 传址
.参数 lpnspBuffer, 整数型
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。