通常、32ビットバージョンのWindowsアプリケーションをコマンドラインから実行するのは非常に簡単です。実行ウィンドウ:
C:\Windows\SysWOW64\Notepad.exe
ファイル名の横に* 32が付いているので、タスクmonitor\processesをチェックインすると、プロセスが32ビットであることがわかります。
ただし、リモートデスクトップクライアント(mstsc.exe)はボールをプレーしたくありません。起動方法(実行ウィンドウ、32ビットcmdウィンドウなど)に関係なく、常にC:\ Windows\System32\mstsc.exeから64ビットバージョンを実行します。私はそれを作成するために32ビットC++プログラムを作成しようとしました(通常、子プロセスも32ビットです)が、これは機能しませんでした。
リモートデスクトップと統合されているカスタムdllがいくつかあり、64ビットプロセスで32ビットdllをロードすることができないため、32ビットバージョンを実行する必要があります。
誰かがこれを回避する方法を知っていますか?
これを手に入れる簡単な方法を見つけました。
http://www.davidmoore.info/2009/12/02/running-32-bit-remote-desktop-connection-on-windows-64-bit/
解決策:System32から64ビットのmstsc.exeの名前を変更して、32ビットプロセスを置き換えないようにします。
そのファイルの名前を変更する権限がある場合、これは簡単です。 NTFSを使用している場合は、「このファイルを変更するにはTrustedInstallerからの許可が必要です」というエラーが表示されることがあります。
このエラーを回避するには、ファイルの所有権を取得して、完全な権限を自分に付与します。
これで、mstsc.exeファイルの名前をmstsc.exe.bakのような名前に変更できます。
次に、%SystemRoot%\ SysWOW64からmstsc.exeを起動すると、32ビットのリモートデスクトップ接続が実行されます。
Mstscを32ビットで強制的に実行する唯一の方法は、(sysinternalsから)依存関係を実行して、syswow64からmstsc.exeを開くことです。起動後、プロファイリングを使用して、オプションをデフォルトのままにします。これにより、mstsc * 32ビットが実行されます。現在、私は同じことをする他の方法を見つけていません。ホーこれはフラビオを助ける
これは64ビットバージョンのウィンドウについては混乱を招きますが、SysWOW64ディレクトリにあるものは、 'WOW'(Windows on Windows)で実行される32ビット実行可能ファイルです。 System32ディレクトリにあるものは64ビットのバイナリであり、32ビットに相当するものはありません。ここでの命名は互換性の理由によるものであり、不完全ですが、一部のソフトウェアは、そうでなければ機能しないために機能すると確信しています。
32ビットインストールから64ビットマシンにmstsc.exeをコピーして実行することもできますが、私の知る限り、64ビットウィンドウにはmstsc用の64ビットexeしかないため、強制的に32ビットモードで実行することはできません。
以下のスクリプトを.batファイルとして使用して、mstsc.exe x32を強制的に開始します。
@echo off
set WinDir=
start C:\Windows\SysWow64\mstsc.exe
既存の32ビットインストールから32ビット実行可能ファイルをコピーして実行しましたか?
私の答えは:Is mstsc.exeの32ビットバージョンはありますか? 64ビットWindowsに同梱されているmstscは、mstscの64ビットバージョンであると想定しています。
本当の答えは: 64ビットアプリケーション用のdll拡張機能を記述したい場合は、dllを64ビットとして再コンパイルする必要があります。マイクロソフトは、すべてのオペレーティングシステムコンポーネントの32ビットバージョンを出荷する義務を負いません。
別の例:64ビットWindowsエクスプローラーのシェル拡張を作成する場合、それは64ビットdllでなければなりません。 Windowsエクスプローラの32ビットバージョンはありません。 64ビットWindowsをサポートしているか、サポートしていないかのいずれかです。
古いオペレーティングシステムを使用して互換モードを試しましたか?システムは実行可能ファイルのマニフェストを見て、それがVista用に開発されている場合、そのタブは表示されないと思います。しかし、マニフェストを編集できると思います。