2017-05-29 77 views
0

是否有可能刪除對CEFSharp的依賴和/或只是將其代碼放入主應用程序並從那裏運行?C# - CEFSharp刪除BrowserSubProcess.exe依賴

這是爲什麼需要? 我需要混淆我的應用程序和正在使用的混淆方法不能使用2 .exe的 - 它需要選擇所有的依賴關係,並且由於SubProcess.exe是一個依賴項,我無法混淆。

+0

https://github.com/cefsharp/CefSharp/blob/cefsharp/57/CefSharp.WinForms.Example/Program.cs#L27 – amaitland

+0

我還會指出瀏覽器子進程是運行時依賴,而不是編譯一次,只要瀏覽器在運行時可以訪問它,編譯或混淆時不需要存在。 – amaitland

回答

0

不符合CEFSharp的設計。 CEF爲不同的任務使用多個進程。

https://github.com/cefsharp/CefSharp/wiki/Frequently-asked-questions#Files_required

Filename  Always required  Description Release 
CefSharp.BrowserSubprocess.exe Yes Browser subprocess executable all 
CefSharp.BrowserSubprocess.Core.dll Yes Browser subprocess stuff all 
... 

以上的CEFSharp維基鏈接也有鏈接到最新的自述(這應該是在你下載的CEFSharp包)和依賴檢查。

如果您使用的是基本的CEF3和非託管C++,您仍然需要分發所有的鉻和CEF3 DLL,但是您可以使用您的單一EXE進行主進程和子進程。

+0

因此,沒有辦法說每次都將.exe插入到main.exe中而不是Fody – user7842865

+0

問題是您的應用程序需要運行,然後它需要產生2個或更多行爲不同的幫助程序進程。主要過程是處理UI和cookie存儲的「瀏覽器」過程。一個輔助進程處理HTML解析和JavaScript引擎。我不熟悉快速Google以外的Fody,所以我不能說它是否會讓您將子流程EXE添加到您的主流程中。 –