Discussion:
OSのエラーダイアログを止める
(too old to reply)
yamamoto.0115
2007-07-10 12:26:02 UTC
Permalink
組み込み系でWinCE5.0を使用しています。
全画面のアプリケーションで、裏のOSを意識させないモノを作成しているのですが、
IPアドレスが重複したりしているとOSのエラーダイアログが前面に出てきてしまい、
問題になっています。
これを抑制したいと思います。

ようは、SetErrorMode()を行いたいのですが、WinCEはサポートされていないようです。

回避方法をご存じの方いらっしゃいませんでしょうか。
Gakuren Ko
2007-09-18 08:58:01 UTC
Permalink
ご存知のように、CEではSetErrorMode()がサポートされていないため、システムワイドでエラーなどのメッセージをとめる方法はないと思います。
代わりに、テクノロジー毎容易されたUIをカスタマイズすることでメッセージの表示を抑えることが多いかと思います。

具体的にどのエラーダイアログを抑制したいでしょうか?

例えば:
・Error registering name on network (may be duplicate)......
・The system ha detected a conflict for dynamically assinged IP......
・The system ha detected a conflict for statically assinged IP......
、、、などになっていますでしょうか?

上記のようなネットワーク関連のエラーやメッセージの表示は%_WINCEROOT%\Public\common\oak\drivers\netui\netui.cのNetMsgBox(...)関数で行っているため、この関数を修正することによってご希望通りの実装ができるかと存じます。

上記のようなエラーやメッセージのリソースIDはNetUI.rcにて定義されていて、最終的にNetMsgBox(...)の中でMessageBoxにてダイアログとして表示されています。
一案として、MessageBoxの前に、表示しようとしているメッセージ内容を判断し、該当文字列である場合にMessageBoxをスキップするなり、処理してあげればよいかと考えられます。

以上ご参考までに

Gakuren Ko
Post by yamamoto.0115
組み込み系でWinCE5.0を使用しています。
全画面のアプリケーションで、裏のOSを意識させないモノを作成しているのですが、
IPアドレスが重複したりしているとOSのエラーダイアログが前面に出てきてしまい、
問題になっています。
これを抑制したいと思います。
ようは、SetErrorMode()を行いたいのですが、WinCEはサポートされていないようです。
回避方法をご存じの方いらっしゃいませんでしょうか。
Loading...