So, I have the following setting:
- VB6 application using .NET dll, on the one hand
- .NET service on the other end
The VB6 application uses a small DLL interface to communicate with our new infrastructure (services, etc.) and is unlikely to be changed in functionality. We choose to use WCF with a binding like this
<system.serviceModel>
<client>
<endpoint address="net.tcp://localhost:8001/HostCommunicator" binding="netTcpBinding" bindingConfiguration="NETTcpBinding" contract="IHostCommunicationContract"/>
</client>
<bindings>
<netTcpBinding>
<binding name="NETTcpBinding" maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" receiveTimeout="00:10:00" sendTimeout="00:10:00">
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647"/>
<reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false"/>
<security mode="Transport">
<transport clientCredentialType="Windows" />
</security>
</binding>
</netTcpBinding>
</bindings>
</system.serviceModel>
<startup>
for communication.
This works fine and fast for single requests, but one VB6 application mode is a kind of batch mode when it sends an individual request for each file being processed. There will be about 1-4 queries per second.
, . 50 . VB6, 50 . 99% .
.