|
Rank: Member Groups: Member
Joined: 9/11/2014 Posts: 17
|
Hi eo_support I'm using eo webbrowser for windows form for my project which has multiple tabs. It concludes about 10 tabs. Each tab has a webcontrol to show website's content. However, when I check Windows Task Manage, I see many rundll32.exe running. which occupies my memory. Please explain this situation for me. Thank you!
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,196
|
Hi,
This is normal. EO.WebBrowser is based on Chrome's source code and has the same multi-process architecture as Google Chrome. If you use Google Chrome to open many tabs you will see a lot of Chrome.exe process through Task Manager. We use rundll32.exe instead of Chrome.exe.
Thanks!
|
|
Rank: Member Groups: Member
Joined: 9/11/2014 Posts: 17
|
With chrome, I can open alot of tab, but with Eo browser, I can not, because the memory is full very quickly. Is there any way for me to solve this problem? Thanks for support!
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,196
|
Hi,
The high memory usage has to do with the fact that we have everything packed in a single DLL EO.WebBrowser.dll. We do have a multi-DLL build that will reduce the memory consumption. We will post it on our download page very soon so that you can give it a try. We will reply here again as soon as the new build is posted.
Thanks!
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,196
|
Hi, This is just to let you know that we have posted the new multi-DLL build. Please see here for instructions on how to use this build: http://www.essentialobjects.com/doc/6/install/multi_dll_build.aspxThanks!
|
|
Rank: Member Groups: Member
Joined: 9/11/2014 Posts: 17
|
Thank you for your enthusiasm!
|
|
Rank: Member Groups: Member
Joined: 9/11/2014 Posts: 17
|
Hi eo_support! You should put this on NuGet package, so people can easily integrate it into their project, will be very handy! Thanks!
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,196
|
Minh Giang wrote:Hi eo_support! You should put this on NuGet package, so people can easily integrate it into their project, will be very handy! Thanks! We will think about that. Thank you very much for your feedback!
|
|
Rank: Member Groups: Member
Joined: 8/10/2014 Posts: 15
|
Hi, how to use multiple dll build in web application? I can not add all references to project. I receive
Code: C#
Please make sure that the file is accessible and that it is a valid assembly or com component.
Thanks, Matjaž
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,196
|
|
|
Rank: Member Groups: Member
Joined: 8/10/2014 Posts: 15
|
Hi,
i did as instructed, but the asp.net MVC project does not work. I get following error "The DLL must be in the same directory as EO.WebBroser.dll". All required dll are in the same bin directory, but it is not working.
Thanks, Matjaž
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,196
|
Hi Matjaz,
You probably don't want to use multi-DLL build with an ASP.NET MVC project. In theory it will work --- but ASP.NET copies all DLLs into a temp directory from you bin directory. So you will need to find out that temp directory and copy all the files into that temp directory (ASP.NET won't copy those automatically for you because they are not .NET dll and your application does not reference them directly). This is why our default distribution uses single DLL distribution. It saves you from this kind of trouble and is much easier to use.
Thanks!
|
|
Rank: Member Groups: Member
Joined: 8/10/2014 Posts: 15
|
Hi,
for all who wont to use mutiple dll in web project. It works great and memory consumption is half a consumption of single dll.
1. In web.config add <hostingEnvironment shadowCopyBinAssemblies="false" /> in <system.web> to prevent copying dll to temp folder 2. Copy all WebBrowser dlls in root of project 3. Reference EO.WebBrowser.dll to the project 4. After rebuild, copy all WebBrowser dlls to bin folder
That's all
Matjaž
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,196
|
Matjaz wrote:1. In web.config add <hostingEnvironment shadowCopyBinAssemblies="false" /> in <system.web> to prevent copying dll to temp folder
Great! Yes that will resolve the issue. Thank you very much for sharing!
|
|
Rank: Advanced Member Groups: Member
Joined: 7/14/2014 Posts: 40
|
eo_support wrote:Minh Giang wrote:Hi eo_support! You should put this on NuGet package, so people can easily integrate it into their project, will be very handy! Thanks! We will think about that. Thank you very much for your feedback! +1 for NuGet packages.
|
|
Rank: Member Groups: Member
Joined: 9/25/2014 Posts: 19
|
Hi eo_support,
It's normal 1 instace the EO.WebBrowser with 1 tab, open 4 process "rundll32.exe" ?
Thanks.
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,196
|
Cristiano Conte wrote: It's normal 1 instace the EO.WebBrowser with 1 tab, open 4 process "rundll32.exe" ?
Yes. It can be normal. Usually there are at least three processes: at least one for rendering (running HTML parsing, layout, rendering and JavaScript, there can be multiple rendering process), one for GPU, and one for everything else (network, cookies, and coordinates other processes). If your page uses plug-in, then another process will be created for the plug-ins. All these are designed to isolate different component into different process so that if one run into problem, all other portion will still be functional. For example, if a buggy plug-in is loaded and crashes, then only the plug-in process crashes and HTML parsing and layout will still be functional. So in this case all other part of the web page will still be functional, and only the plug-in is not functional.
|
|
Rank: Member Groups: Member
Joined: 9/25/2014 Posts: 19
|
eo_support wrote:Cristiano Conte wrote: It's normal 1 instace the EO.WebBrowser with 1 tab, open 4 process "rundll32.exe" ?
Yes. It can be normal. Usually there are at least three processes: at least one for rendering (running HTML parsing, layout, rendering and JavaScript, there can be multiple rendering process), one for GPU, and one for everything else (network, cookies, and coordinates other processes). If your page uses plug-in, then another process will be created for the plug-ins. All these are designed to isolate different component into different process so that if one run into problem, all other portion will still be functional. For example, if a buggy plug-in is loaded and crashes, then only the plug-in process crashes and HTML parsing and layout will still be functional. So in this case all other part of the web page will still be functional, and only the plug-in is not functional. Perfect, thank you very much!
|
|
Rank: Advanced Member Groups: Member
Joined: 2/15/2014 Posts: 52
|
hi eo,
i tried this multi-process following the instructions. Our VS solution when built outputs all binaries (DLL/EXE) to R:\bin folder so all the DLLs are copied to R:\bin folder. but when i ran the app, it complains EO.WebBrowser.Native.dll is missing.
Note, my app is not ASP.net app.
regards philip
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,196
|
Hi Philip,
What is the exact error message you got? Please also check if you use shadow copy for your application. In the latest build, if your application uses shadow copy (such as an ASP.NET app), we will search the shadow copy source directory for the DLLs (the bin directory for an ASP.NET app), not the actually DLL loading location (the temp folder that contains the shadow copies of the original DLLs for ASP.NET app).
Thanks!
|
|