32ビットのプレフィックスを作成する方法を説明するスレッドがたくさんありましたが、使用しているプレフィックスが32ビットか64ビットかを確認したいと思います。私が尋ねている理由は、PlayOnLinuxを使用していて、32ビットの仮想ドライブ(たとえばX)を作成したからです。 〜/ .PlayOnLinux/wineprefixフォルダーでwinetricksを開くと、wineprefixからメッセージが表示されます
64ビットのWINEPREFIXを使用しています。問題が発生した場合は、バグを報告する前に、クリーンな32ビットWINEPREFIXで再テストしてください。
しかし、〜/ .PlayOnLinux/wineprefix/Xでwineprefixを開いたとき、メッセージは表示されませんでした。
プレフィックスが32ビットか64ビットかを確認するにはどうすればよいですか?
必要なのは、PlayonLinuxの仮想ドライブを閲覧することだけです。 WINEPREFIX/drive_c /フォルダーに移動し、Program Filesフォルダーを探します。
プログラムファイルのみが表示され、ProgramFiles(x86)が表示されない場合は、32ビットのワインプレフィックスを使用しています。両方が表示される場合は、64ビットワインプレフィックスを使用しています。お役に立てれば !!
スクリプトに似たようなものが必要だったので、@ wilfの答えに基づいてこのスクリプトを作成しました。
#!/bin/bash
## Wine can spam stderr
ERRLOG=/tmp/dllerrlog.log
WINESYSDIR=$( winepath -u c:\\windows\\system32 2> $ERRLOG )
if [[ ${WINESYSDIR} == *"/system32" ]]; then
echo "Prefix is 32 bit"
# do 32 bit stuff here...
Elif [[ ${WINESYSDIR} == *"/syswow64"* ]]; then
echo "Prefix is 64 bit"
# do 64 bit stuff here...
else
echo "Unknown wine architecture"
fi
そして、ここにいくつかの出力があります:
$ ./winearch.sh
Prefix is 64 bit
そして、32ビットのワインの接頭辞には次のものがあります:
$ WINEPREFIX=~/.wine32 ./winearch.sh
Prefix is 32 bit
PlayOnLinuxを使用している場合、GUIを使用してどのバージョンを確認できます。PlayOnLinuxを開き、関連するプログラムの[構成]をクリックして、左側のペインを確認します。
あるいは、winetricksが行うことを行うことができます(バージョン20140817
、3600年頃)、これはwineprefixでディレクトリWINEPREFIX/drive_c/windows/syswow64
の存在を確認します。 64ビットWindows /ワインプレフィックスでは、32ビットバージョンではありません。これは、通常のwineprefixおよびPlayOnLinuxの下で機能します。
Winetricksをインストールし、これをターミナルに入力できます。
Sudo apt-get install winetricks
そして、winetricksを実行すると、好みでそれを見ることができます。
@-wilf's for 'WINEPREFIX/drive_c/windows/syswow64'(機能します)に感謝します。
しかし、私はwine registryを編集して、明らかになるエントリを見つけました。
システムが使用しているwinearch(win32またはwin64)。
cat /root/.wine/system.reg | grep -m 1 '#Arch' | cut -d '=' -f2
このコマンドの表示:win32(32ビット)またはwin64(64ビット)
スクリプトでこれを使用する方法の一例を以下に示します。
#!/bin/sh
HkLm=$(cat /root/.wine/system.reg | grep -m 1 '#Arch' | cut -d '=' -f2) > /dev/null 2>&1 # winearch (regedit)
if [ "$HkLm" = "win64" ]; then
echo "[x] winearch config: $HkLm (64 bits)"
echo "[i] Please run:$IPATH/bin/enable_x32bits_wine.sh"
exit
fi
最終ノート:kali linuxでこれをテストしました ..
if WINEPREFIX =/root/.wine32 then catコマンドにはそのディレクトリが含まれている必要があります
regedit winearch設定のフォルダー内を読み取れるようにします。