WindowsNT互換指向 - ReactOS Part10
レス数が900を超えています。1000を超えると表示できなくなるよ。
WindowsNT系OSのアプリやドライバを動作させる事を目指して開発されている
「ReactOS」に関する情報交換スレです。
・次スレは、980を踏んだ人がたてましょう。
・過度の煽り行為や荒し厳禁!!
・最低限のルールを守って正しく進行しましょう。
本家
http://www.reactos.org/
公式wiki
http://www.reactos.org/wiki/
既知のバグ(英語)
http://www.reactos.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED
情報まとめ
http://reactos.2chv.net/wiki/
専用あぷろだ(1Mbyte制限)
http://reactos.2chv.net/uploader/upload.html MSDNの公開情報とWin32APIの専門書を読んでフォントシステムを実装した。盗んだ訳じゃないよ。 疑ってるようだから書くけど、日経BP『APIで学ぶWindows徹底理解』2004年発行の168〜175ページにフォントシステムに関する記事が記載されている。 嫌疑不十分だから名誉毀損になるぞ。下手な書き込みは休み休みにしろよ。 M$とLinux連合軍が私を精神攻撃する。私は精神攻撃に耐えて例のモノを完成させる。 sudden deathと隣り合わせ。精神的な闘いになるだろう。 XScreenSaverWinなんて作るから結果としてLinux陣営からも敵視されてしまった。 APIの本見ながら書いたってことは盗んだのと同じだよね カーネルモードでのテスト方法についてIRC上で教わった。寝る。 すみませんReactOSのスレかと思ってオッサンのツイッターに来てしまいました オッサンじゃなくて妖精や天使がReactOSを作ってるんだよ。 【カーネルモードのテスト方法】
RosBEのsvnでReactOSのtrunkをダウンロード。
C:\Users\katahiromz\reactos>svn co svn://svn.reactos.org/reactos/trunk
「trunk\reactos\modules」にCDコマンドで移動。
フォルダmodules上でmklinkでrostestsのリンクを貼る。
C:\Users\katahiromz\reactos\trunk\reactos\modules>mklink /j rostests ..\..\rostests
あとは、普通にビルドして、ここに書かれているようにすればいい。
https://www.reactos.org/wiki/KmtestsHowto さあ、やっと自由時間ができた。IME/IMMをやるぞ。
基本的に逆アセンブル・逆コンパイル・直接的な逆工学は禁止だから、テストなどで調べないといけない。IMEはすでにあり(mzimeja)、IMEのソースは自由に変更できる。IMEからは呼び出し履歴を構造的に調べることが可能。調査は、IMEとIMMの結合テストが主になる。
テスト対象は、ウィンドウシステム・ファイルシステム・レジストリ・実引数・呼び出し履歴などだ。 【心構え】
気づいたこと・記録を残すべきことはメモし、最終的には公開しよう。
調査対象を根気よく綿密に調査しよう。
時間を無駄遣いしないようにしよう。
【最初にやること】
1.自作のIME(mzimeja)をもう一度読み直す。
2.IMEそのものにはおそらくデバッガが使えない。IME内部から呼び出し履歴を調べるために、C++でFootmark++という便利な
自作のフレームワークを作って、IMEに採用する。
3.ウィンドウシステムを調べるツールを用意し、詳細に完全に調べ上げる。Spy++、Winspector、SpyGuru、WindowHierarchyCheckerなどを使う。
https://github.com/katahiromz/WindowHierarchyChecker
この他にもツールが必要なら自分で作るか他から調達する。 Win2kで動作させるためには、VS2008使わないといけないか。
MSYS2使いたいが、しばらくおあずけだ。
TSF を使う (1) - Windows Input Method の歴史
http://nyaruru.hatenablog.com/entry/20070309/p1
これも読む。 mzimejaをCMake使ってフラットスタイルプロジェクトをツリースタイルに再構築。関数の実引数情報が必要だから、footmark++を改良しよう。 RegDiffいいな。レジストリの違いが分かる。
ファイルを集めたら、ImgBurnでCDイメージを焼こう。
これでWin2kにツールを導入できる。 最初に調査することは、IMEをインストールしたら何が起こり、何が変わるのかだ。レジストリ、ファイルシステム、メッセージング、ウィンドウシステムの四点に分けて調査する。
VirtualBoxは、スナップショットという機能で何回でもプレイバック(巻き戻し)できるから、便利。 C:\> xcopy /e /y /c winnt winntcopy
これでwinntをまるごとコピー。
レジストリもregeditで教わったゲットしておく。 自作のIMEをロードすると、system32にIMEモジュール(mzimeja.ime)がコピーされる。
また、次のようなレジストリキーが作成される。
→[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Keyboard Layouts\E0120411]
→"layout file"="kbdjpn.dll"
→"layout text"="日本語 (MZ-IME)"
→"IME file"="MZIMEJA.IME"
→[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\E0120411]
→"layout file"="kbdjpn.dll"
→"layout text"="日本語 (MZ-IME)"
→"IME file"="MZIMEJA.IME"
→[HKEY_USERS\S-1-5-21-1343024091-1078145449-854245398-1000\Keyboard Layout\Preload]
→"2"="E0120411" 十六進数の「E0120411」という値が気になる。
たぶんキーボードレイアウトに関係しているんだろうけど。
ATOKの担当者なら知っているはず。
「S-1-5-21-1343024091-1078145449-854245398-1000」というのはSIDの一種。
HKEY_USERSの下にあるので、まちがいなくユーザーを識別するSID。 ダイアログでMZ-IMEをアクティブにすると次のようにレジストリが変更された。
→[HKEY_USERS\S-1-5-21-1343024091-1078145449-854245398-1000\Keyboard Layout]
→"Attributes"=dword:00000000
→[HKEY_USERS\S-1-5-21-1343024091-1078145449-854245398-1000\Keyboard Layout\IMEtoggle]
→[HKEY_USERS\S-1-5-21-1343024091-1078145449-854245398-1000\Keyboard Layout\IMEtoggle\scancode]
→[HKEY_USERS\S-1-5-21-1343024091-1078145449-854245398-1000\Keyboard Layout\Preload]
→"1"="e0120411"
→"2"="e0010411"
→[HKEY_USERS\S-1-5-21-1343024091-1078145449-854245398-1000\Keyboard Layout\Toggle]
→"Hotkey"="3" 呼び出し履歴は次のようになる。ダウンロードして閲覧するとよい。
https://github.com/katahiromz/ime-study/blob/master/00-mzimeja.log
まず、DllMainから入って出ていく。
ImeInquireから入って初期化を行って、出ていく。
ImeSelectから入って内部でMzIme::UpdateIndicIconが呼ばれ、
INDICATOR_CLASSウィンドウクラスのウィンドウを使って
インディケータアイコンを更新して、
IMCをロックして、InputContext::Initializeを呼んで、入力文脈を初期化、
IMCをアンロックする。ImeSelectを去る。 続き。
ImeSetActiveContextから入る。再びMzIme::UpdateIndicIconが呼ばれる。ImeSetActiveContextを去る。
MZIMEWndProcから入る。おそらくIMEウィンドウクラスのインスタンスだろう。
MZIMEWndProcは実引数と戻り値に関してもうちょっと詳しい情報が欲しい。改良が必要だ。
WM_CREATEが来る。以下は後で詳しく分析する。 ごめんなさい、プログラミングの話は全く通じないみたいだね。移動します。
★自作プログラム、評価してよスレッド」★1 [無断転載禁止]??2ch.net
http://mevius.2ch.net/test/read.cgi/tech/1450859278/ __ /
/⌒ ヽ / /
( )'゙ヽ. _/
. /iー-‐'"i ,; /
i ! ( ヽ. ) ノ/ .:/
(\.゙ヽ_(_/,イ/
i ! (\\_,_)' ノ >>859
(\\_,_,)'
i ! l ,i\ ヽ、 ! あ”っー あ”っー あ”っー あ”っー あ”っー
し' /⌒~~~⌒\ ( ,,) (,,・Д・)
/ ( ゚>t≡ )y─┛~~ 〜(___ノ 〜(___ノ ,γ_
(_ ノγ U ∩_∩) THANK YOU 2ch ┌───────┐ \
α___J _J and (| ● ● | ヽ
/ ̄ ̄ ̄ ̄\ GOOD-BYE 2ch WORLD! /.| .┌▽▽▽▽┐ .|____|__||_| ))
/ ● ●、 ( ┤ .| | .|□━□ )
|Y Y \ またどこかで会おうね \. .└△△△△┘ .| J |)
|.| | .▼ | | \あ\ | ∀ ノ
| \/ _人|∧∧∩゛冫、 .∧_∧ | \り.\ . | - ′
| _/)/)/( ゚Д゚)/ ` . (´∀` )..ヽ(´ー`)ノ \が\ . | )
\ / 〔/\〕 U / ∩∩ ( ) (___) \と.\ .|/
| | | c(*・_・) | |ヽ(´ー`)ノ_| | | | |〜 /\.\う\| (-_-)
(__)_) UUUU /∪∪ (___)(_(__) ◎ ̄ ̄◎─┘ .└──┘.(∩∩) プログラミングの話が悪いのではなく片山のコミュ力が絶望的なのが問題 ReactOSのソースコードをSVNからGitHubに引っ越すらしい このプロジェクトに未来はあるのだろうか
続ける情熱はどこから出てくるのだろう
Linuxのパッケージ開発の方が有意義だと思うのだが… アホだからってのははずででもないな
MenuetOSや派生のKolibriOSみたいにフロッピー1枚の容量で動作するOSとか実用性0な趣味の世界もある linuxは長い歴史があるけど
パッケージは短命だと思う >>868
「賢い人」はすぐあきらめるが、アホは簡単にくじけんぞ。
もしかしたら、そういうアホ力が世の中を変えるのかもしれない。 最新ハード上でホストOSとして動作してくれないと普及は難しいだろうなあ 大唐吐蕃回廊漢宮秋月康秀華南京都大白微宮廷記 [無断転載禁止]??2ch.net
http://mevius.2ch.net/test/read.cgi/tech/1505917105/
こちらのスレでまじめにWindowsシステム解析の研究を続けています。 これで誰でもGitHubのやり方で開発に参加できる訳だ。SVNにさようなら。 うまく行ったら、線の太さを変えられるようになるかも知れない。
CORE-2527 - pen width (CreatePen) doesn't work
https://jira.reactos.org/browse/CORE-2527 たった三行の変更でも何時間も時間を掛けてテストされている。時間の掛かる作業だ。 いつになったら reactos.cab に日本語フォントがデフォルトで入るのか? >>886
容量の関係でNightly Buildには日本語フォントはバンドルされないようです。次の正式リリースをお待ち下さい。 sourceforgeにReactOS-0.4.7-RC1があるぞ 最新のビルドでは、CD/DVDの取り出しが出来るようになったみたいだ。 少なくとも2年は必要だ。今、アクセス権のないエクスプローラの穴を探している。だれもエクスプローラに対してAPIフックに成功した者は居ない。 IME関係が解決すれば中国が使いはじめるだろうからバグ取りも進化も早いんだろうけどね 脆弱性をつくってことは、ハッカー以外は有り得ないわけで、、、 テーマをLautusにすると文字化けするのか
まあシステム自体はだいぶ安定しているように感じる 日本語入力出来なければ売れないよ。
結局そこが分かれ目 >>907
日本語選択でインストールするとフォント設定何もいじらなくても
コマンドプロンプト内で日本語ちゃんと見えるようになったね
(フォント幅の問題で位置が乱れるのは0.4.6以前のまま)
スタート》プログラム》アクセサリ》システムツール》文字コード表
を起動してフォントを泥井戸に変更、文字を選び
コマンドプロンプト側では右栗メニューで貼り付け選択
おお、日本語入れられるじゃない
機械式和文タイプライタ使ってばりばり仕事してたという人間国宝な人々にとっては
もはや日本語入力可能osといっていいレベル(? ReactOSってWindows互換を目指してたんじゃなかったの??
「ReactOS 0.4.7」リリース、Ext2/3/4やBtrFSなどをサポート
https://mag.osdn.jp/17/12/07/185000 poor man's Windowsからbetter Windowsへ変身させようとの方針だ。 XPあたりまで対応の古めのエロゲはこのOSで動くかな?
XPマシンが壊れてしまって困ってる >>922
よし乗り換えやってみるわ
もし不都合なくプレイできたら開発に寄付しよっと
OS作るのって大変だもんね レス数が900を超えています。1000を超えると表示できなくなるよ。