取消
显示结果 
搜索替代 
您的意思是: 

dll initialization routine failed

I'm used to simply including LabVIEW dlls (like lvanlys.dll) in the main directory of my windows application when I build a new version. This is the directory that contains the .exe. It seems, however, that in using the LabVIEW 7.1 run-time engine, lvanlys.dll has some very strict depedency on other dlls, namely those located in the Shared\MKL\ directory. If I try to include these in the build directory (and remove them from the main LV Shared folder), lvanlys.dll can't find them (even though they are in the same directory) and I get theusual dll initialization routine failed error.
 
Anyone else have this problem and know the workaround (other than installing LV, which is not an option for us)?
 
If the answer is that we need to install the run-time engine when we distribute the aplication, then that's what we'll do.
 
Thanks.
0 项奖励
1 条消息(共 4 条)
3,755 次查看
Hello,
 
I think those dependencies on the MKL dlls are run-time dependencies, and perhaps there's a relative path hardcoded somewhere.  I think the safest and most dependable solution is going to be to install the run-time engine.
 
Best Regards,
 
JLS
Best,
JLS
Sixclear
0 项奖励
2 条消息(共 4 条)
3,745 次查看

Thanks, JLS.

We figured it out. There's an entry in the registry that lvanyls.dll points to specifying the location of the LV shared directory (and therefore the MKL directory). If it's not found in that exact location, the dll load aborts.

We're trying to not include the runtime installer in our application installer because of the size, so we're figuring out our own workaround (and trying to CYA in the meantime 🙂 ).

-Scott

0 项奖励
3 条消息(共 4 条)
3,743 次查看
Ahh, great find!
 
Thanks for the note, and best of luck!
 
JLS
Best,
JLS
Sixclear
0 项奖励
4 条消息(共 4 条)
3,730 次查看