简体   繁体   English

QuickFix for NET 无法识别 BeginString 或因 rasapi32.dll“缺失”而失败

[英]QuickFix for NET does not recognize BeginString or fails because of rasapi32.dll "missing"

We are writing .NET application for using QuickFix 5.0.SP2.我们正在编写 .NET 应用程序以使用 QuickFix 5.0.SP2。

There are 2 Nuget packages available: QuickFix.Net.NETCore.FIX50SP2 and QuickFIXn.FIX5.0SP2有 2 个 Nuget 包可用: QuickFix.Net.NETCore.FIX50SP2QuickFIXn.FIX5.0SP2

When using QuickFIXn.FIX5.0SP2 - the initiator works fine on a developer machine, on the test machine but fails to connect on the production machine with DLLNotFoundException "Unable to load 'rasapi32.dll'" , despite rasapi32.dll does exists on the machine.使用QuickFIXn.FIX5.0SP2时 - 启动器在开发人员机器上工作正常,在测试机器上,但无法在生产机器上连接,出现DLLNotFoundException "Unable to load 'rasapi32.dll'" ,尽管 rasapi32.dll 确实存在于机器。

When using QuickFix.Net.NETCore.FIX50SP2 - the initiator loads and connects on all machines, but cannot accept any message except admin messages.使用QuickFix.Net.NETCore.FIX50SP2时 - 启动器在所有机器上加载并连接,但不能接受除管理消息之外的任何消息。 Any App messages force it to logout with 'Unsupported BeginString' message.任何 App 消息都会强制它使用“Unsupported BeginString”消息注销。

Here is an example message I try to send and receive (QuoteRequest)这是我尝试发送和接收的示例消息(QuoteRequest)

8=FIXT.1.1|9=0332|35=R|49=ABC|56=DEF|34=172|52=20201103-13:06:01.420|1180=xxxxxx|1181=6183|60=20201103-13:06:00.985483|131=1604393423979-735|146=1|55=EUR/USD|63=SPOT|15=EUR|54=0|38=5000000|453=4|448=ST_TEST_BU2|447=D|452=500|2376=18|448=x.abc.sales|447=D|452=11|2376=24|448=X_TEXT|447=D|452=3|2376=24|448=X_ACCOUNT2|447=D|452=24|2376=18|10=163|

Initiator settings:启动器设置:

[SESSION]
AppDataDictionary=FIX50SP2.xml
StartTime=00:00:00
EndTime=23:59:59
BeginString=FIXT.1.1
SenderCompID=DEF
TargetCompID=ABC
HeartBtInt=30
DefaultApplVerID=FIX.5.0SP2
TransportDataDictionary=FIXT11.xml

Acceptor settings:接受者设置:

[SESSION]
AppDataDictionary=FIX50SP2.xml
StartTime=00:00:00
EndTime=23:59:59
BeginString=FIXT.1.1
SenderCompID=ABC
TargetCompID=DEF
HeartBtInt=30
DefaultApplVerID=FIX.5.0SP2
TransportDataDictionary=FIXT11.xml

Your program can not find the Windows dynamic library (in.Net called an assembly) named rasapi32.dll at run-time.您的程序在运行时找不到名为rasapi32.dll的 Windows 动态库(在.Net 中称为程序集)。 This file is most likely a dependency of another library your program is linking directly with.该文件很可能是您的程序直接链接的另一个库的依赖项。 I would guess the QuickFix library.我猜是 QuickFix 库。

If you can find rasapi32.dll somewhere on your machine you can either add its path to the PATH environment variable or copy it to the working directory of your program.如果您可以在计算机上的某个位置找到rasapi32.dll ,则可以将其路径添加到 PATH 环境变量或将其复制到程序的工作目录。 Using the PATH environment variable is preferable in case this library requires other ones in its own directory.最好使用 PATH 环境变量,以防此库在其自己的目录中需要其他环境变量。

Alternatively you can use a program called depends to walk the tree of library dependencies of your program, and it will indicate which library your program requires, that in turn requires rasapi32.dll或者,您可以使用一个名为depends的程序来遍历程序的库依赖关系树,它将指示您的程序需要哪个库,而这又需要rasapi32.dll

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 .NET 4无法安装,因为SECUREREPAIR无法创建文件SetupResources.dll的CreateContentHash:用于计算哈希错误:997 - .NET 4 fails to install because SECUREREPAIR fails to CreateContentHash of file SetupResources.dll: for computing hash Error: 997 尽管已安装.NET 4.5,但由于缺少.NET 3.5,MSI无法安装 - MSI fails to install because of missing .NET 3.5 although .NET 4.5 is installed SonarRunner因缺少FxCop而失败 - SonarRunner fails because of missing FxCop .NET/Silverlight 缺失 DLL - .NET/Silverlight Missing DLL .NET程序集DLL缺少依赖项 - .NET assembly DLL missing dependencies .NET:StreamReader 无法识别 ° 字符 - .NET : StreamReader does not recognize ° characters 无法加载文件或程序集'quickfix_net.dll'或其依赖项之一 - could not load file or assembly 'quickfix_net.dll' or one of its dependencies 在.net Project中嵌入Win32 dll - Embed a win32 dll in .net Project .Net MVC 4 项目失败并显示事件日志错误“模块 DLL C:\\WINDOWS\\system32\\inetsrv\\aspnetcore.dll 无法加载。 数据就是错误。” - .Net MVC 4 Project fails with Event Log Error “The Module DLL C:\WINDOWS\system32\inetsrv\aspnetcore.dll failed to load. The data is the error.” .NET mscorlib.dll和Kernel32.dll的关系 - .NET mscorlib.dll and Kernel32.dll relation
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM