| Autor |
Beitrag |
Palladin007
      
Beiträge: 1282
Erhaltene Danke: 182
Windows 11 x64 Pro
C# (Visual Studio Preview)
|
Verfasst: So 19.05.13 23:16
Moin,
ich möchte ein Youtube-Video in eine Anwendung mit einbauen. Nach ein bisschen Suche bei Google habe ich den Tipp gefunden, einen HTML-String mit dem Webbrowser anzuzeigen, der dann eben das Video darstellen soll.
Das hab ich jetzt mit diesem Code versucht:
C#-Quelltext 1:
| "<embed src=" + videoURL + "\" type=\"application/x-shockwave-flash\" allowfullscreen=\"true\" width=\"" + browser.Width + "\" height=\"" + browser.Height + "\"></embed>" |
in HTML:
HTML-Dokument 1:
| <embed src="VIDEO-URL" type="application/x-shockwave-flash" wmode="transparent" allowfullscreen="true" width=" width="BROWSRER-BREITE" height="BRWOSER-HÖHE"> </embed> |
Bisher wurde nie das angezeigt, was ich wollte. Immer hab ich gedacht, ich hab irgendetwas falsch gemacht, bis ich auf die Idee kam, das ganze mal in eine html-Datei zu speichern (natürlich mit gültigen Angaben) und dann im Firefox anzuzeigen.
Es funktionierte und sah ganz genau so aus, wie ich mir das vorstelle.
Da das WebBrowser-Control von .NET ja auf dem Internet-Explorer basiert, habe ich die Datei auch mal im Internet-Explorer anzeigen lassen.
Das gleiche Ergebnis, wie in meinem Projekt.
Also ist der Internet-Explorer (und damit das WebBrowser-Control, das darauf aufbaut), nicht in der Lage, Youtube-Videos korrekt anzuzeigen.
Nun hab ich nach einer anderen Möglichkeit gesucht, am naheliegendsten ist der Versuch, einen anderen Browser zu verwenden, also hab ich danach gesucht und auch viel gefunden. Allerdings wollte mir niemand den Quellcode geben, oder ich habe es übersehen.
Für mein Projekt ist leider sehr wichtig, dass es ohne zusätzliche dll-Dateien auskommt, die mit installiert werden müssen. Es muss alles komplett in der exe vorhanden sein, keine extra Dateien. Da komme ich auch nicht drum herum, also brauche ich eine weitere Möglichkeit.
Fündig geworden bin ich dann hier.
Im letzten Post werden zwei Klassen gezeigt, mit denen das scheinbar möglich sein soll, aber mir ist weder klar, wie, noch kapiere ich, was da eigentlich gemacht wurde.
Windows-Forms ist das jedenfalls nicht und WPF auch nicht, also bleibt ja nur ASP.NET, oder irre ich mich da?
Aber wie bekomme ich das nun zum Laufen und kann es auch in C# übernehmen, dass ich mein eigenes Control bauen und verwenden kann?
Das einzige, was mir noch einfallen würde, wäre der Media-Player, so, wie hier gezeigt, allerdings ist um dem Video dann immerzu dieser nervige Media-Player zu sehen.
Komplett downloaden möchte ich das Video nicht, zumindest nicht als Datei.
Oder hat vielleicht jemand eine andere Idee, wie ich ein Youtube-Video anzeigen kann?
Ich möchte das Video so einbinden, wie in HTML, dass ich auch die Buttons von Youtube sehen und verwenden kann.
Wichtig ist dabei einfach nur, dass ich auch jeglichen Quellcode brauche, da ich keine dll verwenden möchte.
Ich freue mich über viele gute Ratschläge ^^
Grüße
PS:
Wen es interessiert:
Ich möchte einen Minecraft-Launcher in C# (und wenn ich es schaffe, danach auch in Java) bauen, der die Möglichkeit bietet, RAM einzustellen, zwischen Minecraft, Tekkit, oder einem eigens zusammen gestellten Mod-Packet zu wechseln und sowohl News, als auch Videos (!) von der Webseite des Servers, für den das wird, anzuzeigen.
Daher keine dll, denn der Launcher soll eigenständig und alleine funktionieren können, es soll nicht immer eine dll dabei liegen und eine Installation möchte ich auch vermeiden.
Und Downloaden möchte ich das Video deshalb nicht als Datei, weil die Videos von einem Youtube-Account kommen, der regelmäßig neue Videos bringt und sollen dann auch in den News zu finden sein.
|
|
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mo 20.05.13 00:11
- Nachträglich durch die Entwickler-Ecke gelöscht -
|
|
Palladin007 
      
