| File | Date | Author | Commit |
|---|---|---|---|
| bin | 2024-08-16 |
|
[dca744] 1.7.1-20240816 |
| doc | 2024-07-12 |
|
[555316] 1.6.1-20240712 |
| include | 2024-08-16 |
|
[dca744] 1.7.1-20240816 |
| lib | 2024-08-16 |
|
[dca744] 1.7.1-20240816 |
| support | 2024-08-16 |
|
[dca744] 1.7.1-20240816 |
| ChangeLog | 2024-08-16 |
|
[dca744] 1.7.1-20240816 |
| LICENSE | 2023-08-08 |
|
[bfce24] 1.5.0-20230808 |
| README.md | 2024-08-16 |
|
[dca744] 1.7.1-20240816 |
| README_EN.md | 2024-08-16 |
|
[dca744] 1.7.1-20240816 |
| sdk_v1.7.1-Msvc2013_20240816.zip | 2024-08-16 |
|
[dca744] 1.7.1-20240816 |
| sdk_v1.7.1-Msvc2019_20240816.zip | 2024-08-16 |
|
[dca744] 1.7.1-20240816 |
软件产品开发过程中经常碰到如下场景的问题:
这是一款windows平台下基于消息驱动的SDK开发框架,提供线程、管道、文件和网络等基础接口。
asynframe framework解决上面所提的软件产品开发过程中的六大问题:
功能特性:
开发优势:
| 模块 | 类型 | 功能 | 例子/程序 |
|---|---|---|---|
| asyncore | 框架 | asynframe框架 | \support\testframe |
| 集成到MFC | \support\3rd\mfc\testnetserver \support\3rd\mfc\testnetclient_dlg \support\3rd\mfc\testnetclient_doc |
||
| 集成到DUI | \support\3rd\Dui | ||
| 集成到SoUI | \support\3rd\Sui | ||
| crashexplorer | 插件[asyncore] | 捕获当前进程的崩溃信息,同时生成dmp文件 | \support\testcrashexplorer |
| console | 插件[asyncore] | 命令控制台 1.支持加载/卸载IOsCommand插件:cmd/lua/sqlite 2.支持键盘/鼠标输入 |
\support\testconsole |
| asynfile | 插件[asyncore] | 文件 | \support\testfile_copy \support\testfile_copy-pipe |
| asynipcs | 插件[asyncore] | 进程间通讯 | \support\testipcclient \support\testipcserver |
| asynneta | 插件[asyncore] | 服务端代理 1.支持http/https代理:实现Basic/Digest认证 2.支持ftp/ftps代理 3.支持socks4.0/4.a/5.0代理 4.提供tcp/udp端口转发 |
aneta |
| asynsock | 插件[asyncore] | 网络 1.支持ipv6兼容ipv4 2.支持默认DNS 解析 |
\support\testnetclient \support\testnetserver pingx |
| dns | 插件[asynsock] | 域名解析 1.udp dns 2.tcp dns 3.httpDNS: 实现阿里云/腾迅云 |
\support\testdns |
| ftp | 插件[asynsock] | ftp 协议 | aftpx acurl |
| http | 插件[asynsock] | http协议 | ahttp acurl |
| rtsp | 插件[asynsock] | rtsp协议 1.支持rtsp over http |
\support\testnetclient_rtsp \support\testnetserver_rtsp |
| ssl | 插件[asynsock] | ssl/tls加/解密 1.支持p12证书 |
\support\testnetclient_ssl \support\testnetserver_ssl |
| proxy | 插件[asynsock] | 客户端代理 1.支持http/https代理:实现Basic/Digest认证 2.支持ftp/ftps代理 3.支持socks4.0/4.a/5.0代理 |
\support\testnetclient_proxy \support\testnetserver_socks |
| websocket | 插件[asynsock] | websocket协议 1.支持数据帧分片 2.优先发送控制帧 |
\support\testnetclient_websocket \support\testnetserver_websocket |
| zip | 插件 | 基于zlib-1.2.11.0实现IDataTransmit接口 1.支持压缩zip文件 2.deflate/inflate数据 |
\support\testframe |
| sqlite | 插件 | 基于sqlite-3.3.20实现IOsComman接口 | \support\testframe |
| dtp | 插件[asynsock] | 实现tcp/udp的端口复用框架 | \support\testnetserver_dtp-tcp.port \support\testnetserver_dtp-udp.port |
| lua | 插件 | 基于lua-5.4.4实现IOsCommand接口执行lua框架 | \support\testlua\testlua \support\testlua\testapi |
| jvmproxy | 插件 | 实现IOsComman接口执行java框架 | \support\testjava\testjvm \support\testjava\testapi javax |
2024/08/16 发布windows平台的asynframe framework v1.7.1
2024/07/12 发布windows平台的asynframe framework v1.6.1
2023/11/15 发布windows平台的asynframe framework v1.5.2
2023/03/31 发布windows平台的asynframe framework v1.4.6
2023/02/02 发布windows平台的asynframe framework v1.3.2
2022/06/08 发布windows平台的asynframe framework v1.2.0
2022/05/26 发布windows平台的asynframe framework v1.1.0
2022/05/05 发布windows平台的asynframe framework v1.0.0
sdk_v1.7.1-Msvc2019_20240816.zip是通过Microsoft Visual Studio 2019编译的SDK
sdk_v1.7.1-Msvc2013_20240816.zip是通过Microsoft Visual Studio 2013编译的SDK
int main(int argc, const char *argv[])
{
HRESULT ret = Initialize(NULL, NULL); //Initialize asynframe
if( ret != NO_ERROR )
{
return 1;
}
InstancesManager *lpInstancesManager = GetInstancesManager(); //Get the instance manager, which can get all interfaces
CComPtr<IAsynFrameThread> spAsynFrameThread; //Create thread
lpInstancesManager->NewInstance(0,0,IID_IAsynFrameThread, (void**)&spAsynFrameThread);
lpInstancesManager->Require(STRING_from_string(IN_AsynNetwork)); //Load network module
CComPtr<IAsynNetwork > spAsynNetwork;
lpInstancesManager->GetInstance(STRING_from_string(IN_AsynNetwork), IID_IAsynNetwork, (void **)&spAsynNetwork);
CComPtr<IAsynUdpSocket > spAsynUdpSocket; //Create UDP object
spAsynNetwork->CreateAsynTcpSocket(&spAsynTcpSocket );
spAsynUdpSocket->Bind(asynsdk::STRING_EX::null, 0, 0, NULL);
......
Destory(); //Destory asynframe
return 0;
}
接口定义
IAsynFrame
IAsynFileSystem
IAsynIpcChannel
IAsynNetwork
IAsynNetAgent
IConsole
IExceptionTrapper
INet
IProxy
ISsl
IScriptHost
IDtp
基础模块
asyncore
asynfile
asynipcs
asynsock
crashexplorer
网络模块
asynneta
dtp
dns
ftp
http
rtsp
proxy
ssl
websocket
Log4cplus
Lua
Luatinker
Zlib
Sqlite
FFmpeg
Copyright (c) 2012 - 2032, All rights reserved.
Author: Shengqian Yang, China, netsecsp@hotmail.com