1 名前:デフォルトの名無しさん mailto:sage [2009/09/21(月) 17:41:44 ] このスレッドは 「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。 ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、 勇気をもって書き込んでください。 内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。 >>980 を踏んだ人は新スレを建てて下さい。 >>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 前スレ ふらっとC#,C♯,C#(初心者用) Part44 pc12.2ch.net/test/read.cgi/tech/1251439041/
552 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 22:08:41 ] >>545 なら問題ないんじゃない? C#やりたてのころに痛い目にあったことが1回だけあったけど、何かはど忘れしちゃった。 明日まで覚えていたら会社のSVN覗いてみるわ。
553 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 22:26:39 ] コンストラクタはインスタンスの初期化 LoadはFormの読込み Shownは表示後 ちゃんと役割があるんだからそれぞれに書いた方がいいと思う
554 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 22:33:17 ] LoadはVBの名残みたいなもん
555 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 22:38:56 ] そんなことはない FormがShowされるときにすべき処理はLoadに書くべき コンストラクタはあくまでインスタンスの初期化処理だけのほうがいい
556 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 22:51:23 ] >>553-555 正直、どれもよくわからん俺様ロジックにしか聞こえない。 そんなことはない、というなら聞くが、じゃあ結局>>536 の質問には何と答えるんの? っていうか、そういう意味論にこだわるなら、設定値を読み込んで適用するような処理は InitializecComponentsの後が一番適切に思えるが。
557 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 23:00:30 ] > 正直、どれもよくわからん俺様ロジックにしか聞こえない。 イベントドリブン全否定? 俺様ロジックの俺様というのはC#開発者のこと言ってるんだよな?
558 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 23:17:49 ] >>557 日本語読める? だからね、一般論として、コードは意味的に適切なタイミングで 実行されるように書くべき、というのはその通りだけども、 じゃあ設定を読み込んで反映するのに適切なタイミングっていつだっての。 そんなもの、答えなんかないだろう。 「設定を読み込んで反映すべきタイミング」の意味を与えられたイベントなんて存在しないのだから。 イベントの意味なんかにこだわりすぎると、結局そんな処理なんかどこにも書くべきでない、 って結論にならざるをえない。
559 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 23:37:07 ] >>558 あなたの言ってることの方がよっぽど俺様ロジックに聞こえるけど コンストラクタはインスタンスが生成される瞬間に実行され、 インスタンスの初期化のための引数を渡す機能を持っている コンストラクタが一つなら、その設定やらに渡す引数も一緒に渡してやれば良いけど そんなやり方推奨する人どのくらいいるだろうね
560 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 23:42:15 ] public Form1() : this(null)とか使おうよ
561 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 00:08:53 ] >>560 ごめん。どっかいっててくれるかい?
562 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 00:30:17 ]
563 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 00:30:38 ] Formを継承して「設定を読み込んで反映すべきタイミングのイベント」を追加する
564 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 00:35:18 ] そう言うようなことは普通にやるけど、「どのタイミングが最適か」って答えは出ないんだよね。
565 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 01:03:08 ] >>559 結局どうすべきだと言いたいの? というかね、コンストラクタが多重定義したい場合で、 かつどのコンストラクタにも共通する処理がある場合は、 どのコンストラクタからも特定の一つの別のコンストラクタを呼ぶようにするか、 共通部分をメソッドに括り出して呼ぶようにするでしょ。 それを忘れたらどうするのかって? それはただの「バグ」であって、そんなケースを槍玉に挙げてなんの意味があるのよ。
566 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 01:04:10 ] 横からその問題だけに絞って考えると、感覚的にはファイル アクセスなら Load かなぁ。 設定ファイルなら…んー、コンストラクタでもぎりぎりアリか。
567 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 02:42:08 ] 俺ならそもそもFormのインスタンス生成前に読んじゃうかなあ 多重起動チェック→設定読む→Application.Runみたいな流れ 設定にもよるけど
568 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 10:09:37 ] まあ、ハンドル云々というのでなければコンストラクタでいいと思う。
569 名前:デフォルトの名無しさん [2009/10/05(月) 14:23:18 ] 「List<string> s 」に入ってる文字をlistboxに表示したいです。 listBox1.Items.Add(s); とすると(コレクション)と表示されてしまいます。
570 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 14:30:21 ] ・AddRangeする ・DataSourceに設定する
571 名前:デフォルトの名無しさん [2009/10/05(月) 15:16:32 ] 下記で出来ました。 string[] ss = new string[s.Count]; for (i = 0; i < s.Count; i++) { ss[i] = files[i]; } listBox1.Items.AddRange(ss); 一度で出来ないのですね。 ありがとうございました。
572 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 15:23:57 ] AddRange使って一発でやりたいならToArray使えばいいじゃない
573 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 15:26:07 ] あとDataSourceなら listBox1.DataSource = s; だけだし。
574 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:13:19 ] 自分の実力が足りないだけなのに言語のせいにされたらたまらんわ。
575 名前:デフォルトの名無しさん [2009/10/05(月) 20:35:38 ] おまえらどんだけ被害妄想wwww
576 名前:デフォルトの名無しさん [2009/10/05(月) 20:57:24 ] ディスプレイから女の子を救い出すプログラムをC#で移植してます。 C#では無理なんでしょうか。VBではうまくいったんですけど・・・
577 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:02:52 ] どこが動かないのか詳しく。質問が大雑把過ぎて問題がわからない。
578 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:10:59 ] 美少女ゲームの彼女をリア
579 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:22:21 ] では将軍様、そのディスプレイから女の子を追い出してください
580 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:26:51 ] 全財産はたいてもいいから俺によこせ
581 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:32:41 ] WinXP Pro SP3, VS2008 sp1, .net 3.5 sp1での質問です。 言語はC#を利用しており、COMコンポーネントの開発を行っています。 下記のような簡単なクラスを作成し、RegSvr32.exeを実行したところ、下記のようなエラーが発生しました。 このようなエラーが発生した場合の対処法と原因について教えていただけないでしょうか? よろしくお願いいたします。 ------作成したクラス------- using System; using System.Runtime.InteropServices; using System.Text; namespace Test { [ClassInterface(ClassInterfaceType.None)] [ProgId("Test.Test")] [Guid("00BB6C80-C01D-4D64-A66B-F5D847480B09")] public class Test { public string Test(string s, int m, int n) { return "abc"; } } } --------------------------- ------[[エラー]]----------- .\Test.dll は読み込まれましたが、DllRegisterServer エントリ ポイントが見つかりませんでした。 このファイルが登録されていない可能性があります。
582 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:36:30 ] .NETのアセンブリの場合regsvr32じゃなくてregasm使う
583 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:04:48 ] Tlbexp.exe
584 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 17:03:58 ] プロセスの一覧で、引数を知るにはどうしたらよいですか? Notepadを複数起動していて、a.txtとb.txtを開いているときに、a.txtのほうのNotepadのプロセスを取得して終了したいです。 System.Diagnostics.Process[] ps = System.Diagnostics.Process.GetProcessesByName("Notepad"); で引数なしなら取得できます。 System.Diagnostics.Process[] ps = System.Diagnostics.Process.GetProcesses(); で、プロセスの一覧はできます。 デバッグでどちらを見ても、ファイル名が見当たらないのです。 探し方が悪いのかもしれません。 ご指摘お願いします。
585 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 17:12:54 ] WMI使ってWin32_ProcessのCommandLineプロパティ取得するのが手っ取り早い けどファイルを開くで開いた場合を気にしなくて良いの?
586 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 17:19:14 ] WebRequest/WebResponse って最初に呼び出すときに結構時間がかかります? 数秒〜数十秒くらい
587 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 17:20:22 ] Win32_ProcessのCommandLineプロパティで、 "C:\WINDOWS\system32\NOTEPAD.EXE" C:\a.txt "C:\WINDOWS\system32\NOTEPAD.EXE" C:\b.txt は取得できました。 これを終了するのって、どうするんですか? それぞれのプロセスの個別の取得方法がわからないです。 NOTEPADのプロセスは取得できるけど、それだとaとbを区別できないし。 ファイルを開くで開く場合は、とりあえずいまは関係なしです。
588 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 17:24:57 ] >>587 強制終了させるなら、目的の引数を持ってるWin32_ProcessのTerminateメソッドでいい 内容変更時に保存ダイアログが欲しいなら、Win32_ProcessのProcessIdを使ってProcess.GetProcessByIdしてCloseMainWindow
589 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 19:35:56 ] >>588 なんとなくできたっぽいです。 ありがとうございました。
590 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 22:42:55 ] >>586 kakikukekou.blog83.fc2.com/blog-entry-517.html
591 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 22:47:32 ] >>586 WPADやなんやでネットワークの応答速度によって時間が掛かる可能性はあるね
592 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 23:37:29 ] >>586 数十秒もかからないけど 5秒ぐらいはかかってるかな
593 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 08:58:18 ] 非同期処理ってマルチスレッドってことなんでしょうか?
594 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 09:07:37 ] 基本的にはそう スレッドじゃなくてプロセスだったりするかも知れないが メッセージ使った擬似非同期とかな
595 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 09:42:23 ] ありがとうございます
596 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 12:11:48 ] 文字列中の \x28 などのエスケープ文字(?)を ( などに変換するのは それぞれのエスケープ文字について一つ一つ string.replace などで置き換えるしかないのでしょうか?
597 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 12:34:47 ] ソース上の文字列リテラルを置換したいのか、実行時に変換したいのか まあString.Replaceってとこみると実行時の変換なんだろうけど エスケープの方法なんて言語次第だから特にライブラリには存在してない Regex.ReplaceでMatchEvaluator使うのが楽だろうねー
598 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:10:36 ] string[] files = Directory.GetFiles(@"C:\Documents and Settings\username\Local Settings\Temporary Internet Files\", "*.jpg"); で空なのはどうしたら取得できますか?
599 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 15:06:24 ] >>598 実際そこにファイルがないから
600 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 15:11:55 ] どこにあるんですか? 調べたら、 その下に、Content.IE5フォルダがあるらしいので、SearchOption.AllDirectories としても見つけられませんでした。
601 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 15:42:13 ] エスパーさんお願いします
602 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 15:44:11 ] そこには無いんだよ
603 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:04:13 ] 隠しフォルダの中にある隠しフォルダを探したいってことでしょ Content.IE5の中には、さらにランダムな名前の隠しフォルダがたくさんあって、 ネットから取得したファイルの本体はそのランダムなフォルダの中に分散して格納してある。 何がどこにあるかはindex.datだったかに書いてある。
604 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:09:26 ] delphi s string; SetLength(s, 64); c# string s; サイズを指定するにはどうするんでしょうか?
605 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:12:06 ] サイズを指定する必要はないんじゃね?
606 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:13:58 ] Stringは変更できないのでそういうことはできません。 そもそも変更不可なので長さを伸ばすのは意味がありません。StringBuilderなどを使います。 長さを縮めるというか部分を切り出した新しい文字列を作るのはString.SubstringやString.Removeで可能です。
607 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:16:19 ] base64とかで必要なんです。
608 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:20:22 ] StringBuilder使えばいいじゃない
609 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:21:06 ] つーかencodeing気にしなくちゃならんし、byte[]じゃだめなのか
610 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:21:44 ] 何が必要なのよ?
611 名前:604 mailto:sage [2009/10/07(水) 16:23:20 ] d。やりたいことはStringBuilderで出来そうです。 ありがとうございました。
612 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:24:09 ] base64は.NETの標準機能でサポートされてるけど
613 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:53:28 ] www.atmarkit.co.jp/fdotnet/vblab/uiframework_02/uiframework_02_01.html ここのソース貼り付けて実行したらWPFだとちゃんと動くけどSilverlightだと動かない んですけどなぜなんです?
614 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:55:19 ] 試用なんだぜ
615 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 18:10:55 ] >>603 Content.IE5フォルダの下に30JAKIJ7みたいなフォルダがあることはわかってます。 隠しフォルダのなかのファイルを再帰的に列挙するにはどうしたらよいですか?
616 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 18:37:01 ] 3番目にSearchOption.AllDirectoriesつけたら?
617 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 18:52:44 ] >>616 SearchOption.AllDirectoriesは600でもう試しました。
618 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 19:00:03 ] あのさー こっちは実際に動かして出ることを確認してレスしてんだよ エクスプローラで見るとそこにちゃんとあるのか? 環境は? IEのオプションでもそこに設定してあるか?
619 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 19:01:47 ] 実体が無いんだろ
620 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 19:28:10 ] >>618 失礼しました。 あらためてもういちどトライしたらできました。 すみません。ありがとうございました。
621 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 22:57:34 ] しーね
622 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 00:33:44 ] 試してなかったのか試したつもりで見すってたのか どっちにしろきちんと試さんと自分が困るだけだよ。
623 名前:デフォルトの名無しさん [2009/10/08(木) 01:29:24 ] >>618 ちゃんとこのスレにもまともな回答者がいたんですね。 尊敬します。これからも初心者を見捨てずお願いします。
624 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 05:31:46 ] いままでまともな解答者がいないと思ってたのに質問してたのか 変なの
625 名前:デフォルトの名無しさん [2009/10/08(木) 07:44:34 ] リストボックスにアイテム追加して水平スクロールが出たとき、 水平方向の一番後ろを表示する方法を教えてください
626 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 09:56:06 ] >>625 スクロールバーが出たときに一番後ろを表示すればいい
627 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 09:56:54 ] >>625 ヒント:マウスホイール
628 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 12:11:20 ] リストボックスに水平スクロールバーって出せたっけ?
629 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 15:00:48 ] 普通に出せる
630 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 15:11:33 ] ActiveX 経由で Windows Media Plyaer を使おうと思います。 _player = new AxWindowsMediaPlayer; _player.uiMode = "none"; とすると2行目でエラーが発生します。 まだ、ActiveX コントロールが生成されてないからと思います。 いまは、タイマーで __player.Created を監視して、 true になるのを待つという方法で回避していますが、 ActiveX コントロールが生成されたというイベントはないでしょうか?
631 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 15:25:58 ] FormのLoadイベントでならだいじょぶ
632 名前:デフォルトの名無しさん [2009/10/08(木) 19:06:07 ] 質問よろしいでしょうか? Windowsでコピー&ペーストのペースト先の情報(ファイル名やファイルのパス)を得るにはどうすればよいでしょうか? よろしくお願いします.
633 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 19:27:01 ] C# ファイル ドロップ でググる
634 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 19:30:35 ] ペーストされたアプリの側の自由だろ わかるわけがない
635 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 19:37:09 ] すみません.言葉足りずでした Windows上のアプリケーションを監視するソフトを考えているのですが, 例えば文字列をコピーしたものをパワーポイントに貼り付けた場合, 貼り付け先のパワーポイントのファイル名やファイルのパスを得たいという質問の内容です.
636 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 19:57:33 ] もし、張り付け先がファイルとか扱わないソフトだったら?
637 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 20:20:10 ] ペーストされたデータの扱いや、どのファイルを開いているかなどは完全にアプリケーションの責任 一般には対象のアプリのプログラムを意味論で解析でもしないかぎり不可能
638 名前:630 mailto:sage [2009/10/08(木) 20:26:33 ] >>631 レスありがとうございます。 Loadイベントなら大丈夫とは知りませんでした。 しかし、今回は、フォームデザイナで配置して使用している訳ではなく、 コード内でオブジェクトを作っているため、生成済み通知してくれる イベントがあればいいなと思い質問しました。
639 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 20:33:56 ] タイトルバーにファイルパスやファイル名を表示するタイプのソフトなら そっから取得できるか?すべてのソフトでどうなってるのか調べなきゃだが
640 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 20:47:45 ] 開いてるファイルとは全く無関係なところへのペーストだったら? どう頑張っても使いものにならないから諦めろ
641 名前:デフォルトの名無しさん [2009/10/09(金) 06:18:21 ] asp.netにて リピーターを使ってDataTableをDataSorceにDataBindしています。 DataColumnとしてcolTitle, colValue があるとします。 asp側のコードで <%# Eval("colTitle") %> <img src="./img/hoge.jpg"> <%# Eval("colValue") $#> として colTitleとcolValueの間に画像を表示しています。 colValueは文字列で、文字列が空もしくはnullのとき、 hoge.jpgを表示させないようにしたいのですが、 どうしたらいいのかさっぱりわかりません。 <% if ([条件]) { %> <% } %> とするとデータバインド後に一回しか 実行されませんし、 DataBoundイベントを使った場合、どう記述したらいいのか思いつきません。 どなたか教えていただけませんか?
642 名前:641 [2009/10/09(金) 06:20:08 ] <%# Eval("colValue") $#> 訂正→<%# Eval("colValue") #> なんで$マーク。
643 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 06:20:49 ] 職業的にもCでは使えない状況ですし。
644 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 10:44:22 ] お前の職業なんか知らぬ!
645 名前:641 mailto:sage [2009/10/09(金) 15:38:44 ] 自己解決。
646 名前:デフォルトの名無しさん [2009/10/09(金) 18:16:03 ] >>625 だれかお願いします。 言葉が足りませんでした。 マウス操作やキーボード操作無しで表示する方法です。
647 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 18:37:59 ] TopIndex
648 名前:デフォルトの名無しさん [2009/10/09(金) 22:48:47 ] 私はとうとう会社を辞めることにしました。 コボラーだった私が今春に社内SEに採用され、 急に未経験のC#をやれと言われてがむしゃらに勉強しましたが、 結局誰も協力はしてくれず1人で中途半端なシステムを作ってしまいました。 土日祝日もC#に明け暮れる毎日。 会社のために休みを完全に削ってがんばってきました。 ここでも何度か質問をし、回答をいただきました。 最終的には最悪な評価に終わりそうです。 私は会社を辞めます。 このスレの皆さんに代わってもらいたいです。 皆さんありがとうございました。 会社は離れてもC#は大切にします。
649 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 23:03:54 ] せっかくスポーツニュース見て浮かれてる所に 切ない文章を書くな
650 名前:デフォルトの名無しさん [2009/10/09(金) 23:10:49 ] 皆さんが質問に答えてくださったおかげで、 ユーザビリティーの高いシステムになりました。 本当は、使いやすいシステムなんです。 けど、納期が厳しすぎました。バグが出てしまったんです。 悔しいですが、誰もテストしてくれなかったし時間がありませんでした。 今となっては言い訳ですが…。 無理のあるスケジュールに振り回された自分を戒めつつ、 退職してしばらくC#の未消化技術を習得し、 明日につなげたいと思います。
651 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 23:43:35 ] うちで働かないか
652 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 00:03:03 ] C#そして.NETはおもしろい言語とフレームワークだから会社と関係なく楽しめるよ C#とは関係ないが納期についておもしろいスライドがあった www-06.ibm.com/software/jp/rational/events/rsc2009/pdf/k2_j.pdf