WinRAR Part18

このエントリーをはてなブックマークに追加
404名無しさん@お腹いっぱい。
64bitOSでは16bitプログラムが動かないように、
64bit版で何かすると64bitバイナリになってしまい
32bitで動かないことはよくある。

動くのなら、64bit用ゲームは何故32bitOSで動かないのか。
405名無しさん@お腹いっぱい。:2009/09/06(日) 12:19:54 ID:+3qAH63G0
プログラムをしたこともないド素人の中には
64bitOSでコンパイルしても32bitOSで動く、とか考えるバカがいる。
64bitバイナリが32bitで動くわけねえだろ。
動くとするなら、それはエミュレータを介しているだけだ。
64bitXPやVistaで32bitプログラムが動くのは「Windows on Windows」というエミュレータが起動しているからだし。
バカはこういうとこも知らない。
406名無しさん@お腹いっぱい。:2009/09/06(日) 12:20:48 ID:6aQTRsiB0
ヴァカ?
書庫の話だろうが
407名無しさん@お腹いっぱい。:2009/09/06(日) 12:21:27 ID:QKAWpkks0
はぁ?
64bit版と32bit版で作成できる書庫の互換性がないわけがないだろ
408名無しさん@お腹いっぱい。:2009/09/06(日) 12:23:29 ID:WFLpYU3T0
プログラムしてる俺イカすぜ、他は馬鹿キリッ
409名無しさん@お腹いっぱい。:2009/09/06(日) 12:40:50 ID:+3qAH63G0

「圧縮された中身」ではなく、「バイナリコード」だから依存するようにできる。
というか依存する。
依存しないように見えるのは、プログラムでそれを吸収した場合のみ。

まあこういう基本的なことも知らないバカがいるってのは日本にとって不幸なこと。
どんどん国が荒れる。
410名無しさん@お腹いっぱい。:2009/09/06(日) 12:44:32 ID:+3qAH63G0

64bitプログラムから32bitコードを吐けば、バイナリは依存しないように見えるが

32bitと明らかに明示して出力しないといけない時点で依存が発生している証拠

だ。



出力が絶対に依存しないのなら64bitOSで16bitプログラムを起動できたりするはずだが、そうなってない。
DOS時代よくあった16bit圧縮プログラム、自己解凍式プログラム

依存しないのなら、64bitXPで開けるはずだが、開けない。
そのせいで初代QuakeやDukeなど、インストールもできない。

バカでも知ってるはずだが、「圧縮データよりも先にバイナリコードを処理しなければならない」ので
ここで依存するのは当たり前だ。
411名無しさん@お腹いっぱい。:2009/09/06(日) 12:49:51 ID:qwWPB7CY0


てんパー チョン北沢広1号 が各スレに出没しています

ご注意下さい。

ビタワン北沢
412名無しさん@お腹いっぱい。:2009/09/06(日) 12:50:47 ID:+3qAH63G0
圧縮されたファイルデータだけを取り出そうとしても、


「圧縮アルゴリズムが同じでも格納アルゴリズムが32bit以上前提」


の場合、16bitOSで動く展開プログラムを作ろうとしてもデータ化けなどを起こして展開できない。


すでに依存してる証拠。
413名無しさん@お腹いっぱい。:2009/09/06(日) 12:51:34 ID:7/v5Errk0
WOWはエミュレータじゃないっしょ。
APIの橋渡しやってんじゃないの。
414名無しさん@お腹いっぱい。:2009/09/06(日) 12:52:04 ID:KAHHDJKD0
rar形式書庫の話
rar形式自己展開書庫の話

>>394を読んだ上でどっちの話をしてるのかね?
415名無しさん@お腹いっぱい。:2009/09/06(日) 12:56:53 ID:+3qAH63G0
http://msdn.microsoft.com/ja-jp/library/aa384274%28VS.85%29.aspx



WOW64 エミュレータ


はユーザー モードで実行されます。
これにより、32 ビット版の Ntdll.dll とプロセッサのカーネル間のインターフェイスが提供され、カーネル呼び出しがインターセプトされます。


WOW64 エミュレータ


は、次の DLL から構成されています。
* Wow64.dll では、エミュレーションの主要なインフラストラクチャと、
416名無しさん@お腹いっぱい。:2009/09/06(日) 13:04:41 ID:+3qAH63G0
エミュレーションしなければいけない時点で依存があるために
互換性は保証されない。
実際WOW64やWOW32でも動かないものがある。

互換性があるなら、「エミュレーション」ではなく「ネイティブ」動作するはずだ。


圧縮ファイルにも同じ事が言える。
開けるように見えるのはソフトウェアでエミュレーションして吸収してくれるからであって、
ネイティブで扱っているわけではない。

互換性は保証されていないわけだ。
だから「開けないバグがありました」とかあるわけで。
ネイティブなら特定の圧縮ファイルが開けないなど、絶対にない。