ふらっとC#,C♯,C#(初心者用) Part67
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2010/12/16(木) 18:23:33「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。
ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からない場合など、勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。
なお、テンプレ2行目が読めない回答者は邪魔なので後述のC#相談室に移動して下さい。
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっとC#,C♯,C#(初心者用) Part66
http://hibari.2ch.net/test/read.cgi/tech/1290854247/
■関連スレ
C#, C♯, C#相談室 Part63
http://hibari.2ch.net/test/read.cgi/tech/1289733048/
VB.NET質問スレ(Part35)
http://hibari.2ch.net/test/read.cgi/tech/1284423653/
くだすれC++/CLI(初心者用)part2
http://pc12.2ch.net/test/read.cgi/tech/1268613679/
■備考
コードの量が多い場合は下記サイトを使うなどしたほうがいいかも
http://ideone.com/
コードを貼り付けてRun codeのチェックをはずしてsubmitボタンを押すと
コードを鯖側にアップして専用のアドレスが発行されます。
直接貼る場合は下記サイトなどを利用してhtmlエンコードした方が
インデントも残って見やすいです
http://kawama.jp/php/encode_html.php
0334デフォルトの名無しさん
2010/12/27(月) 03:32:42A側にメッセージ返すインターフェイスなりイベントもA側のアセンブリに書けばOK。
アセンブリの循環参照は避けれる。
あとは、双方向バインディングとかの出番。
0335デフォルトの名無しさん
2010/12/27(月) 03:49:01よく解らんが(´・ω・`)
例えばBがTCP通信しててデータ受け取ったよ的な通知とか
BがFormでボタン押されたよ的な通知とかはIBにイベント持たせればいいってことかね
0336デフォルトの名無しさん
2010/12/27(月) 03:52:52TCP通信ならイベントね。
Form なら、WPF のコマンドのバインディングがいいと思う。
0337デフォルトの名無しさん
2010/12/27(月) 03:57:48相互に依存って言ってたからお互いの複数のメソッドを利用しているように見えちゃった
0338デフォルトの名無しさん
2010/12/27(月) 04:14:36WPFじゃない場合はIAみたいなのを作るってこと?
>相互に依存って言ってたからお互いの複数のメソッドを利用しているように見えちゃった
そのつもりですた
0339デフォルトの名無しさん
2010/12/27(月) 08:04:47自作のアプリが、他の市販のアプリと同時に使うと、
市販のアプリを誤動作させてしまうようです。
まだ自分は初心者で、自分のやりたいことを調べてやってるだけで、
安全対策も何もしてないので、原因はこっちにあるのでしょう。
こういう場合、原因の突き止め方とか、他に影響を与えない安全対策とか
参考になるサイトとかあれば教えてください。
0340デフォルトの名無しさん
2010/12/27(月) 08:09:53選ぶのは言語使ってるができないのもあるww
まじワロタ、wwwひ
0341デフォルトの名無しさん
2010/12/27(月) 08:29:51大丈夫か?なんかへんだぞ
0342デフォルトの名無しさん
2010/12/27(月) 10:24:28何か特別な変なことをやっているんだろう。
一般的な対策とか原因なんかない。何も考えずに作っても普通はそんなことありえないんだから。
0343デフォルトの名無しさん
2010/12/27(月) 10:29:34習得が大変そうな感じがするので迷っています。
フォームでも結構満足していますがさらに
便利になったりするのでしょうか?(難しいのが楽に作れたり)
0344デフォルトの名無しさん
2010/12/27(月) 10:42:05結局は慣れだよ
0345デフォルトの名無しさん
2010/12/27(月) 10:43:14WPFは外観の自由度が高い。コントロールの見た目を変えようとして
WinFormsで大量のコードを書いた経験があるなら、そういうことはWPFの方が圧倒的に楽。
それとデータバインディングが強力。コントロールとデータの紐付けは全部バインディングで作れる。
WPF特有の部分は必要に応じて追々覚えていけば大したことない。
0346デフォルトの名無しさん
2010/12/27(月) 10:47:26確かにデザインはすごく楽
モッサリさえなくなればいいんだが・・・
0347デフォルトの名無しさん
2010/12/27(月) 11:03:590348デフォルトの名無しさん
2010/12/27(月) 11:05:58{
public string text = null;
}
test d = new test();
d.test = "test";
d = null;
こういう書き方でnullを入れる人をみた事があるけど、この場合のd.textはnullを入れた
時点で消滅するのかな?。
それとも
d.test = null;
d = null;
にしないとd.test の内容はすぐに消えない?
l
0349デフォルトの名無しさん
2010/12/27(月) 11:07:26だからってGC.Collect入れると余計に遅くなるよ
気にしても無駄
0350デフォルトの名無しさん
2010/12/27(月) 11:08:30アクセスしてみればいいw
0351デフォルトの名無しさん
2010/12/27(月) 11:09:56気にしない・放置が基本
0352デフォルトの名無しさん
2010/12/27(月) 11:12:28http://ideone.com/DHPdZ
0353348
2010/12/27(月) 11:15:36メモリ上からd=nullだけで全部消えるのかと少し期待したのですが残念
0354デフォルトの名無しさん
2010/12/27(月) 11:19:49あくまで参照を切り離しただけでGCはまだ持ってる可能性はあるよ
ただ、参照を切り離したので>>352を実行するとエラーになる
0355デフォルトの名無しさん
2010/12/27(月) 11:23:27リテラルはCLRが参照保持してるので絶対に消えない
0356デフォルトの名無しさん
2010/12/27(月) 13:26:270357デフォルトの名無しさん
2010/12/27(月) 13:28:34できるでしょ
でもシリアライズ用のクラスってpublicでいろいろ開放してないと使えなかったような
0358デフォルトの名無しさん
2010/12/27(月) 13:36:08かつ
読み書きのできるパブリックフィールドとプロパティだけだったと思うんだけど
嘘だったらごめん
0359デフォルトの名無しさん
2010/12/27(月) 13:41:58俺はインスタンス化しないとシリアライズできないと思ってるけど。
インスタンス化されたクラス?がよくわからん。
0360デフォルトの名無しさん
2010/12/27(月) 13:51:25あるクラスをシリアライズする場合に、プロパティにインターフェイスを継承している
項目をシリアライズしたいのです。
(Ex)
public class TextClass
{
public stirng Ex1 { get; set }
public int Ex2 { get; set; }
public IInterface { get; set; }
}
のようなクラスをシリアライズしたいのです。。
0361デフォルトの名無しさん
2010/12/27(月) 13:52:36public IInterfaceがとあるインターフェイスを継承したものを格納しています
0362デフォルトの名無しさん
2010/12/27(月) 13:54:41ありがとうございます。
複雑な外観・バインディング(データの同期?)
などをしたい時にWPFを勉強しようと思います
0363デフォルトの名無しさん
2010/12/27(月) 14:25:36インターフェースを格納したいって話?
0364デフォルトの名無しさん
2010/12/27(月) 14:31:35XmlSerializerは構築されるときにシリアライズ・デシリアライズするすべての型を知ってる必要がある
interfaceとかabstract classがメンバに含まれるなら、そのメンバが取り得るすべての型を教えておかないといけない
普通はXmlElement属性でそういうメンバにこういう型こういう型があり得るってことをマークする
属性ベースで静的に設定できない場合、XmlSerializerのコンストラクタ引数で指定する
> public IInterfaceがとあるインターフェイスを継承したものを格納しています
IInterface以外(だけ)を継承してたらびっくりだ
0365デフォルトの名無しさん
2010/12/27(月) 14:57:03>>364ありがとうございます。XmlElementは3.0からのサポートなので
2.0で開発している現在は使えれませんね;w;
コンストラクタの引数の方法で試してみたいと思います。
0366デフォルトの名無しさん
2010/12/27(月) 15:18:43> >>364ありがとうございます。XmlElementは3.0からのサポートなので
> 2.0で開発している現在は使えれませんね;w;
んなことない
XmlElement属性(XmlElementAttributeクラス)は.NET 1.0から存在する
0367デフォルトの名無しさん
2010/12/27(月) 15:22:430368デフォルトの名無しさん
2010/12/27(月) 16:11:200369デフォルトの名無しさん
2010/12/27(月) 16:11:520370デフォルトの名無しさん
2010/12/27(月) 16:56:41C/C++でいうところの関数ポインタだよ
0371デフォルトの名無しさん
2010/12/27(月) 17:22:450372デフォルトの名無しさん
2010/12/27(月) 18:19:180373デフォルトの名無しさん
2010/12/27(月) 18:20:18+とか-で登録削除可能なので違うといえば違うんだけどねw
0374デフォルトの名無しさん
2010/12/27(月) 18:27:01デリゲートは関数ポインタ+呼び出し先のインスタンスへのポインタ
0375デフォルトの名無しさん
2010/12/27(月) 20:41:13に含まれているSPUtility クラスを使ったプログラムをC#で作った場合、
Windows SharePoint Services 3.0をインストールしていないパソコンでも動きますか?
0376デフォルトの名無しさん
2010/12/27(月) 20:55:22チュートリアル : オブジェクトによるダイアログ ボックス情報の一括取得
ttp://msdn.microsoft.com/ja-jp/library/cakx2hdw.aspx
0377デフォルトの名無しさん
2010/12/27(月) 20:59:21SPUtilityクラスが含まれてるDLLはSharePoint Servicesに含まれてるんだろ?
動くわけないじゃん
当該DLLのローカルコピーを配布してしまえば動くかもしれないけど
おそらくライセンス違反(要確認)
0379デフォルトの名無しさん
2010/12/27(月) 22:03:280380デフォルトの名無しさん
2010/12/27(月) 22:38:48調べてるうちにWPFの勉強したくなりました。
XAMLは意外と馴染みやすかったので大丈夫そうです。
機能面がいまいち分からないのですが、
これ便利・かなり使うからやっとけって機能ありませんか??
0381デフォルトの名無しさん
2010/12/27(月) 23:06:17というわけでWPFスレへどうぞ
0382デフォルトの名無しさん
2010/12/27(月) 23:28:54{
presskey(VK_SPACE, 20);
startcap((int)Math.Ceiling(power * 360 / 100) + 3);
presskey(VK_SPACE, 20);
if (power >= 80)
{
startcap(175);
}
startcap(hidoffset);
presskey(VK_SPACE, 20);
}
↑にGetAsyncKeyState()を使用してCtrlを押している時はスペースを押さないという構文を入れたいのですが
short sw;
sw = GetAsyncKeyState(17);
if (sw == 0)
{
presskey(VK_SPACE, 20);
}
GetAsyncKeyState()使用宣言をした上でこれを入れても上手く行きません。
どなたか入れ方等のアドバイスを頂けませんでしょうか?全くのド素人なのでメチャクチャな事を言っていたらすみません。
0383デフォルトの名無しさん
2010/12/27(月) 23:37:28デバッグ確認が毎回出てうざいんだけど
無効に出来ませんか?
0384デフォルトの名無しさん
2010/12/27(月) 23:41:120385デフォルトの名無しさん
2010/12/27(月) 23:42:170386デフォルトの名無しさん
2010/12/27(月) 23:43:26http://dobon.net/vb/dotnet/form/keypreview.html
http://sourceforge.jp/projects/cs2h/svn/view/Tetris/Tetris/Form1.cs?view=markup&root=cs2h
0387デフォルトの名無しさん
2010/12/28(火) 01:13:50ページに入れたPanelオブジェクトをチェックボックスのONとOFFで表示/非表示を
JavaScriptで制御する作りを実装しました(仕様としてポストバックでのチェックはできません)
単にvisibleで制御しても出来ないため、Panelのstyle属性にdisplay:blockを埋め込み、とdisplay:noneと切り替えて
とりあえず表示と非表示の制御はできるようになったのですが、ボタンを押した時のイベントのコードビハインドで、
Panelオブジェクトが表示されているか、非表示かも取得したいのですが、どうにも上手くいきません
1.JavaScriptで処理実行時にsetAttributeも一緒に入れて、style属性のdisplayも切り替える→チェックできず
2.いっそPanelのvisibleプロパティを無理やり取ってみる→そもそも設定していないので全てtrueで返ってくる
3.style.valueを取得してチェックしてみる→aspx側で設定した値しか返ってこない(1と類似)
と、色々やってみたのですが…。
無知で申し訳ないのですが、どなたか上手い方法を知っていらっしゃる方いますでしょうか?
Panelを使っていることがそもそも間違っているのかもわかりません
スレ違いでしたら申し訳ありませんが、宜しくお願いします
0388デフォルトの名無しさん
2010/12/28(火) 07:06:21コントロールじゃないただのhiddenを置いても、Request.Paramsに反映されるはず
どのDOMイベント/JavaScript関数で処理するのがベストかは忘れたんで自分で調べてね
0389デフォルトの名無しさん
2010/12/28(火) 12:06:01正規表現を使う場合は、最初にヒットしたものを置換というのは調べればできそうなのですが、
使わない場合はたとえば
string s = "ccc\naaa\nbbb\naaa\n";
s = s.Replace("aaa","ddd");
とやると両方のaaaが置換されてしまいます。
これを最初のaaaや2番目のaaaだけ置換するというのはできないでしょうか?
0390デフォルトの名無しさん
2010/12/28(火) 12:07:42いきなり置き換えじゃなく検索して列挙した後お好きなように調理すればいい
0391デフォルトの名無しさん
2010/12/28(火) 12:10:44あーーーーなるほど!
ReplaceじゃなくてIndexOfでやればいいんですね。
ありがとうございます。
0392デフォルトの名無しさん
2010/12/28(火) 13:19:00Ver1,2,3,4…としたいです。それぞれのバージョンは残していきたいです。
今のところ既存のフォルダをコピーしてフォルダ名とプロジェクト名を変更していきながら作っていこうかと思っているのですが、
このような場合のスマートな方法があるなら、教えてください。
0393デフォルトの名無しさん
2010/12/28(火) 13:20:280395デフォルトの名無しさん
2010/12/28(火) 14:02:210396デフォルトの名無しさん
2010/12/28(火) 14:34:19{smartassembly} とういうソフトで、
難読化されたアセンブリをソースコードレベルに戻したいんですが
どうすればよいでしょうか?
また、解除できるなら、難読化解除を100パーセント防ぐにはどうしたらいいでしょうか?
0397デフォルトの名無しさん
2010/12/28(火) 15:00:560398デフォルトの名無しさん
2010/12/28(火) 15:35:10しかし、マルチスレッドを用いるプログラムや、インポートしたアセンブリ、
プラグイン等でも簡単にデバッグが行える
VisualStudioでコンパイルできることを想定した場合、その方法だと
実現できるでしょうか?
Reflector等で、メソッドやフィールドの難読化された名前は
見られてしまうのは仕方ないかもしれません。
結局有効なのは、上記のsmartassembly他と同様に、
実行速度を犠牲にし
メソッドの開始時点に不要なジャンプ命令を組み込むしかないのかもしれません
0399デフォルトの名無しさん
2010/12/28(火) 15:54:46重要な情報を隠すという意味ではローカルである限り、どんな暗号化でも完全にはならないし
0400デフォルトの名無しさん
2010/12/28(火) 17:02:34Reflectorや、spices.NET等のツールを用いて
IL以外のC#やVB等の言語で
メソッドの中身を容易に見れなくしたいのです。
例えばrefleectorであれば
"// This item is obfuscated and can not be translated."
が表示されるか、または例外を発生させるようにしたかったのです。
0401デフォルトの名無しさん
2010/12/28(火) 17:44:04参考になるサイトや、参考書などありましたら教えていただけたら幸いです。
0402デフォルトの名無しさん
2010/12/28(火) 17:45:13C#のAPI一覧とかのってるサイトあったら教えてください お願いします。
0403デフォルトの名無しさん
2010/12/28(火) 17:46:540404デフォルトの名無しさん
2010/12/28(火) 17:47:43C#とAPI(Win32API)との関係をよく分かってないだろ
0405デフォルトの名無しさん
2010/12/28(火) 18:07:55ここを参考にテキストボックス内へファイルのドラッグ&ドロップというのはできたのですが、
フォルダのドラッグ&ドロップで中身のファイル名を取得するというのがわかりません。
最終的にDragDropイベント・ハンドラ内の
string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);
この部分をフォルダがドロップされてもファイルがドロップされても取得できるようにしたいのですが
どうしたらいいでしょうか?
System.IO.Directory.Exists(d))で分岐させればいいのかなとは思うのですが、
e.Effect = DragDropEffects.Copy;
この部分にどうつなげるかわかりません。
0406デフォルトの名無しさん
2010/12/28(火) 18:08:06MenuItemクラスの Shortcutプロパティの値は、
Shortcut列挙体のメンバー以外は指定できないのでしょうか?
0407デフォルトの名無しさん
2010/12/28(火) 18:12:31http://dobon.net/vb/dotnet/internet/usecredentials.html
.NETなら標準のコントロールやメソッドが用意されて簡単に作成できるかもしれませんが
開発期間に余裕があり、後々のことを考えると、
まずはHTTPの仕様などwebの基礎から勉強し、
.NETの基礎を@IT等のサイトで調べるのがいいかもしれません。
書籍なら"プログラミング.NET framework"や
"プログラミング Microsoft ASP.NET"が、私はまったく読んでませんがよく
お勧めとされているようです。
コードがそのままのっている本はその場限りで理解につながらないもしれません
その他、サンプルコード等は英語ですがcode project,source forge.net,koders.com,code plexが
あります。
http://www.pinvoke.net/等もwin32APIを使う上で参考になります。
また、googleのコード検索もかなり使えます。
0408デフォルトの名無しさん
2010/12/28(火) 18:24:18C#でWin32APIを使うには、dllを定義をしないといけないんだよ。
PInvokeてサイトをググって、サンプルコード探すのが速いかな。
ほかにマーシャリングって知識も必要かもしれない。
おれもよく分からないんだけど、その辺調べたら使えるようになった。
0409デフォルトの名無しさん
2010/12/28(火) 18:33:47private void _DragEnter(object sender, System.Windows.Forms.DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
e.Effect = DragDropEffects.Copy;
else
e.Effect = DragDropEffects.None;
}
private void _DragDrop(object sender, System.Windows.Forms.DragEventArgs e)
{
string[] strs = e.Data.GetData(DataFormats.FileDrop, false) as string[];
if (strs == null || strs.Length == 0)
{
return;
}
for (int c = 0; c < strs.Length; c++)
{
if (Directory.Exists(strs[c]))
{
string[] fileNames = Directory.GetFiles(strs[c]);
}
else
{
}
}
}
0410デフォルトの名無しさん
2010/12/28(火) 18:57:29できるかどうか不明ですが
public Form1()
{
InitializeComponent();
this.KeyPreview = true;
shortCutkey = Keys.A;
menuitem.Text = "A";
menuitem.Shortcut = Shortcut.F1;
menuitem.Click += new EventHandler(menuitem_Click);
MainMenu ms = new MainMenu();
ms.MenuItems.Add(menuitem);
this.Menu = ms;
}
MenuItem menuitem = new MenuItem();
Keys shortCutkey = Keys.None;
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if (shortCutkey != Keys.None &&
shortCutkey == keyData)
{
menuitem_Click(menuitem, new EventArgs());
}
return base.ProcessCmdKey(ref msg, keyData);
}
0411デフォルトの名無しさん
2010/12/28(火) 21:33:00位置を測定するプログラムを書いています.
現在接続中の無線の強度を獲得することは出来たのですが,
接続していない他の無線の強度の獲得の仕方がわかりません.
別のところに繋ぎ変えないでやるという制約がありますが,どうでしょうか.
よろしくお願いします.
0412デフォルトの名無しさん
2010/12/28(火) 21:39:50byte配列に格納したwavデータをPlaySoundで再生してたんですが、
☆PlaySound(wavData.wavVolChange(bytes, vol), 0, SND_MEMORY | SND_SYNC);
PlaySoundだと再生と停止は出来ても、一時停止ができないことがわかりました。
しかし、一時停止可能な再生方法を調べてみても、やり方がさっぱりわかりません。
もしもbyte配列のwavデータを再生、停止、一時停止可能な再生方法をご存知の方がいましたら、
この卑しい豚に助言というエサをお与えください。
0413デフォルトの名無しさん
2010/12/28(火) 21:48:04できました!!ありがとうございます!!!
0414デフォルトの名無しさん
2010/12/28(火) 21:50:270415デフォルトの名無しさん
2010/12/28(火) 21:51:390416デフォルトの名無しさん
2010/12/28(火) 21:54:520417デフォルトの名無しさん
2010/12/28(火) 21:57:16つまりどういうことだ?
0418デフォルトの名無しさん
2010/12/28(火) 22:12:260419デフォルトの名無しさん
2010/12/28(火) 22:15:03DirectAudio
XAudio
ActiveXのWMP
WPFのMediaElement(一番簡単)
0420デフォルトの名無しさん
2010/12/28(火) 22:16:500421デフォルトの名無しさん
2010/12/28(火) 22:28:40ありがとうございます
下から試してみます
0422デフォルトの名無しさん
2010/12/28(火) 23:38:070423デフォルトの名無しさん
2010/12/29(水) 00:11:01イベントハンドラを複数登録した場合の実行順は未定義だと思います。
という事はカスタムコントロールではイベント拾っちゃダメですか?
例えば
TextBoxを継承し、Validatingイベントで大文字小文字、全角文字の有無、
文字数などの情報を自身のPublicプロパティにセットする
(利用者側がValidating時に判断材料として使う。)
という設計もダメですよね
OnValidating使えという話だとは思いますが、
グリッドの列やタブページ等、それが通用しないコントロールもあると思いまして。
0424デフォルトの名無しさん
2010/12/29(水) 00:20:150425デフォルトの名無しさん
2010/12/29(水) 00:27:04別に継承後の設計なんだから自分の好きなように
0426デフォルトの名無しさん
2010/12/29(水) 02:28:33可能ならばそうしたいところです
>>425
悩みますね、もう少し調べてみます。
0427デフォルトの名無しさん
2010/12/29(水) 02:39:45そういう約束が通じないような、不特定多数が使うちゃんとしたコントロールなら、
出来合いのコントロールの継承なんてやるべきじゃない
0428デフォルトの名無しさん
2010/12/29(水) 03:07:23ttp://social.msdn.microsoft.com/Forums/ja-JP/csharpgeneralja/thread/28b87b7c-b408-4b50-8290-d552f39e945f
0429デフォルトの名無しさん
2010/12/29(水) 03:16:44サーバAのWeb.ConfigにはmaxRequestLengthの記載をしている(2MBの設定)
サーバBのWeb.ConfigにはmaxRequestLengthの記載をしていない(既定値4MBの設定だという認識)
↓
サーバAでの処理でサーバBを通してCSVデータを出力する処理を実装
少量データでは問題ないが、数千件のデータを出力しようとするとエラーになる
試しにサーバBのWeb.ConfigにmaxRequestLengthの記載をすると正常終了する
正常終了した後でCSVデータのファイルサイズを見ると、2MBにも満たない
・何故サーバBにmaxRequestLengthを記載すると正常終了するのかわからない。既定値の4MBでは?
・何故出力したCSVデータサイズがサーバAで設定した2MB以下なのにエラーになるかわからない。ファイルサイズは関係ない?
処理はできたのですが理由がわからず悩んでいます・・・
どなたか馬鹿にでもわかるように教えていただけないでしょうか?
0430デフォルトの名無しさん
2010/12/29(水) 03:42:00「サーバAでの処理でサーバBを通してCSVデータを出力」
意味不明なので、日本語を見直してください。
web.configにmaxRequestLengthを設定しないときのMaxRequestLengthの
値を確認しましたか?
あなたの出力したCSVのサイズはどうでもよくて、maxRequestLengthは
Webサーバに対するHTTPリクエストのbodyサイズだと思いますが、
HTTPリクエストはどんな内容ですか?
0431デフォルトの名無しさん
2010/12/29(水) 10:30:260432デフォルトの名無しさん
2010/12/29(水) 10:48:16TextBox1に振り分けたいアイテムを改行ごとに入力していき、
ボタンひとつでTextBox2,TextBox3にランダムに振り分けていくのですが、
奇数のときの対処も含め教えてください。
0433デフォルトの名無しさん
2010/12/29(水) 10:50:13何を言いたいのか・・・
■ このスレッドは過去ログ倉庫に格納されています