嵌入CEF浏览器的C#桌面应用程序未在客户端运行';s PC,但在开发PC上运行';s

嵌入CEF浏览器的C#桌面应用程序未在客户端运行';s PC,但在开发PC上运行';s,c#,visual-studio-2013,google-chrome-devtools,desktop-application,chromium-embedded,C#,Visual Studio 2013,Google Chrome Devtools,Desktop Application,Chromium Embedded,我在VS2013上开发了一个C#桌面应用程序,其中包含CEF(Chrome Embedded Framework)。该应用程序是在.NetFramework 4.5.2上开发的,目标平台设置为x64(必须是x64,否则CEF无法工作) 该应用程序在开发者PC上运行,但当我在客户端PC上安装它(使用安装程序)并通过单击已安装的.exe运行它时,鼠标指针会加载几秒钟,然后什么也不会发生。它也不会出现在任务管理器中。我已经通过安装另一个C#桌面应用程序进行了测试,该应用程序是在相同的环境和配置下开发的

我在VS2013上开发了一个C#桌面应用程序,其中包含CEF(Chrome Embedded Framework)。该应用程序是在.NetFramework 4.5.2上开发的,目标平台设置为x64(必须是x64,否则CEF无法工作)

该应用程序在开发者PC上运行,但当我在客户端PC上安装它(使用安装程序)并通过单击已安装的.exe运行它时,鼠标指针会加载几秒钟,然后什么也不会发生。它也不会出现在任务管理器中。我已经通过安装另一个C#桌面应用程序进行了测试,该应用程序是在相同的环境和配置下开发的,但没有CEF,它在所有客户端的PC上都工作良好。。基金会有什么问题吗

以下是开发者PC和客户端PC的规格

开发者PC:[应用程序正在运行] 视窗10 OS=x64位 Visual Studio 2013与.NETFramework 4.5.2 Visual C++ 2012可再分发软件包 包含并放置在调试文件夹中的CEF.dll文件

另一台PC 2:[应用程序正在运行] 视窗7 OS=x64位 Visual Studio 2013与.NETFramework 4.5.2 Visual C++ 2012可再分发软件包 包含并放置在调试文件夹中的CEF.dll文件

客户端PC 1[应用程序未运行] Windows 8.1 OS=x64位 Visual C++ 2012可再分发软件包 包含并放置在调试文件夹中的CEF.dll文件

客户端PC 2[应用程序未运行] Windows 8.1 OS=x64位 Visual C++ 2012可再分发软件包 包含并放置在调试文件夹中的CEF.dll文件


任何帮助都将不胜感激。非常感谢。

windows中内置了一个名为sxstrace.exe的工具,可以帮助确定缺少什么

1) 运行类似于:

sxstrace trace -logfile:mylog
2) 尝试启动应用程序

3) 停止跟踪(按cmd窗口中的任意键)

4) 解析日志文件,如下所示:

sxstrace parse -logfile:mylog -outfile:mylog.txt
5) 查看输出文件中的错误

编辑:在您的情况下,很可能丢失了一些CEF文件。根据他们的文件:

除了通常的.NET项目文件外,以下文件, 应存在于bin目录中。他们应该住在一起 与CefSharp.Wpf.Example.exe文件位于同一目录中,除了 位于locales子目录中的en-US.pak:

cef.pak devtools_resources.pak icudt.dat libcef.dll/locales/en-US.pak


我希望您没有发布应用程序的调试版本。这可能解释了对正在安装的MS VS的依赖性。在我的C++体验中,调试构建有时需要一些只能在VisualStudio安装中找到的DLL。
另一个调试想法是:下载一个示例应用程序并将可执行文件(cefclient.exe)放入项目安装中。获取与CEF版本对应的版本非常重要。尝试运行简单的应用程序。如果它能工作,那么所需的二进制依赖项和资产就在那里,问题就在其他地方。

它缺少一些东西。可能有错误的.NET版本,或者找不到CEF DLL。为什么要将它们放在客户机上的调试文件夹中?exe是否在调试文件夹中?它与.NET版本相同,即4.5.2。另外,如果它是一个版本,那么具有相同框架的其他应用程序也不会工作。我已经用两种方法对它进行了测试,1)安装了exe,2)将调试文件夹从我的计算机复制到客户机。。同样的问题枯萎方式您需要所有CEF(sharp?)DLL与exe位于同一文件夹中。是的,它们位于同一文件夹中。由于应用程序在我的另一台PC上运行没有任何问题,因此CEF文件的放置没有问题。根据CEF版本(45+),您可能需要VS 2013 redist,而不是2012。是的。它们与.exe文件位于同一目录中。。如果是这样的话,该应用程序也不会在其他PC上运行。。。我想试试sxstrace工具。。你认为还有什么其他可能的原因会影响到你?客户端PC上未安装VisualStudio2013这一事实?因为所有其他安装了VS的PC机都在运行它,而所有没有安装VS的客户机都没有运行它…所以为什么这被接受,但没有提到问题是什么?