質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Q&A

解決済

2回答

4096閲覧

C#でGeckoライブラリを使用しようとした際の例外

__MOX__

総合スコア18

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

0グッド

0クリップ

投稿2015/02/23 14:02

現在C#でGeckoライブラリを使用したブラウザをつくろうとしています。
その際に、
https://bitbucket.org/geckofx/geckofx-29.0/downloads/GeckoFx-Windows-29.0-0.6.zip
からGeckoFxを入手し、Cドライブ直下おきVSの参照にGeckofx-Core.dllとGeckofx-Winforms.dllを追加し、C#のツールボックスにGeckofx-Winforms.dllを追加して実行したところ以下の例外が表示され途中で終了してしまいます。
解決方法を教えて下さい。

例外メッセージ

型 'System.BadImageFormatException' のハンドルされていない例外が Microsoft.VisualStudio.HostingProcess.Utilities.dll で発生しました。追加情報:ファイルまたはアセンブリ 'Geckofx-Core, Version=29.0.15.0, Culture=neutral, PublicKeyToken=3209ac31600d1857'、またはその依存関係の 1 つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。

環境

  • Windows8.1
  • VisualStudio2013 Professional Update4

ソース
program.cs

lang

1using System; 2using System.Collections.Generic; 3using System.Linq; 4using System.Windows.Forms; 5using Gecko; 6 7namespace MyBrowser 8{ 9 static class Program 10 { 11 /// <summary> 12 /// アプリケーションのメイン エントリ ポイントです。 13 /// </summary> 14 [STAThread] 15 static void Main() 16 { 17 Xpcom.Initialize(@"xulrunner"); 18 19 Application.EnableVisualStyles(); 20 Application.SetCompatibleTextRenderingDefault(false); 21 Application.Run(new Form1()); 22 } 23 } 24} 25

Form1.cs

lang

1using System; 2using System.Collections.Generic; 3using System.ComponentModel; 4using System.Data; 5using System.Drawing; 6using System.Linq; 7using System.Text; 8using System.Windows.Forms; 9using Gecko; 10 11namespace MyBrowser 12{ 13 public partial class Form1 : Form 14 { 15 public Form1() 16 { 17 InitializeComponent(); 18 geckoWebBrowser1.Navigate("http://www.yahoo.co.jp/"); 19 } 20 21 private void Form1_Load(object sender, EventArgs e) 22 { 23 24 } 25 } 26} 27

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

DLLとC#のビルド時の指定したプラットフォームにおいてx86/x64が一致していないと思われます。
BadImageFormatException(x64とx86の混在はダメー!)

投稿2015/02/23 14:21

sho_cs

総合スコア3541

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

__MOX__

2015/02/23 14:39

混在していてはダメなんですね! dllがx86だったのでx86にしたら動きました。 ありがとうございます!
guest

0

バージョン33が出ているようですが、29にする必要があったのでしょうか?
https://bitbucket.org/geckofx/geckofx-33.0

投稿2015/02/23 14:16

shinosan

総合スコア209

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

__MOX__

2015/02/23 14:32

参考にしていたサイトが29だったので29を使ってました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問