Beiträge: 1282
Erhaltene Danke: 182
Windows 11 x64 Pro
C# (Visual Studio Preview)
|
Verfasst: Mo 20.05.13 11:46
Ok, mit iframe bekomme ich jetzt auch den Player in den InternerExplorer, ABER der hat keinen FlashPlayer und ist so zurück geblieben, dass er kein HTML5 kann -.-
Aber wegen dem Projekt möchte ich keine Installation voraus setzen, also kann ich keinen FlashPlayer installieren lassen, wenn er nicht vorhanden ist. Oder kenn ich den irgendwie im Projekt mit geben lassen?
Das wäre doch eigentlich eine Idee, wenn ein Browser Flash lernen kann, warum nicht auch ein selber geschriebenes Programm mit C#?
Hab da mal etwas geschaut und dieses Video gefunden.
Das sieht ganz praktisch aus, allerdings ist Shockwave scheinbar nicht standardmäßig installiert. Wenn die MediaPlayer-Variante mir nicht gefällt und niemand eine andere Idee hat, werd ich das wohl machen müssen.
Edit:
Ok, ich hab es mal ausprobiert und das Ergebnis war:
1. dass beim Erstellen der Form schon Probleme auftraten, also ein CPU-Kern zu 80% ausgelastet war und die Form nicht mehr reagiert hat.
2. beim Starten der Anwendung mit dem Player zwei Kerne zu 50% ausgelastet waren.
Ich hab einen Quad-Core Prozessor von AMD mit 4,2 Ghz. Den juckt das nicht wirklich, aber nicht jeder hat einen von Haus aus übertakteten Prozessor bei sich am werkeln. Soll heißen, der Player fällt raus, da schwächere Computer sich damit garantiert aufhängen, besonders, da es ja nicht nur bei einem Video bleiben soll :/ Wenn ich da 10 Videos oder mehr haben will, dann macht sicher auch mein PC schlapp -.-
Edit2:
Gibt es keine Möglichkeit, der Form HTML5 bei zu bringen?
Es gibt ja ASP.NET, allerdings kenne ich mich da überhaupt nicht aus, aber mich würde es wundern, wenn das kein HTML5 versteht, oder?
Weiß jemand, wie ich mir damit ein Control bauen kann, mit dem ich dann in einer Forms-Anwendung HTML5-Videos abspielen kann?
|
|
jaenicke
      
Beiträge: 19338
Erhaltene Danke: 1752
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mo 20.05.13 12:40
Hier findest du eine Anbindung an Chromium für C#:
github.com/chillitom/CefSharp
Das dürfte die beste Lösung sein. 
|
|
Palladin007 
      
Beiträge: 1282
Erhaltene Danke: 182
Windows 11 x64 Pro
C# (Visual Studio Preview)
|
Verfasst: Mo 20.05.13 13:08
Das hab ich auch schon gesehen, aber ich blick da nicht durch
Hast du ein Beispiel, wie ich das verwende?
Ich wollte erst den Quellcode bei mir einfügen, wenn er ja schon dabei ist, aber kann es sein, dass das gar kein C# ist, sondern C++?
Und:
Benötigt das nicht den Chrome-Browser installiert?
|
|
jaenicke
      
