运行 来自探测文件夹的 C++ 可再发行文件
Running C++ Redistributable files from a Probing Folder
我目前遇到来自另一个文件夹的 "Probing" dll 的问题。特别是我的应用程序所依赖的 C++ Redistributable 文件,我刚刚将其包含在我的文件夹中以避免必须 运行 安装程序。
如果这些文件与 exe 位于同一文件夹中,则应用程序 运行 成功:
- msvcp110.dll
- msvcp120.dll
- msvcp140.dll
- msvcr110.dll
- msvcr120.dll
- vcruntime140.dll
然而,当我在我的 App.config 应用程序中尝试将 dll 探测到其他 2 个文件夹时,其中的 none 是在执行 .exe 时加载的。
<probing privatePath="DataResources/cefsharp;DataResources/miscellaneous" />
DLLS 位于 DataResources/miscellaneous
文件夹中。然而,来自 DataResources/cefsharp
的 DLLS(这是我的一些其他 dll)已加载。
有人知道问题出在哪里吗?
非常感谢!
事实证明,当涉及到这些文件时,CefSharp 依赖于它们与 CefSharp 文件本身位于完全相同的文件夹中。就我而言,将这些文件移动到 CefSharp 文件夹就可以了。
在其他情况下可能不是这种情况,但如果您使用 CefSharp,则会遇到同样的问题,这就是原因。
我目前遇到来自另一个文件夹的 "Probing" dll 的问题。特别是我的应用程序所依赖的 C++ Redistributable 文件,我刚刚将其包含在我的文件夹中以避免必须 运行 安装程序。
如果这些文件与 exe 位于同一文件夹中,则应用程序 运行 成功:
- msvcp110.dll
- msvcp120.dll
- msvcp140.dll
- msvcr110.dll
- msvcr120.dll
- vcruntime140.dll
然而,当我在我的 App.config 应用程序中尝试将 dll 探测到其他 2 个文件夹时,其中的 none 是在执行 .exe 时加载的。
<probing privatePath="DataResources/cefsharp;DataResources/miscellaneous" />
DLLS 位于 DataResources/miscellaneous
文件夹中。然而,来自 DataResources/cefsharp
的 DLLS(这是我的一些其他 dll)已加载。
有人知道问题出在哪里吗? 非常感谢!
事实证明,当涉及到这些文件时,CefSharp 依赖于它们与 CefSharp 文件本身位于完全相同的文件夹中。就我而言,将这些文件移动到 CefSharp 文件夹就可以了。
在其他情况下可能不是这种情况,但如果您使用 CefSharp,则会遇到同样的问题,这就是原因。