WM6.1問題 解決済みのようです

掲示板で

GF5500版のTCPMPも同様の問題が発生して、正常に動作させるためにレジストリの変更をしているとの書き込みを見ました。

その後

このレジストリキーについて調べてみたら、あっさり解決。
ロスコンパイラのcegccのFAQに普通にありました。

DLL doesn't work with Windows Mobile 6.1

Memory management changes in Windows Mobile 6.1 cause some DLLs not to load. It has been suggested (see this blog that the underlying problem is a writable code section in the DLL, other reports suggest that the DLL size may be an issue.

The workaround or solution (I'm not sure what to call it) that we have is to restrict this DLL to Slot 0 by adding the following registry key:

[HKEY_LOCAL_MACHINE\System\Loader\LoadModuleLow] "MyDll.dll"=dword:1

Obviously you need to change "MyDll" into the name of the DLL that causes the problem.

Please note that using the this approach will force your entire DLL into Slot 0 and, it may prevent other modules from loading in that slot. Therefore, the above registry setting should be used with caution.

WM6.1でメモリ管理の仕様が変更されたため、問題が発生するとのこと。
HKEY_LOCAL_MACHINE\System\Loader\LoadModuleLowに"DLL名"=dword:1で値を設定すればいいようです。
実際、この設定でうまく動いているという報告もあるので、動かないという人はこれを試してみてください。

乱雑な文な気もするけれど

とりあえずこれで終わりです。
対応済みcabについては、aviさんに連絡入れておいた方がよさそうですね。