質問

vjs ランタイムに依存するプロジェクトを vs2010 に変換しようとしましたが、実行しようとするとエラーが発生します。

それはエラーを与えています 「ファイルまたはアセンブリ「vjslib」、またはその依存関係の 1 つをロードできませんでした。不正な形式のプログラムをロードしようとしました。"

vjs ランタイムを再インストールしましたが、効果がないようです。

これで .net 4 を動作させる方法はありますか?

役に立ちましたか?

解決

非常にシンプルなソリューション - 呼び出すJ# .NET 4.0

からコード

あなたがコントロールを取り、最初の明示的なパスを供給してロードします。そして、それが必要です次回は、それは既に(またはそれがすでにのAppDomainにロードされています)のパスを知っています。

あなたはそうのPInvoke参照をインポートし、LoadLibraryの機能を使用する必要があります

[DllImport("kernel32", SetLastError = true)]
static extern IntPtr LoadLibrary(string lpFileName);

負荷に(コンソール/リサイズまたはGlobal.asaxの中のApplication_Start主な機能のいずれか):

if (Environment.Version.Major >= 4)
{
    string folder = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), @"..\Microsoft.NET\Framework\v2.0.50727");
    folder = Path.GetFullPath(folder);
    LoadLibrary(Path.Combine(folder, "vjsnativ.dll"));
}

他のヒント

私は<のhref = "http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=4712" のrel = "noreferrer" からMicrosoft Visual J#Version 2.0再頒布可能パッケージをダウンロードしています> http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=4712 とインストールit.Theの問題が解決されます。

私はCをコピーして仕事にこれを得た:\ WINDOWS \ Microsoft.NET \ Frameworkの\ v2.0.50727の\ vjsnativ.dll(64ビット用Microsoft.NET \ Framework64 \ v2.0.50727の\ vjsnativ.dll)自分のアプリケーションのデバッグに/ releaseディレクトリ。

私は、Microsoftが.NET 4.0で動作するように、別のj個の#再頒布可能パッケージをリリースする必要があります疑い。一方、この回避策は、細かい仕事をしています。

これを動作させる唯一の方法は、C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\vjsnativ.dll を C:\Windows\Microsoft.NET\Framework\v4.0.30319 フォルダーにコピーすることでした。見る http://community.microfocus.com/borland/managetrack/starteam/w/knowledge_base/17108.error-unable-to-load-dll-vjsnativ-the-specified-module-could-not-be-found-Exception- from-hresult-0x8007007e.aspx

に加え、既存の答えのことを確認いただくことが解った。

よろしくお願いしたの Microsoft Visual J#2.0再頒布可能パッケージ-SE(x64) Windowsをお使いのコントロールパネルで右クリックをクリックし修理).このた場合にはいくために新たに損傷前の試みの問題です。

また、既に実施し、提供されるソリューションによるデヴィッドThielen.

1ステップの閉鎖はまるのもったいなかった問題を修正):コピー"vjscor.dll","vjslib.dll"および"vjsnativ.dll"から C:\Windows\Microsoft.NET\Framework64\v2.0.50727C:\Windows\Microsoft.NET\Framework\v2.0.50727

なので基本的にMicrosoft社のパッケージの正確性が大幅に向上し、64ビットとしています。NETフレームワークといった手動で移動し、32ビットのフォルダをコピー-貼り付けもフォルダにデイヴィッド-Thielenソリューションしてください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top