to dowolne sterowanie przeglądarką o niewielkiej wadze dostępne dla aplikacji C# innej niż wbudowana kontrola przeglądarki internetowej, kiedy używam kontrolki IE lub Webkit do osadzania, zużywa 80 MB pamięci, aby renderować stronę flash (Rozdzielczość 800 * 600). Jak mogę zmniejszyć ilość pamięci
Edit1:
WebKit NET dostępnych webkitdotnet.sourceforge.net który jest podobny do kontroli przeglądarki internetowej jestem przetestowany tolekka kontrola przeglądarki dla aplikacji C#
Odpowiedz
Jeśli jesteś po prostu stara się osadzić Flash, Ten poradnik opisuje jak to zrobić:
Embedding a flash player control in a.NET winforms application
Kluczem tutaj jest dodanie "Shockwave Flash Object" obiekt COM do Twój projekt. Następnie będziesz mieć kontrolę obiektu Flash Shockwave w przyborniku, którą możesz przeciągnąć na formularz. Ustaw właściwość Movie na obiekt .swf.
Następnie można pominąć całą przeglądarkę.
Jest Mozilla embedding dostępny.
Możesz spróbować osadzić WebKit w aplikacji .net.
nie sądzę, to zdanie jest nigdzie bliżej odpowiedzieć ponieważ WebKit przede wszystkim jest dostępny w postaci kodu źródłowego, a nie ma dostępnej dokumentacji. –
już webkit dla .net dostępny http://webkitdotnet.sourceforge.net/ który jest podobny do kontroli przeglądarki internetowej –
Akash, aplikacja .net, którą opracowałem dla mojego klienta używa webkita jako silnika HTML; działa bardzo dobrze – Pierreten
Czy strona internetowa po otwarciu jej w IE zużywa mniej pamięci? Wątpię, czy możesz poprawić zużycie pamięci. Prawdopodobnie jest to, ile potrzebuje strona internetowa.
Jeśli po prostu szukasz alternatywy dla formantu WebBrowser, możesz wypróbować już wspomniane techniki, ale wątpię, że uzyskasz lepsze wyniki.
Flash jak w Adobe Flash? W takim przypadku najprawdopodobniej zawartość Flash zajmuje większą część pamięci, co oznacza, że przełączanie silników renderujących niewiele da, aby zwiększyć wykorzystanie pamięci. Utknąłeś z tym, co masz.
Szczerze mówiąc, 80 MB to niewiele. Dlaczego martwisz się o użycie pamięci? Czy jest to potwierdzone wąskie gardło w Twojej aplikacji?
Możesz spróbować Awesomium (tak, nazwa jest lekko/facepalm warty;)). Jest oparty na Chrome (który używa Webkit) i jest darmowy do użytku niekomercyjnego (dostępne są również licencje komercyjne) i istnieje projekt CodePlex o nazwie AwesomiumDotNet, który zapewnia dla niego opakowanie .NET.
Nie wykorzystałem go jeszcze sam, ale natknąłem się na to, wykonując badania nad osadzeniem przeglądarki opartej na Webkit w aplikacji .NET/WPF.
- 1. Lekka alternatywa dla Manual/AutoResetEvent w C#
- 2. Lekka biblioteka triangiacyjna Delaunaya (dla C++)
- 3. lekka wyszukiwarka dla asp.net
- 4. Kontrola przeglądarki WPF vs WinForm
- 5. Dobra lekka biblioteka dla HTTP POST/GET dla C?
- 6. Kontrola przeglądarki: jak przechwytywać zdarzenia dokumentów?
- 7. Wbudowana kontrola HTML dla Blackberry?
- 8. Kontrola pola wyboru dla aplikacji iOS
- 9. Czy istnieje lekka biblioteka systemów plików C++?
- 10. C makro: kontrola #if dla równości
- 11. Osadzanie przeglądarki plików PDF dla aplikacji PhoneGap
- 12. Lekka realizacja obietnic
- 13. Lekka wersja readline GNU
- 14. Niestandardowa kontrola w projekcie aplikacji sieci .net
- 15. Kontrola chmury tagów dla WPF
- 16. Jaka jest najlepsza kontrola przeglądarki internetowej do użycia w aplikacji Windows Form?
- 17. Instalator dla aplikacji C#
- 18. Lekka biblioteka gniazd Java
- 19. Lekka biblioteka OpenID Connect
- 20. Lekka RESTful Java Framework
- 21. Kontrola wersji dla zadań domowych
- 22. C# Kontrola i biblioteka PDF
- 23. Silna kontrola dostępu dla Gollum?
- 24. Kontrola Eksploratora Windows dla WPF?
- 25. Kontrola wersji dla skryptów powłoki
- 26. Kontrola wersji dla PHP Development
- 27. Kontrola wersji NetBeans dla newb?
- 28. Kontrola wersji dla Smalltalk/Seaside?
- 29. Użycie "dla (;;)" w aplikacji C#?
- 30. Lekka alternatywa dla jQuery do wyboru klasy/identyfikatora
Wątpię, czy Gecko ma mniejsze zużycie zasobów niż WebKit. –
@musicfreak. Gecko może nie być najszybszym silnikiem, ale zużywa o wiele mniej pamięci niż WebKit. http://dotnetperls.com/chrome-memory – AngryHacker
Interesujące ... Wszystkie pozostałe benchmarki, które widziałem, wskazują na przeciwny kierunek. Aby być uczciwym, ten, który cytujesz, testuje przeglądarki jako całość, a nie silniki renderujące. Ale szczerze mówiąc, nie sądzę, że różnica będzie taka, że duże widzenie jako OP mówi, że treść jest wykonywana we Flashu. –