J'écris une application C# en utilisant le contrôle WebBrowser, et je veux que tout le contenu que j'affiche provienne de ressources intégrées - pas de fichiers locaux statiques, et pas de fichiers distants.C# WebBrowser HTML avec des références aux scripts et images
Réglage du texte initial de la commande dans un fichier HTML intégré fonctionne très bien avec ce code inspiré par this post:
browser.DocumentText=loadResourceText("myapp.index.html");
private string loadResourceText(string name)
{
Assembly assembly = Assembly.GetExecutingAssembly();
Stream stream = assembly.GetManifestResourceStream(name);
StreamReader streamReader = new StreamReader(stream);
String myText = streamReader.ReadToEnd();
return myText;
}
Aussi bon que c'est, les fichiers mentionnés dans le HTML - javascript, des images comme <img src="whatever.png"/>
etc, ne fonctionne pas. J'ai trouvé des questions similaires here et here, mais ni demande exactement ce que je veux dire, à savoir se référant à intégré ressources dans l'exe, pas de fichiers.
J'ai essayé res://...
et en utilisant un <base href='..."
mais aucun ne semblait fonctionner (même si je n'ai peut-être pas compris). Peut-être (en suivant ma propre suggestion sur this question), en utilisant un petit serveur web C# est le seul moyen ... mais j'aurais pensé qu'il y avait un truc pour que ça marche?
Merci!