アカウント名:
パスワード:
64bit==x64と決めつけてくるインストーラーとかありそうだけど大丈夫なのかな。またマニフェストか何かで宣言していないと嘘つくようにするのかな。
そもそもバイナリ互換がないのだから、やるとしたらUniversal Binaryみたいなもので過渡期を乗り切るでしょう。x86と判定されてからロードされるコードなら、さすがにAMD64とARM64を間違えることはないのでは?
> x86と判定されてからロードされるコードなら、さすがにAMD64とARM64を間違えることはないのでは?
危惧してるのは、
if (IsWow64Process(GetCurrentProcess(), &isWOW64) && isWOW64) { /* OSはx64に決まってるよね */}
みたいなやつ(当然このコード自体はx86)。ていうかマジで見かけた(武士の情けでURLは伏せる)。あとコンパイル段階で
#ifdef _WIN64 /* x64専用のコード */#endif
とか。少なくとも同様の理由でWin64でも_WIN32を定義することに決定したわけだし。
大丈夫。そういう判定で中身x64決め打ちなコードならば、elseや#else側もx86 (32-bit)決め打ちになっているだろう。だから、ARM64関係なく問題を抱えていると言える。だから大丈夫、ARM64に非はない。
#自分もその2種類の条件判定どっちも書いたことある。だけど、ちゃんとx64以外の64ビット対象にビルドしたときでも問題ないつもり。主に「SysWOW64やProgram Files (x86)などの使い分けのため、やむを得ず」という場合に使っているので。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
Stay hungry, Stay foolish. -- Steven Paul Jobs
IA64が死んで (スコア:0)
64bit==x64と決めつけてくるインストーラーとかありそうだけど大丈夫なのかな。またマニフェストか何かで宣言していないと嘘つくようにするのかな。
Re: (スコア:0)
そもそもバイナリ互換がないのだから、やるとしたらUniversal Binaryみたいなもので過渡期を乗り切るでしょう。
x86と判定されてからロードされるコードなら、さすがにAMD64とARM64を間違えることはないのでは?
Re:IA64が死んで (スコア:0)
> x86と判定されてからロードされるコードなら、さすがにAMD64とARM64を間違えることはないのでは?
危惧してるのは、
みたいなやつ(当然このコード自体はx86)。ていうかマジで見かけた(武士の情けでURLは伏せる)。
あとコンパイル段階で
とか。少なくとも同様の理由でWin64でも_WIN32を定義することに決定したわけだし。
Re: (スコア:0)
大丈夫。そういう判定で中身x64決め打ちなコードならば、elseや#else側もx86 (32-bit)決め打ちになっているだろう。だから、ARM64関係なく問題を抱えていると言える。だから大丈夫、ARM64に非はない。
#自分もその2種類の条件判定どっちも書いたことある。だけど、ちゃんとx64以外の64ビット対象にビルドしたときでも問題ないつもり。主に「SysWOW64やProgram Files (x86)などの使い分けのため、やむを得ず」という場合に使っているので。