C#WPF Web浏览器控件安全性错误

时间:2015-12-28 10:47:22

标签: javascript c# wpf

我目前无法使用具有index.html的本地文件。

我曾尝试将网址链接复制到firefox和google chrome并且有效。但是,当我尝试使用C#Web浏览器控件导航到URL链接时,它给了我一个黑屏&

  

致命:加载错误(安全错误)

我觉得很奇怪。

以下是示例链接:file://127.0.0.1/c$/Users/Marcus/Desktop/03%20Virtual%20Tour/dataranlang/index.html

以下是我在C#Web浏览器控件中调用URL链接的代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Reflection;

namespace Perak360
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();

            this.WB.Loaded += (s, e) =>
            {
                // get the underlying WebBrowser ActiveX object;
                // this code depends on SHDocVw.dll COM interop assembly,
                // generate SHDocVw.dll: "tlbimp.exe ieframe.dll",
                // and add as a reference to the project

                var activeX = this.WB.GetType().InvokeMember("ActiveXInstance",
                    BindingFlags.GetProperty | BindingFlags.Instance | BindingFlags.NonPublic,
                    null, this.WB, new object[] { }) as SHDocVw.WebBrowser;

                // now we can handle previously inaccessible WB events 
                activeX.FileDownload += activeX_FileDownload;
            };

            this.Loaded += (s, e) =>
            {
                try
                {
                    this.WB.Source = new Uri(new System.IO.FileInfo(@"C:\Users\Marcus Tan\Documents\Visual Studio 2013\Projects\Perak360\Perak360\Perakin360 Offline (Final)\index.html").FullName);
                    //this.WB.Navigate(Properties.Settings.Default.WebBrowserPath);

                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }
            };


        }

        void activeX_FileDownload(bool ActiveDocument, ref bool Cancel)
        {
            Cancel = true;
        }

        private void CloseWindow(object sender, TouchEventArgs e)
        {
            Application.Current.Shutdown();
        }

    }
}

我知道如果我将网址链接更改为file://C:/Users/Marcus%20Tan/Desktop/03%20Virtual%20Tour/dataranlang/index.html它可能会有效,但会出现一个javascript提示,要求用户启用我不希望它出现的被屏蔽内容

有任何疑问我的URL链接或代码是什么错误,它给了我一个没有加载错误屏幕的黑屏?我曾尝试在线搜索解决方案,并尝试设置Internet安全设置,但都不起作用。

请指导我完成这个。

0 个答案:

没有答案
相关问题