[表示 : 全て 最新50 1-99 101- 201- 301- 401- 2chのread.cgiへ]
Update time : 06/03 10:43 / Filesize : 104 KB / Number-of Response : 455
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Win32API質問箱 Build57



1 名前:デフォルトの名無しさん mailto:age [2007/09/08(土) 21:41:22 ]
スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやお姉さんたちが答えてくれるかも。

過去スレ、関連リンクは>>2-5くらい。

■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。英語版(msdn.microsoft.com/library/)の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで


92 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 11:59:03 ]
SJISベースのアプリ(のGUIなコントローラ)にUNICODEのファイル名を突っ込むと
当然変換時に欠落した文字がでてファイル操作等に失敗する可能性が出てきますが
そういうのをなるべく小手先で対処する方法はないですか?

1. Unicodeなテキストをメモリ上にロード
2. 1.のメモリデータをSJISなAPIやコントローラ(ListBox等)に突っ込む
3. 2.のデータを取り出してファイル操作 <- ここでエラー

例えば1.2.の間でファイル名がSJISに変換不可と判明したら8.3形式にするといったことをやれば出来るのかなと漠然と考えていますが・・・

93 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 12:22:44 ]
それでいいんじゃね

94 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 12:45:12 ]
ハードリンクを作るとか

95 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 18:57:12 ]
>>92
ファイル名だけ対応しているソフトは結構あるが;
パス名に対応していないソフトが多いですね。
ぜひ、がんばって対応してください。
UTF-8 に対応したソフトも増えてきたので、内部で UTF-8 でやったどうですか?

96 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 19:00:24 ]
やったどう

97 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 19:45:02 ]
殺した後に姦淫してやる

98 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 21:26:37 ]
( ゚д゚ )なぜ犯した

99 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 21:31:08 ]
復活させるため

100 名前:デフォルトの名無しさん [2007/09/11(火) 21:31:18 ]
そこに穴があるからさ!



101 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 22:46:57 ]
特定のコントロールに文字を送りたいんだけどどうしたらいい?

102 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 22:49:06 ]
そんな簡単な事も分からんのか死ね

103 名前:デフォルトの名無しさん [2007/09/11(火) 22:50:40 ]
おまえにはふたつあるが
おれにはひとつしかないじゃないか
しかもぼうがひとつおおいし…

ありゃ2か…
ありゃりゃ3か…orz

104 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 22:50:51 ]
どんな風に渡すかにもよる
単純にSetWindowTextで済むなら楽だが

105 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 23:02:27 ]
ゴメ

特定のコントロールに対してVBAのSendkeysの様に文字を送りたかったんだ。

sendkeyじゃ誰かが触ってアクティブフォームが変わったら送り先が変わってしまうので、
送り先を指定してkeyを送りたい。

106 名前:デフォルトの名無しさん mailto:sage [2007/09/11(火) 23:22:15 ]
ウィンドウ指定してWM_KEYDOWNでいいんじゃねーの

107 名前:デフォルトの名無しさん [2007/09/12(水) 00:51:33 ]
初歩的な質問で申し訳ないのですが、タイトルバーの横にあるMINBUTTONやCLOSE BUTTONって、
どうやってメッセージを捕まえるのでしょうか?ご教授よろしくお願いします。

108 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 00:53:48 ]
>>107
GetMessage
WM_SIZE
WM_CLOSE

109 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 00:59:38 ]
WM_SYSCOMMAND

110 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 01:05:06 ]
>>108 >>109
ご教授ありがとうございます。
WM_SYSCOMMANDで欲しいメッセージを捕まえることができそうです。
ありがとうございました。



111 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 01:53:49 ]
作ってるアプリの機能がかなり増えてきて
コールバック関数がものすごく肥大化してきました。
これはやむを得ないことなんですかね?

112 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 01:56:04 ]
いいえ

113 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 01:59:36 ]
どうすりゃええのん

114 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 01:59:46 ]
例えばウィンドウプロシージャなら、
メッセージクラッカみたいに――あるいはそれを使って――
メッセージ毎に関数を分割するという手がある。

115 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 02:01:50 ]
茸っぽい
茸は文学ではない

116 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 02:07:32 ]
メッセージクラッカですか
そういうのがあるんですね
ありがとうございました

117 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 05:37:40 ]
デバイスコンテキストに対して、特定の座標の色の取得・設定はGetPixel, SetPixel(V)を使うしか方法はないですか?
速度が遅いので、他の方法を使いたいのですが。(TextOutとかはどうやって描いてるんだろう…

118 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 05:55:53 ]
>>117
↓読むと幸せになれるかもしれない
wisdom.sakura.ne.jp/system/winapi/win32/win121.html

