【お知らせ】プログラミング記事の投稿はQiitaに移行しました。

Windows CE(x86)対応

n7shi2008-09-20


Windows CE(x86)のバイナリが出力できるようになりました。

PEとしての構造は同じなので、ヘッダのサブシステムを変更しただけです。x86にしか対応していないため、実質的にエミュレータでしか動きません。
以下のようなコードが実行できます。

<?xml version="1.0" encoding="utf-8" ?>
<llpml version="1.1" subsystem="WINCE_GUI">

<title>Windows CE</title>

<?llp
extern "coredll.dll" __widecharset
  MessageBox(hWnd, lpText, lpCation, uType);

MessageBox(null, "こんにちは、世界!", "だいあろぐ", 0);
?>

</llpml> 

Windows CEはCOREDLL.DLLにAPIが集約されています。ROMイメージからDLLがコピーできないため、インポートライブラリ解析ツールでシンボル名を調べました。

x86だけではSDKエミュレータくらいでしか動かせないので、本格的にCEで使うならARMへの対応は不可欠です。LLPMLを自分自身で書き直す際にARMサポートを検討します。