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

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

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

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

.NET Framework

.NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

.NET Framework 4.0

Microsoft Windows用のソフトウェア開発環境/実行環境である .NET Frameworkの4番目のメジャーバージョンです。

WPF

Windows Presentation Foundation (WPF) は、魅力的な外観のユーザー エクスペリエンスを持つ Windows クライアント アプリケーションを作成するための次世代プレゼンテーション システムです

Q&A

1回答

854閲覧

WindowsFormで使用してたライブラリはWPFでも使用可能か?

abenosan00

総合スコア33

C#

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

.NET Framework

.NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

.NET Framework 4.0

Microsoft Windows用のソフトウェア開発環境/実行環境である .NET Frameworkの4番目のメジャーバージョンです。

WPF

Windows Presentation Foundation (WPF) は、魅力的な外観のユーザー エクスペリエンスを持つ Windows クライアント アプリケーションを作成するための次世代プレゼンテーション システムです

0グッド

0クリップ

投稿2022/02/18 07:51

編集2022/02/18 08:19

はじめまして、久しぶりに質問させていただきます。
前提として、
WindowsFormのアプリケーションをWPFに書き換え移行しようと考えております。

WindowsFormで使用していたライブラリをWPFプロジェクトの「依存関係」>「アセンブリ」にライブラリを参照追加して
コンパイルすると以下のようなエラーが発生してしまいます。

単に、ライブラリがWPFに互換性がないのか、それともWPFではWindowsFormで使用していたライブラリを使用することは不可能なのか、またこれを解決する方法はあるのでしょうか。

ご教示のほどよろしくお願いいたします。

下記のような例文がでます。
【例外がスローされました】
System.Reflection.TargetInvocationException: 'Exception has been thrown by the target of an invocation.'
内部例外
BadImageFormatException: Could not load file or assembly 'PLCCommLib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. 間違ったフォーマットのプログラムを読み込もうとしました。

イメージ説明

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

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

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

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

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

Zuishin

2022/02/18 07:53

互換性のないものはあります。 どうにもならないこともあります。 ケースバイケースです。
Zuishin

2022/02/18 08:23

BadImageFormatException なら、WPF どうこういう話ではありません。 x86 専用のアセンブリか何かでしょう。
abenosan00

2022/02/18 08:24

ですが、x64でも使用できておりました。同じPCで
Zuishin

2022/02/18 08:30

https://docs.microsoft.com/ja-jp/dotnet/api/system.badimageformatexception?view=net-6.0 > この例外は、ダイナミックリンクライブラリ (.dll ファイル) のファイル形式または実行可能ファイル (.exe ファイル) が、共通言語ランタイムが想定している形式に準拠していない場合にスローされます。 特に、次のような状況では例外がスローされます。 「想定している形式に準拠していない場合にスローされます」ということなので、使用するアプリケーションが古いものであれば、そのアプリケーションはそのライブラリを想定していたのでしょう。
abenosan00

2022/02/18 08:35

なるほど、確かにビルドx86でコンパイルしたら起動できました。。。 x64で起動する場合はライブラリをx64で対応できるようにしないといけないということですね。。。 ご回答ありがとうございます。助かりました。
Zuishin

2022/02/18 08:37 編集

「解決した方法」に、Q & A の形で、第三者が質問と回答を読んで問題が理解できるよう回答してください。
guest

回答1

0

使用可能のものもあれば、不可能のものもあります。

そいつは不可能、ということなんでしょうね

投稿2022/02/18 08:28

y_waiwai

総合スコア87774

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問