ちょっとややこしいが

119 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 06:04:22 ]
>>118
ありがとうございます。
一旦CreateDIBSectionで作ったビットマップにBitBltしてコピーし、
そこで直接データを読み書きして、その後、元のデバイスコンテキストへBitBltして戻す、という方法が思いつきました。
早速書いてみます。

120 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 10:23:20 ]
現在、汎用的な関数として、
GetLastErrorからFormatMessage, MessageBoxへの連携処理を考えています。

ここのGetLastErrorで返されるエラー値なんですけど、
この値からメッセージの分類(クリティカル・警告・情報...etc)とか
判別できるものでしょうか?

できるのであれば、その手法を教えていただけませんか?
ちなみに、皆さんはどうしています?




121 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 14:14:48 ]
思想を改める必要がある

GetLastErrorはあくまで補助的なものであって、本来やりたかった処理が失敗したことを通知することが最優先。
FormatMessageで得られるエラー原因は追加で表示してユーザーの参考にさせる程度が関の山。

122 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 14:34:55 ]
HRESULTはビット毎に意味があるけど、GetLastErrorはビット29以外は
見た覚えがないな。

123 名前:120 mailto:sage [2007/09/12(水) 14:57:04 ]
>>121
なるほど、割り切って内容だけを表示させることに勤めます。

>>122
HRESULTの資料を見て、>>120を考えてみたんですが、
ダメそうです。

お騒がせしました。

124 名前:デフォルトの名無しさん [2007/09/12(水) 21:25:05 ]
hMenu = LoadMenu(NULL, _T("IDR_MENU"));
SetMenu(hWnd, hMenu);

MENUITEMINFO menuItemInfo;

ZeroMemory(&menuItemInfo, sizeof(menuItemInfo));
menuItemInfo.cbSize = sizeof(menuItemInfo);
menuItemInfo.fMask = MIIM_TYPE;
menuItemInfo.fType = MFT_STRING;
menuItemInfo.dwItemData = TEXT("追加された");

//InsertMenu(hMenu, 15, MF_BYCOMMAND, 16, _T("追加された"));
InsertMenuItem(hMenu, 15, FALSE, &menuItemInfo);

DrawMenuBar(hWnd);

「追加された」が追加されず、セパレータになるんですが、どうしてですか?
InsertMenu の方だとちゃんと追加されます。

WinXP SP2
VC++2005


125 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 21:36:43 ]
dwItemData = TEXT("追加された");  は
dwTypeData = TEXT("追加された");
じゃないかな ぱっとみだから間違ってたらすまんこ


126 名前:124 [2007/09/12(水) 21:41:50 ]
>>125
ありがとうございました。
全然、気づかなかったです。名前が似てるから・・・
無事に、追加されました。


127 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 00:48:15 ]
とある人力検索にて

Q:Web2.0が遺した物って何ですか?

A:DoCoMo2.0です

128 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 01:51:52 ]
あるソフトのウィンドウ(syslistview32)にコンテキストメニュー
を表示しようと思い、

PostMessage(hWnd, OS.WM_KEYDOWN, VK_APP, 0);
PostMessage(hWnd, OS.WM_KEYUP, VK_APP, 0);

を実行しましたが何も反応がありませんでした。

別のソフトであればコンテキストメニューが表示されます。
やり方が間違っているのでしょうか?
ちなみに右クリックした瞬間(押し下げた瞬間)にメニューが
出るソフトと、クリックし終わった瞬間(押し上げた瞬間)に
出るソフトの両方があるんですね。


129 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 02:08:58 ]
単純にそのソフトがそのキーを拾ってないだけじゃないの

130 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 02:10:40 ]
WM_CONTEXTMENUを送ったらどうだろう?



131 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 09:49:52 ]
spyを使おうぜ

132 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 11:47:02 ]
>>130

できました!!

WM_CONTEXTMENUはコンテキストメニューが開くときに
自動的に送信されているんだと誤解してました

>>131
spyってwinspectorのことですか?

133 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 12:00:34 ]
ウザイからどっか行って

134 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 16:43:29 ]
どうしてもわからんので教えてください!

libpngとlibjpegを使っているのですが
片方ずつ使う分には問題ないのですが両方のlibを使おうとすると
LINK:2005エラーが出てしまいます。最初ランタイムが違うのかと
libの方を確認してビルドし直したりしたんですがどうやらそういう問題
ではなさそうです。何か解決法はあるのでしょか?

呼び出し方はこんな感じです。
#ifdef _DEBUG
#pragma comment(lib, "libjpegd.lib")
#pragma comment(lib, "libpngd.lib")
#else
#pragma comment(lib, "libjpeg.lib")
#pragma comment(lib, "libpng.lib")
#endif

