我是新来的,希望对 C# 中的 geckoFX 有所帮助
所以我只是下载了 geckoFX 并执行了以下操作。

  • 下载:geckofx.dll
  • 下载:XULRunner

  • 我成功添加了 geckofx 浏览器并且工作正常,但是当我尝试运行此代码以将 JavaScript 添加到页面时,出现错误。
    我得到的错误是:skybound.geckoFX.AutoJSContext 不包含评估脚本和 jscontext 的定义。
    另外我不知道这是否有帮助,但 AutoJSContext 和 EvaluateScript 没有突出显示。
    这是我的代码
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Windows.Forms;
    using Skybound.Gecko;
    
    
    namespace WindowsFormsApplication1
    {
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            Skybound.Gecko.Xpcom.Initialize(@"C:\Program Files\xulrunner");
        }
    
        private void geckoWebBrowser1_DocumentCompleted(object sender, EventArgs e)
        {
            string outString = "";
            using (AutoJSContext java = new AutoJSContext(geckoWebBrowser1.Window.JSContext))
            {
                java.EvaluateScript(@"window.alert('alert')", out outString);
            }
        }
    }
    

    最佳答案

    您应该像这样调用 EvaluateScript:

    java.EvaluateScript(@"window.alert('alert')", (nsISupports)geckoWebBrowser1.Window.DomWindow, out result);
    

    关于C# geckoFX(AutoJSContext 不工作),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25214799/

    10-12 03:58