[リストへもどる]
一 括 講 読

投稿時間:05/11/20(Sun) 19:06
投稿者名:たまみ
URL :
タイトル:プラグインSDKのTCHAR
はじめましてたまみと申します。

プラグインを作ろうとSDKの BeckyApi.h を見ていて気になったのですが、
LPSTR と LPCTSTR が無節操に混在しているように見えます。
(CHAR系 と TCHAR系 が混在しているという意味です)

これだけ混在していると、作る側としてはどちらかに統一することは
困難と思うのですが、、LPCTSTR は常に LPCSTR と考えてよいのでしょうか。
(UNICODE対応は考えられていないのでしょうか)

投稿時間:05/12/27(Tue) 16:19
投稿者名:ゆーち
URL :
タイトル:Re: プラグインSDKのTCHAR
LPSTR と LPCSTR は、char * または const char * の違いです。
かんたんにゆーと、受け取った側で編集可能かそうでないかってことです。
CHAR(ま、通常の文字列) と TCHAR(ワイド文字列) の違いとは別物です。

#という見解で間違ってないと思うけどな・・・

投稿時間:06/01/05(Thu) 18:38
投稿者名:たまみ
URL :
タイトル:Re^2: プラグインSDKのTCHAR
お返事ありがとうございます。

LPSTR と LPCSTR の違いは理解しているつもりなのですが、
問題は BeckyApi.h で LPCSTR ではなく LPCTSTR が使われていることにあります。

よくよく考えてみたら、GetProcAddress()で取得するアドレスの指す関数が
UNICODEかMBCSか(LPCWSTRかLPCSTRか)判断できるわけないので、
そもそも LPCTSTR というのがおかしいですね。
(きっとMBCS(LPCSTR)専用なんだと思います)

プラグインをUNICODEで作る上では問題になると思うので、願わくば BeckyApi.h の
LPCTSTR は LPCSTR に置換されて欲しいなと思うものです。
(もともと見ていたファイルのバージョンはわかりませんが、今RimArtsのホームページから
ダウンロードした B2PinSDK-22400.zip も同じ問題を抱えたままでした)

半ば自己完結してしまいました。お騒がせいたしましたm(_ _)m



- Web Forum -