問題タブ [syswow64]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
808 参照

.net - 32 ビット DLL を SysWow64\Regsvr32 に登録すると、別の CLSID が生成され、エラー メッセージが表示される

開発環境:

  • Windows 2008 サーバー32 ビット
  • Visual Studio 2010 プロフェッショナル
  • ビジュアルベーシック6

対象環境:

  • Windows 2012 R2 64 ビット

VB6 アプリケーション ( app.exe) は、COM 可視の .NET DLL ( netdll.dll) に依存しています。これは、Visual Basic 6 によって生成された COM DLL に依存しています (ListBox オブジェクトを処理するためのラッパーです。それを呼び出しますvb6dll.dll)。

上記のように、dev os は 32 ビットであるため、それらはすべて 32 ビットです。fileまた、Cygwin で提供されるコマンドでそれらをチェックしました。

RegAsm登録に使用されましたnetdll.dll:

SysWow64\RegSvr32vb6dll.dllターゲット環境への登録に使用されました。

VB6 アプリケーションを起動すると、次のメッセージが表示されました。

次のエラーのため、CLSID {XXXX} を持つコンポーネントの COM クラス ファクトリを取得できませんでした: 80040154

この質問の重複ではないと思います。Windows 2008 から Windows 2012 R2 に変更さた CLSID をvb6dll.dll見つけました...そして、それnetdll.dllが見つからない理由のようです...もしそうなら、なぜ登録がこのように動作するのですか?

更新:私はCLSIDの初心者であることを認めます...明確に理解していれば、VB6は各COMオブジェクトのCLSIDを書き込み、これらのCLSIDはRegSvr32によって取得されます。正しい場合、Windows 2012 バージョンの RegSvr32 (SysWow64) がレジストリに別の CLSID を書き込むのはなぜですか?

0 投票する
1 に答える
527 参照

c# - インストーラーを使用して INF をインストールしているときに、ファイルが System32 ではなく SysWOW64 にコピーされる

1 つの .sys ファイルを Windows ドライバー フォルダーにインストールする INF ファイルがあります。シナリオは次のとおりです。

1) エクスプローラーから INF をインストールします。INF ファイルを右クリックし、[インストール] をクリックします。このシナリオでは、.sys ファイルが Windows\System32\drivers フォルダーの下にコピーされます。

2) プロセス オブジェクトの下で RunDll32 / CMD を使用してインストールするコンソール アプリケーションを作成し、INF ファイルをインストールします。このシナリオでは、.sys ファイルが Windows\System32\drivers フォルダーの下にコピーされます。

3) インストーラー クラスを持つ x86 インストーラー プログラムを作成し、RunDll32 / CMD を使用してプロセス オブジェクトにインストールし、INF ファイルをインストールします。このシナリオでは、.sys ファイルが Windows\SysWOW64\drivers の下にコピーされます。

私たちの目的は、WinXP、Windows7、Windiows 8/8.1/10 などの 32/64 ビット フレーバー Windows オペレーティング システムに関係なく、Windows\System32\drivers フォルダーの下に .sys ファイルをコピーすることです。

0 投票する
0 に答える
487 参照

php - 完全に予期しない例外: COM オブジェクト `TestCOM.generateLockPIN' の作成に失敗しました: 構文が無効です

regsvr32 を使用して、SysWow64 に既に登録されている com dll に接続しようとしています。

そしてまた

一方TestCOM、私のdll名であり、generateLockPIN関数名です。

私もdcomcnfgに許可を追加しました

コンポーネント サービス -> プロパティ -> Com セキュリティ -> デフォルトの編集 -> アクセス許可 Everyone、IUSR

そしてphp.iniで設定しました

私は多くの解決策を参照しましたが、運はありませんでした

以前の質問このようにしてみました

どんな助けでも本当に感謝します。