2009-06-02 13 views
18

Estoy preparando una aplicación WPF que permitirá a los usuarios ver archivos de PowerPoint a través del control WebBrowser, una vez que los archivos se hayan guardado como .MHT o .HTML. El problema es que los archivos contienen controles ActiveX, y el control WebBrowser de forma predeterminada mostrará una advertencia cada vez que cargue estos archivos, diciendo "Para ayudar a proteger su seguridad, su navegador web ha restringido este archivo para que no muestre contenido activo que pueda acceder a su computadora."Cambiar la configuración de seguridad de "contenido activo" en el control WPF WebBrowser

He visto algunos lugares diferentes en línea hablar sobre poner the mark of the web en cada página, pero eso realmente no me funciona en este caso, ya que los autores del contenido tienen control sobre los archivos, no los desarrolladores, y yo Preferiría no decirles que tienen que abrir cada archivo en el Bloc de notas y agregar la marca de la web a cada uno.

¿Hay alguna manera de simplemente cambiar la configuración del control WebBrowser para que no se muestre ese mensaje de advertencia? IE tiene una configuración similar, pero no se transfiere a este control.

Respuesta

2

¿Por qué no inserta el MOTW dinámicamente al principio del archivo cuando lo carga?

Por cierto, gracias por su pregunta: Yo no sé acerca de la "marca de la web", y resolvió un problema que tuve :)

+0

Parcialmente, ya que añade mucho más trabajo para nuestro fin, sobre todo encontrar el final de la declaración DOCTYPE. Probablemente estoy imaginando que es más trabajo de lo que es, pero ahora mismo estamos configurando browser.Source en esencialmente una ruta de archivo modificada, por lo que cargar y analizar el archivo agrega un poco más de esfuerzo. Además, parece que el control WebBrowser debería tener algún tipo de configuración para esto, en caso de que la configuración de seguridad predeterminada no satisfaga sus necesidades. –

17

Finalmente, encontramos una solución decente a esto, aunque yo todavía desearía que hubiera algún tipo de configuración en el control en sí. Para cargar los documentos, simplemente configuramos browser.Source para que sea el siguiente:

file: //127.0.0.1/c$/path/to/the/file (donde la ruta es una ruta absoluta sin C: \, para ejemplo, c $/Users/jschuster/mydocument.html)

Por alguna razón, el control mostrará los archivos a los que hace referencia una URL en ese formato sin advertencia.

+0

Guau ... Me encanta la llamada seguridad de Internet Explorer, es tan fácil engañar;) –

+0

Ninguna de estas soluciones parece funcionar para mí. Tal vez es Windows 7 :( – SteveCav

+0

Muchas gracias ... – om471987

1

archivo: //127.0.0.1/c$/path/to/the/file (donde la ruta es una ruta absoluta y sin C: \, por ejemplo, C $/Usuarios/jschuster/mydocument.html)

Esto funcionó para mí también en Win7.

13

la esperanza que esto podría ayudar a alguien incluso que la pregunta es un poco viejo ...

De acuerdo con el enlace a "The Mark Of The Web", añadiendo comentario como

<!-- saved from url=(0016)http://localhost --> 

justo debajo de la etiqueta HTML trabajó.

Mi index.html está en la carpeta HTML, se agrega como "contenido" a "Copiar siempre" en el proyecto WPF usando el control WebBrowser. La dirección para el archivo durante la ejecución aspecto:

file:///E:/SRC_2013/WebBrowserTestApp/WebBrowserTestApp/bin/Debug/HTML/index.html 
+0

¡Nunca demasiado viejo para publicar una respuesta sugerida al soporte heredado de IE! :) – Edza

+0

Configurar archivos js y css para "Copiar siempre" dentro de un Visual Studio .sln funcionó para mí ... finalmente. – whyoz

+0

Confirmo que ** funciona en Windows 10 con el control WebBrowser ** cargando la página HTML que aloja el objeto Flash. Sin embargo, la solución con dirección IP y compartición privada no funcionó: la película Flash principal se cargó pero no pudo cargar dinámicamente el contenido de ActionScript. – nrodic

Cuestiones relacionadas