135 名前:134 mailto:sage [2007/09/13(木) 17:03:16 ]
Σ(・∀・ )勘違いでしたすみません解決しました><

136 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 22:17:50 ]
プログラムを動かしてるOSにないAPIを使ったらどんなことが起こるのでしょうか。
例えばWin9xでW系APIや、Win2000でuxthemeのAPIなどです。
その関数が実行されないだけとか、何かエラーが発生する、そもそも起動できないとか。
試す環境がないので聞いてみました。

137 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 22:25:17 ]
爆発する

138 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 22:38:32 ]
>>136
スタティックリンクならエントリポイントが見つからないとかなる
動的リンクなら実行されないかエラーになる

139 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 22:40:13 ]
ttp://www.uploda.org/uporg1016109.png
起動はする(CreateProcess == TRUE)けど、エントリーポイントに行く前にcsrss.exeが爆発させるので
ユーザー視点では起動しないのと同じ

140 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 22:55:22 ]
9xのW版APIはエントリポイントだけあるはず。
そして稀にMessageBoxWやTextOutWなど機能するものがある。



141 名前:デフォルトの名無しさん [2007/09/13(木) 22:55:24 ]
dllからアタッチしたプロセスIDやウインドウハンドルとか取得するには何を使えばいいんですか。
ヒントください。

142 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 22:58:50 ]
あたっちすれっどなんとかとか

143 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 23:08:56 ]
>>140
忘れてけどそういえばそうだった 単純に失敗を返すだけの実装になってるんだった
で、たいていRegisterClassで失敗して無言でWinMainを終える、と

144 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 23:16:57 ]
プログラミングWindowsで、RegisterCassExが失敗したら
MessageBoxで9x非対応というメッセージを表示して終了するコードを見て、
なるほどと思った。

145 名前:141 mailto:sage [2007/09/13(木) 23:19:59 ]
>>142
ありがとん
DWORD GetCurrentThreadId(VOID);を見つけました。

146 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 00:03:42 ]
>>140
MSLU使えば強制ANSI変換で一応動くはずだしな

147 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 00:07:00 ]
>>146
つい先日、MSLUの浮動小数点のバグではまった。

148 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 00:08:35 ]
だがすぐに抜け出した。

149 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 00:56:25 ]
そしてまたはまった。

150 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 01:07:53 ]
なんかエロい話だな



151 名前:デフォルトの名無しさん [2007/09/14(金) 02:56:13 ]
出して、入れて、出して、入れて、これがプログラムの基本です。

152 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 04:01:22 ]
SNEG?

153 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 05:09:26 ]
挿入が先だ。POPは後だ

154 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 05:14:05 ]
朝からinserterだのpush_backだのと

155 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 05:18:01 ]
Oh,Yes!Come on Fuck me!!

156 名前:デフォルトの名無しさん [2007/09/14(金) 07:10:43 ]
Yes,pussy

157 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 07:46:26 ]
Shell_NotifyIcon の uTimeout が10秒より短くしても無視される件、
突破する方法しりませんか?

3秒がいいんだけど。

158 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 07:55:35 ]
The system minimum and maximum timeout values are currently set at 10 seconds and 30 seconds, respectively.

159 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 08:21:35 ]
通知アイコン専用スレッド作っちゃえ。
Shell_NotifyIconがタイムアウトするのは、
別の重い処理が走っているという事だから、
焦らず待ってもいい気はするけどね。

160 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 17:33:22 ]
shit



161 名前:157 mailto:sage [2007/09/14(金) 18:13:00 ]
>>158
それは読んだ。レジストリとかで変更できるのかな。
まさかシステムのDLLにハードコードされてるのか??

>>159
szInfoにNULLを渡すと消せるみたいなので、自分でタイマ制御するかな。。。

162 名前:デフォルトの名無しさん [2007/09/14(金) 20:32:52 ]
もしスレ違いだったらすみません。

ウィンドウを複数表示させて(子ウィンドウなど)、
ひとつのウィンドウをドラッグして移動させたら、
他のウィンドウも一緒に移動するようなことってできないんですかね?
グループ化のようなことです。

163 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 21:06:13 ]
>>162
ハンドル保持してるんなら
WM_MOVEとかで設定したら?

164 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 21:25:23 ]
>>162
>>163はなしで
WM_MOVEは移動後に送られるもんだった


165 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 21:43:40 ]
WM_MOVING

166 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 23:39:20 ]
素朴な疑問です。
皆さんにとってTCHAR型は現役ですか?

typedef std::basic_string<TCHAR> tstring;
とか
#ifdef UNICODE
とか、
もうそんな時代じゃないのでしょうか?
コード量を増やし、可読性を下げる、ゴミ虫のような存在でしかないのでしょうか?

