Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Winapi 传输文件&x2B;安全通道_Winapi_Winsock_Iocp_Transmitfile_Schannel - Fatal编程技术网

Winapi 传输文件&x2B;安全通道

Winapi 传输文件&x2B;安全通道,winapi,winsock,iocp,transmitfile,schannel,Winapi,Winsock,Iocp,Transmitfile,Schannel,我使用带有I/O完成端口的TransmitFile API在Windows上实现高效的多线程文件服务器 这一切都很好,但我现在还使用实现了安全套接字。因为TransmitFile将文件直接流式传输到套接字,所以我看不到调用EncryptMessage的方法—我是否需要分块读取文件,手动加密和传输它们 当TransmitFile仅用于高性能文件传输,并且安全套接字非常常见时,这似乎有点愚蠢。考虑到我认为TransmitFile最初是为IIS实现的,我想知道IIS是做什么的 (我最初制作了“Tran

我使用带有I/O完成端口的TransmitFile API在Windows上实现高效的多线程文件服务器

这一切都很好,但我现在还使用实现了安全套接字。因为TransmitFile将文件直接流式传输到套接字,所以我看不到调用EncryptMessage的方法—我是否需要分块读取文件,手动加密和传输它们

当TransmitFile仅用于高性能文件传输,并且安全套接字非常常见时,这似乎有点愚蠢。考虑到我认为TransmitFile最初是为IIS实现的,我想知道IIS是做什么的


(我最初制作了“TransmitFile”和“EncryptMessage”超链接,但垃圾邮件保护只允许一个-抱歉)

IIS使用TransmitFile,但不用于加密数据。我不知道它实际上做了什么,但人们承认,添加加密将大大降低速度

TransmitFile直接使用操作系统缓存,任何逐字节操作(如加密)都意味着这是不可能的


我确实看到IIS7被特别吹捧为在内核中工作。

好吧,这是有道理的。有没有一种方法可以“锁定”套接字/句柄,使我启动的任何重叠操作在解锁之前不会真正写入任何内容?我想可能没有,但在我编写自定义解决方案之前,值得检查一下,这可能会变得非常复杂。@Jamie M-据我所知不是这样-但我会将此作为一个新问题发布,以确保您获得尽可能好的信息。