2014-10-31 126 views
0

我正在写使用的Visual Web开膛手的API一个C#控制台应用程序。我写的时候我给指定的文件路径中的代码它自认为的工作程序和代码是这有什么错我的C#代码

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using VisualWebRipper; 
using VisualWebRipper.Processor; 

namespace VisualWebRipperAPI 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      WrProject project= WrProject.Load("C:\\Users\\User\\Desktop\\news.rip"); 

      project.DataConfiguration.DataSource.OutputFolder [email protected] "C:\\Users\\User\\Desktop\\output"; 
      project.DataConfiguration.DataSource.IsDefaultOutputFolder = false; 
       IAgent agent = WrAgent.RunProject(new WrProcessPars(project, false, false, false, project.DefaultCollector, project.LogLevel), true); 

      string status = agent.Status;  
      int processedPages = agent.ProcessedPages;  
      int pageLoadErrors = agent.TimeoutPages;  
      int missedRequiredElements = agent.MissedRequiredElements; 
      bool isError = agent.IsError; 
      Console.WriteLine(status +" "+ processedPages +" "+ pageLoadErrors +" "+ missedRequiredElements +" "+ isError); 
      Console.ReadLine(); 
     } 
    } 
} 

但现在我想改变我的代码更何况对象中的输入和输出文件路径。我加了两个类code.cs和Program.cs中

在code.cs我写

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using VisualWebRipper; 
using VisualWebRipper.Processor; 

namespace webripperplugin 
{ 
    public class code 
    { 

     public void method(string source,string output) 
     { 
      WrProject project = WrProject.Load(source); 
      project.DataConfiguration.DataSource.OutputFolder = output; 
      project.DataConfiguration.DataSource.IsDefaultOutputFolder = false; 
      IAgent agent = WrAgent.RunProject(new WrProcessPars(project, false, false, false, project.DefaultCollector, project.LogLevel), true); 

      string status = agent.Status; 
      int processedPages = agent.ProcessedPages; 
      int pageLoadErrors = agent.TimeoutPages; 
      int missedRequiredElements = agent.MissedRequiredElements; 
      bool isError = agent.IsError; 
      Console.WriteLine(status + "\n" + processedPages + "\n" + pageLoadErrors + "\n" + missedRequiredElements + "\n" + isError); 
      Console.ReadLine(); 
     } 

    } 
} 

而在Program.cs中我没有工作,因为它写

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using VisualWebRipper; 
using VisualWebRipper.Processor; 
using webripperplugin; 

namespace webripperplugin 
{ 
    class Program 
    { 
     static void Main() 
     { 
      code trail = new code(); 
      trail.method("C:\\Users\\User\\Desktop\\news.rip", @"C:\Users\User\Desktop\output"); 

     } 
    } 
} 

但我的计划应该是。它显示两个警告

  1. 被建立的项目的处理器体系结构之间有一个不匹配的“MSIL”和d参考“WebRipper”,“x86”的处理器体系结构。这种不匹配可能会导致运行时失败。请考虑通过Configuration Manager更改项目的目标处理器体系结构,以便在项目和引用之间调整处理器体系结构,或者使用与项目的目标处理器体系结构相匹配的处理器体系结构来依赖引用。
  2. 有正在建造“MSIL”项目的处理器架构和参考“WebRipperBrowser”,“86”的处理器体系结构之间的失配。这种不匹配可能会导致运行时失败。请考虑通过配置管理器更改项目的目标处理器架构,以便使其处理器架构项目和引用之间,或采取引用的依赖与你的项目的目标处理器架构匹配的处理器架构

当我跑了它早些时候我曾经得到所需的输出,现在我越来越没有输出

回答

1

好所以WebRipper二进制目标x86和你可能有Any CPU打勾或x64确保有用于x86活跃,一个配置错误应该消失。你可以做的是,在项目文件中,如果你点击文件properties并更改编译选项卡中的架构(平台)

尝试以下方法:

  1. 转到构建>配置管理器菜单项。
  2. 在列表中找到你的项目,平台应该说Any CPU
  3. 选择Any CPU然后选择New
  4. 现在选择x86。
  5. 确保Any CPU被选中。
  6. 点击OK

这需要两者的调试工作要做,并释放设置。

+0

但同样的文件早 – Hari 2014-10-31 08:20:07

+0

工作你有没有真正尝试我说什么? – 2014-10-31 08:20:30

+0

是的,我尝试过但仍然显示数据执行部分完成,而不是完全完成,我什么也没有在输出目录 – Hari 2014-10-31 09:29:20