ももらぼっ!にっき


2008年06月06日 [長年日記]

_ [WM5] Windows Mobileのショートカットファイル(.lnk)のフォーマット。

W-ZERO3向けにExecなんちゃらシリーズを公開しているわけですが、ものによってiniファイルの指定の仕方が違うのがずっと気になってました。 ExecMultiはセクション名を指定するのに、それ以外はiniファイル名を指定するところとか。

で、その辺をうまく共通的にできないかなーと考えているときに、そもそもiniファイルを使って設定を定義するのではなく、ショートカットファイル内に設定を埋め込めないかと思いついたのでした。

とりあえず、ショートカットファイルのフォーマットを調べないといけません。 いろいろ試してみて分かったことを以下に列挙しておきます。

  • Windows Mobileのショートカットファイルは単なるテキストファイル。

    53#"\Program Files\ShortcutMaster\ShortcutMaster.exe" -a
  • 形式は以下の通り。"と{パラメータ}の間にはスペースが無くてもいいみたい。

    {#以降の文字サイズ}#"{実行ファイルのフルパス}"{パラメータ}
  • 文字サイズは無くても、実際の文字サイズと違っていても動作してしまう。
  • #が無いとエラーになる。
  • パラメータは改行していても引き渡される。 例えばこんなのも。

    53#"\Program Files\ShortcutMaster\ShortcutMaster.exe" -a
    b
  • #以降は259文字までしか認識しない。 MAX_PATHが260だから…かな。

これらは、星羽さんとこShortcutMasterを使って実行した結果を前提にしています。 もしかしたら、他のソフトだと違う動きをするかも?いや、しないかも。