167 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 23:50:03 ]
TCHARで思い出したけど。
Win32APIのワイド文字はあくまでWCHARであり、wchar_tは違うよね。

168 名前:デフォルトの名無しさん mailto:sage [2007/09/14(金) 23:59:01 ]
俺はTCHARを現役にさせている。
使わないけど目の前にWindows 98マシンを置いている影響かも。

しかし、#ifdef UNICODEはメインのコード中には出現させない。
比較的ライブラリ的な部分で吸収するようにしている。

>>167
そうかもしれないけど、
でもきっとみんなごっちゃに扱っているよ。
少なくとも俺はそう。

169 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 00:02:43 ]
俺も現役だな。
文字列は LPCTSTR とか _T() で囲ってたりする。

ただ tstring も使ってはいるんだけれど、
サロゲートペアの問題により
TCHAR* 変数を ++ した所で次の文字を指す保証は無いと知って、
CharNext() を利用する CString の方が安全という事を最近知った。

170 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 00:07:36 ]
VC2005でプロジェクト作ってまずするのは、「マルチバイト文字セットを使用する」



171 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 00:20:17 ]
はい、>>166はゴミ虫のような存在でしかありません。

172 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 01:32:40 ]
> TCHAR* 変数を ++ した所で次の文字を指す保証は無いと知って、
どうして?

173 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 01:33:10 ]
ごめんサロゲートペアって書いてあるな

174 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 01:33:17 ]
>サロゲートペアの問題により

175 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 01:44:12 ]
漏れはTCHAR撲滅
STLでstd::string使うようにした
コードはUTF-8
API呼ぶときだけWCHARにして渡してる
戻り値も変換してから使う
無駄なこと考えなくて済むようになったので
プログラミングに専念出来るようになった

176 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 01:49:24 ]
std::stringにUTF-8を突っ込むとな?

177 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 01:56:34 ]
>>169
CharNextはサロゲートペア非対応って書いてあるけど。
blogs.msdn.com/michkap/archive/2005/01/14/352802.aspx
でも結合文字列に対応しているのは立派。

あと、tstring/CStringで、インクリメントして次の文字にならないと言えば、
サロゲートペアや結合文字列の前に、ANSI時のマルチバイト文字があるだろうに。

178 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 02:05:26 ]
>>169
サロゲートペアでなく、マルチバイトの問題のことを言っているのか?

現時点ではCharNextを使ってもサロゲートペアは扱えず、
IS_SURROGATE_PAIR
IS_HIGH_SURROGATE
IS_LOW_SURROGATE
というマクロを使って判定するしかないそうな

参考
ttp://slashdot.jp/articles/06/12/26/0059208.shtml

179 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 02:06:55 ]
かぶった...orz

180 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 02:44:17 ]
>>176
なんか問題あるの?



181 名前:169 mailto:sage [2007/09/15(土) 02:44:40 ]
>>177-178
うそん orz

182 名前:デフォルトの名無しさん [2007/09/15(土) 02:52:03 ]
質問です。
VB6 でファイルのプロパティ(バージョンや製品名など)を取得するのに
GetFileVersionInfo等を使っています。
ロケールIDをVerQueryValueで取得できたので、言語名をGetLocaleInfo(ロケールID, LOCALE_SENGCOUNTRY)で
取得すると、"Japan"という英語の文字列が返ってきました。
しかしシェルの「ファイルのプロパティ」で表示されるのは「日本語」や
「英語(米国)」など日本語の文字列です。
これを取得するにはどうしたらいいんでしょうか?

183 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 02:55:14 ]
ジャパーン♪

184 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 03:33:22 ]
FAR PASCALとかNEARって書いてあるコードをたまに
見かけますが
どういう意味があるんですか?

185 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 03:41:58 ]
16ビットの名残

186 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 10:31:59 ]
_stdcallとか_cdeclって書いてあるコードをたまに
見かけますが
どういう意味があるんですか?

187 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 10:37:18 ]
聞く前にドキュメント嫁

188 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 10:37:35 ]
ググれ

189 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 10:40:16 ]
ドキュメントなんてないし
ぐぐってもでないからきいてるんだよ
わかんないなら書き込むなよ

190 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 10:43:44 ]
すいません 調べたらなんとなくわかりました
スレ汚しすまそ



191 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 10:49:28 ]
>>189
死ね

192 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 11:00:09 ]
>>182
MSDNよく読めや、ボケが。

と言いたいところだが、これに関してはwinnls.hを直接読んだ方が遥かに手っ取り早い。
たぶん、必要なフラグは LOCALE_SNATIVELANGNAME だと思う。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<104KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef