ただいまテスト中 : 掲示板
このフォームからは投稿できません。
name
e-mail
url
subject
comment

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 ファイル一覧 検索 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■84 / inTopicNo.1)  Windows 7 64bit対応
  
□投稿者/ AERO -(2010/06/19(Sat) 10:41:08)
    私が現在提供中のプログラムのうちWindows 7 64bit環境上で動作出来ないものは、以下の2つです。
    (他は、問題なく動くみたいです)

    1)Serial Device Monitor
    2)仮想分配器つき通信ポート x8

    何れも、カーネルモードモジュールが32bitであり、Windows 7 64bitは、このカーネルモードモジュールをロードしてくれません。このため、上記2つのプログラムは一部の機能しか動作できません。無意味です(--;
    OSの都合で動かないから32bitカーネルモードモジュールはロードされない(WOW64上のSETUP系APIが無効化されている)わけです。

    Windows 7 64bitはLLP64データモデルを採用しています。つまり、32bitと64bitの違いはポインターだけ。
    不適切なポインターの取り扱いがなければ、ソースコードの変更なしに、コンパイルしなおすだけで動作するはずです。
    で、作ってみたら取り敢えず動きました。(^^;

    Serial Device Monitor、仮想分配器つき通信ポート x8共に、ユーザーモードプログラムを64bit化してもメリットはありません。そして32bit版と64bit版を別々に管理することの手間は私にとって大きなデメリットになります。

    で、結局
    1)ユーザーモードのメインプログラムは32bit
    2)ユーザーモードのセットアッププログラムは32bit/64bitを用意*1
    3)カーネルモードモジュールは32bit/64bitを用意
    *1仮想分配器つき通信ポート x8のみ

    そして1)のメインプログラムにWOW64を検出したら、2)と3)の64bit版を使用するコードを追加して、32bit/64bit両対応版としました。

    が、しかし、リリースするには、コード署名と言う壁が立ちはだかります...
    つづく

    ※追記:Windows 7 32bit上では問題なく動きますよ。(^^;
引用返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

Mode/  Pass/

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 ファイル一覧 検索 過去ログ

- Child Tree Antispam Version -