Beiträge: 19338
Erhaltene Danke: 1752
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mo 20.05.13 14:15
Palladin007 hat folgendes geschrieben : | | Ich wollte erst den Quellcode bei mir einfügen, wenn er ja schon dabei ist, aber kann es sein, dass das gar kein C# ist, sondern C++? |
Das ist in C++ .NET geschrieben, ja, aber du kannst das von C# genauso verwenden wie von VB.NET. Ich vermute es reicht die Assembly einzubinden.
Aber da ist doch ein Beispiel für z.B. WinForms dabei...
Palladin007 hat folgendes geschrieben : | Und:
Benötigt das nicht den Chrome-Browser installiert? |
Nein, aber die Dateien, die dazu gehören, musst du natürlich mitliefern:
www.magpcss.net/cef_downloads/
|
|
Palladin007 
      
Beiträge: 1282
Erhaltene Danke: 182
Windows 11 x64 Pro
C# (Visual Studio Preview)
|
Verfasst: Mo 20.05.13 14:58
Also ist es nicht möglich, das Ganze ohne extra Dateien zu schaffen?
Ich muss es also als c++-Assembly compilieren und dann bei C# einbauen :/
Nagut, wenn das nur so geht, muss ich wohl damit klar kommen.
Ich werd das dann gleich mal ausprobieren und mich dann nochmal melden.
Bis dahin danke für die Hilfe.
|
|
Palladin007 
      
Beiträge: 1282
Erhaltene Danke: 182
Windows 11 x64 Pro
C# (Visual Studio Preview)
|
Verfasst: Mo 20.05.13 15:22
Ok, CefSharp hab ich herunter geladen und das Projekt mal geöffnet.
Resultat:
Zuerst gab es ein Haufen Meldungen wegen zu neuem .NET-Framework, also hab ich die Versionen der C#-Projekte auf 4.0 gesetzt.
Danach schien es, als könnte es funktionieren, tat es aber nicht, weil ich nach einem Versuch, ein Beispiel-Projekt für C# zu compilieren, ich von insgesamt 55 Fehlermeldungen überhäuft werde.
Irgendwelche Fehler, mit denen ich absolut nichts anfangen kann und recht häufig auch irgendwo irgendwelche Klassen fehlen.
Kann es sein, dass beim Öffnen des Projektes und konvertieren in .NET-Framework 4.0 irgendwelche Verweise verloren gegangen sind? Vielleicht die, die noch gar nicht dabei sind, weil ich die Chrom-Dateien noch nicht dabei habe?
PS:
Ich hab die UpgradeLog-Datei mal in den Anhang gepackt, da wurden nämlich einige Fehler angezeigt.
Einloggen, um Attachments anzusehen!
|
|
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mo 20.05.13 16:38
- Nachträglich durch die Entwickler-Ecke gelöscht -
|
|
Palladin007 
      
Beiträge: 1282
Erhaltene Danke: 182
Windows 11 x64 Pro
C# (Visual Studio Preview)
|
Verfasst: Mo 20.05.13 16:57
Naja, der PC ist eigentlich relativ neu, ich wüsste jetzt nicht, was das Problem sein sollte ...
Kannst du mir vielleicht mal dein Test-Projekt schicken?
Entweder ich hab da einen Fehler gemacht, oder es ist nur temporär bei mir ein Problem. Dann könnte ich das einfach weiter bauen und darauf hoffen, dass auf dem Nutzer-PC das Problem aus bleibt.
|
|
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mo 20.05.13 17:16
- Nachträglich durch die Entwickler-Ecke gelöscht -
|
|
Palladin007 
      
Beiträge: 1282
Erhaltene Danke: 182
Windows 11 x64 Pro
C# (Visual Studio Preview)
|
Verfasst: Mo 20.05.13 17:25
Ich hab nicht einmal eine URL angegeben xD
Aber, was mich auch schon gewundert hat, ich hab scheinbar eine andere Version, denn die Eigenschaft URL gibt es nicht, dafür aber ein Haufen Eigenschaften von sw1 bis sw9 und dann noch einige Eigenschaften, die scheinbar wichtig für das Control sind, alle mit sw beginnend.
|
|
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mo 20.05.13 17:35
- Nachträglich durch die Entwickler-Ecke gelöscht -
|
|
Palladin007 
      
Beiträge: 1282
Erhaltene Danke: 182
Windows 11 x64 Pro
C# (Visual Studio Preview)
|
Verfasst: Mo 20.05.13 17:49
Ach weißt du was? Wir reden von verschiedenen Steuerelementen
Ich meine den Shockwave-Player und du wahrscheinlich den Media-Player 
|
|
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mo 20.05.13 17:57
- Nachträglich durch die Entwickler-Ecke gelöscht -
|
|
Palladin007 
      
Beiträge: 1282
Erhaltene Danke: 182
Windows 11 x64 Pro
C# (Visual Studio Preview)
|
Verfasst: Fr 24.05.13 18:49
0%?
Seltsam, warum mein PC da so krächzen muss, der ist eigentlich relativ neu und kommt mit sowas wie Battlefield 3 oder vier mal Minecraft ganz gut klar.
Ich bau mal ene kleine Test-Anwendung und schick das mal einem Freund. Wenn das bei ihm ganz gut funktioniert, weiß ich, dass es an meinem PC liegt.
|
|
jaenicke
      
Beiträge: 19338
Erhaltene Danke: 1752
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Fr 24.05.13 19:38
Frühlingsrolle hat folgendes geschrieben : | 3/3: Bekomme ich ebenso keines der CefSharp Beispiele compiliert. Vielleicht wäre jaenicke so nett und könnte uns zeigen, wie es richtig geht  |
1. CEF 3 Binary Paket für Visual Studio heruntergeladen:
www.magpcss.net/cef_...1453.1255_windows.7z
2. cefclient2010.sln doppelklicken, ich habe dann Visual Studio 2012 für Windows Desktop ausgewählt, aktualisiert, auf ausführen, fertig
(mit den anderen Versionen geht es mit der passenden .sln Datei direkt)
|
|
Palladin007 
      
Beiträge: 1282
Erhaltene Danke: 182
Windows 11 x64 Pro
C# (Visual Studio Preview)
|
Verfasst: Fr 24.05.13 21:02
Hab ich getan und cefclient2010.sln ausgewählt.
Bei dem Versuch, es zu compilieren, bekomme ich aber eine Meldung, Screen im Anhang.
Drücke ich Ja, wird mir angezeigt, dass es ein Fehler beim Erstellen gab mit der Frage, ob ich die zuletzt funktionierende Version starten möchte.
Drücke ich Nein, gibt es den Fehler, dass er die cefclient.exe nicht ausführen kann, weil das System sie nicht finden kann.
Einloggen, um Attachments anzusehen!
|
|
jaenicke
      
Beiträge: 19338
Erhaltene Danke: 1752
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Fr 24.05.13 22:21
Palladin007 hat folgendes geschrieben : | | Drücke ich Ja, wird mir angezeigt, dass es ein Fehler beim Erstellen gab mit der Frage, ob ich die zuletzt funktionierende Version starten möchte. |
1. Auch mit der 2012er Visual Studio für Desktop?
2. Und welcher Fehler kommt? Davon wäre wenn der Screenshot interessant, denn nein drücken kann ja nichts bringen.
|
|
Palladin007 
      
Beiträge: 1282
Erhaltene Danke: 182
Windows 11 x64 Pro
C# (Visual Studio Preview)
|
Verfasst: Fr 24.05.13 23:19
Nein, nicht 2012, ich hab Visual Studio 2010, aber da sollte das doch eigentlich passen, oder?
Und welche Fehlermeldung meinst du?
Den Compiler-Fehler?
Keine Ahnung, das ist nur die typische Meldung, die kommt, wenn du einen Syntax-Fehler hast und versuchst zu compilieren. Hab geschaut, ob es da ein Fehler dann angezeigt wird, wird es aber nicht.
|
|
|