1 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 14:08:37 ] このスレッドは 「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。 ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、 勇気をもって書き込んでください。 内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。 >>980 を踏んだ人は新スレを建てて下さい。 >>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 前スレ ふらっとC#,C♯,C#(初心者用) Part39 pc12.2ch.net/test/read.cgi/tech/1237051173/
2 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 14:08:48 ] 2ならぬるぽ
3 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 14:08:52 ] -----関連スレ C#, C♯, C#相談室 Part51 pc11.2ch.net/test/read.cgi/tech/1233757615/ WPF(XAML,XBAP,.NET3.5)GUIプログラミング Part3 pc11.2ch.net/test/read.cgi/tech/1231506876/ 初心者のためのプログラミング言語ガイド Part14 pc11.2ch.net/test/read.cgi/tech/1235692421/ ----参考サイト www.google.co.jp/ msdn.microsoft.com/ja-jp/library/default.aspx homepage3.nifty.com/midori_no_bike/CS/ www.atmarkit.co.jp/fdotnet/dotnettips/index/index.html dobon.net/vb/dotnet/ jeanne.wankuma.com/tips/ www.labasp.net/CsharpNote/
4 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 14:09:11 ] >>2 クソカスがっ
5 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 14:10:49 ] >>前スレ994 では質問を変えます。 ファイルパスから正しい大文字小文字を区別したファイルパスを取得する方法を教えてください。 Path.GetFileName()はパスを分解して返してくるだけで実際のファイル名を返しません。
6 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 14:13:59 ] >>5 質問に答える前に実行環境聞かれてただろ? windowsなら > 正しい大文字小文字を区別したファイルパス そんなファイルパスは無いでFA
7 名前:5 mailto:sage [2009/04/13(月) 14:16:56 ] >>6 みたいな内容を理解せずに誤った事を答える人は無理して書く必要はありません。 ところで自己解決しましたので載せておきます。 dobon.net/vb/dotnet/file/filesystemwatcherbug.html dobon.net/vb/dotnet/file/getshortpath.html
8 名前:1 mailto:sage [2009/04/13(月) 14:19:29 ] そういう実装依存な解決をするのもどうなのかとは思う
9 名前:5 mailto:sage [2009/04/13(月) 14:21:02 ] 他に良い解決方法があるのですか?
10 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 14:24:02 ] 何が言いたいんだお前は ファイル名の大文字小文字を正しく取得したい でいいんじゃないのか? ちなみにWindows上では大文字小文字が違おうと同じファイル名として扱われる だからTEST.txtをtest.txtとして取得しても、問題なくファイルは開ける。 ということで大文字小文字が違おうと"実際のファイルパス"は"返ってきてる" ファイラーなどを作っていて、大文字小文字を正しく表示したい場合は、"実際のファイルパス"ではなく "大文字小文字が正しいファイルパス"と言わないと伝わらない あと、この問題は.NET Framework2.0で修正されてるようだが おまいは未だに1.1を使ってるのか?
11 名前:5 mailto:sage [2009/04/13(月) 14:26:22 ] >>10 みたいにただ感情的にスレを荒らす人は書く必要はありません 御自分でお調べになってください
12 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 14:27:12 ] 煽り合い宇宙の様相を呈してまいりました
13 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 14:28:22 ] おまいが1.1を使ってるかどうかなんてどうやって俺が調べろとw
14 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 14:33:50 ] >>7 あれ?おまえ貧乳じゃね?
15 名前:デフォルトの名無しさん [2009/04/13(月) 14:34:25 ] 痛すぎる5を見てかーちゃん泣きそうだよ
16 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 14:39:12 ] なにがなんでもっていうんなら、DirectoryInfoから取れば?
17 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 14:41:40 ] 5と一緒のプロジェクトでは働きたくないってことは把握した
18 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 14:56:36 ] ほんと何様のつもりなんだよな5はw
19 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 15:00:45 ] 俺様
20 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 15:06:26 ] 大文字小文字を区別するファイルシステムを持つコンピュータと共有するときどうなるんだろう
21 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 15:08:06 ] ワレワレハファイルシステム テイコウハムイミダ
22 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 15:13:56 ] Linuxのsamba上にdateコマンドの出力を書き込んだdate1.txtとDATE1.txtを用意してみた。 エクスプローラー上では2つとも見える。 が、どちらをメモ帳等開いてもdate1.txtの中身が表示され、DATE1.txtにはアクセスできない。 dirコマンドでもエクスプローラー同様、2つとも見える。 しかし、typeコマンド、cygwinのcatコマンドではどちらもdate1.txtしかアクセスできない。 総合すると、見えはするが片方しかアクセスできないということだな。 実用にはならんだろう。
23 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 15:19:46 ] >>22 スレ違いな上に何を試してるのかも結論も意味不明
24 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 15:22:14 ] >>23 20のレスに対して端的に実験をしてみただけなんだが。 まさかそんな突っ込みがはいるとは思わなかったよ。
25 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 15:33:12 ] それなら自前でファイルシステム作って直接マウントしてやってみてよ
26 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 15:39:37 ] >>25 お前は何が言いたいんだ?
27 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 15:47:55 ] IDの出ない板で煽り合い、楽しいのう
28 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 15:57:00 ] 自前のファイルシステムって・・・ OrenoFileSystemとか作れってことかい? まず仕様から決めないとな
29 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 15:57:29 ] >>22 がすごい参考になったのは俺だけ?
30 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 16:01:04 ] sambaで共有したディレクトリにそのOSから直接書き込むバカがいるってことはわかった。
31 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 16:26:40 ] Linux上は大文字小文字を判別する。Win上は判別しない。それだけ。
32 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 19:28:01 ] >>20 蛇足の蛇足になるが、WindowsにはPOSIXサブシステムとかあるから、 その気になれば、Windows機単独でも試せるぞ。
33 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 19:33:36 ] で、結局>>5 は何がやりたかったの?
34 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 20:11:42 ] 表示用か何かで、c:\program files→C:\Program Filesのように、 ディスク上に存在するとおりの名前を取得したいのではないかと推測。
35 名前:22 mailto:sage [2009/04/13(月) 20:25:52 ] アプリケーション設定の保存先はApplication Data/Local Settings/レジストリの いずれかを選べるわけだが、プログラムのカレントに置くことは不可能なんだっけ? (まあVistaでProgram Filesにインストールされちまったらどの道不可能なわけだが) マイドキュメント内に設定ファイルを保存する仕様で、 データ保存用にYAMLとかSQLiteとか考えてみるかなぁ……。
36 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 20:33:55 ] ToolStripMenuItemに表示される文字列についてなんですが 「&&」が含まれる文字列をTextプロパティに設定した場合 表示上は「&」が1つだけになってしまいましたが 実際にTextプロパティから文字列を取得すると「&&」になっています。 表示も「&&」とするにはどのようにしたら良いのでしょうか。お願いします。
37 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 20:47:40 ] >>36 そもそも、&F と書いたらFキーに反応するメニューになるわけだが? そこから類推して考えよう。
38 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 21:04:11 ] >>5 Path.GetFullPath()を試したか?
39 名前:36 mailto:sage [2009/04/13(月) 21:43:20 ] >>37 ありがとうございます。 ToolStripMenuItemにはUseMnemonicプロパティに相当するものがないようなので 自分で文字列そのものの&を増やしてやるしかないですかね
40 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 08:45:38 ] C#ってソースコード見られてしまうんでしょう? ユーザーに配るときどうするの? 難読化するだけ?
41 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 08:55:27 ] 知られたくないコードはdllにするなりしてネイティブ化すれば?
42 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 08:57:35 ] ネイティブ化って.NETを使わずC++で書くってこと? あとdllにしてもノートブックで開くと見えてしまいますよね。
43 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 08:58:13 ] ノートブック? ネイティブ化レベルで嫌ならそれはC#の問題じゃないだろ 暗号化ツールでも使えよ
44 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 09:02:52 ] Nandokuってソフトがあるから使えば
45 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 09:17:31 ] どうせILを解析されたらわかっちゃうんだから、嫌なら配布はやめて サービスを提供するようにすれば?
46 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 09:19:18 ] 俺はただ単に自分のソースが恥ずかしいから難読化してるw
47 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 09:26:47 ] じゃあ普通は難読化+暗号化するのね。
48 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 11:22:13 ] おれは、普通に書いてるつもりでも、 難読化した?って聞かれる orz
49 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 11:31:02 ] dllを作れば、ソースコードそのものは見られなくなるの?
50 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 11:31:01 ] >>48 引き抜きたい
51 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 11:33:54 ] >>50 抱かれたい Yes Falling'Love
52 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 12:50:30 ] 今度、C#でアプリを作ろうと考えています。 そこで、今までのC++(MFC)の資産を多少流用したいのですが、連携って可能なんでしょうか? 一応、ネイティブコードは、マネージコードでラップしてやって呼び出せるのは試しました。 例えば、CDialogとかでUIやリソースを伴うものを、C#のフォーム内に貼り付けるみたいな事は実現出来ますでしょうか? よろしくおねがいします。
53 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 13:26:35 ] >>52 詳細は自分でぐぐって調べればいいと思うが、 FormsとMFCは根本的に違う仕組みなので、残念ながらソースコードそのものの流用はほとんど利かないと思う。 せいぜい、ダイアログやウィンドウをコンポーネントのレベルで流用するくらいだろうか。 それもCOM越しかC++/CLIでラップする必要があるだろう。
54 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 14:03:02 ] >>53 有難うございます。 ビデオ編集ソフトを作れとのお達しなのですが、どうもDirectShowは 公式にC#から呼び出すクラスなどは用意されていないみたいで、 (DirectShow.netは権利的に使えないので)DirectShowをC++/CLIでラップするか、 それとも、DirectShowが必要な部分だけ(例えば表示とか)をC++で書いて、 そのコンポーネントを丸ごと持ってきちゃえばいいかなと思いました。 C++はMFCメインで今まで作ってきたのですが、例えばMFCで作成したクラスを DLL等々にして、C++/CLIでラップしてやれば、実現できそうですかね? 有難うございました〜。
55 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 15:21:15 ] 文字等を描画表示するとき protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); e.Graphics.DrawImage(_bmp, x1, y1, srcRect, units); } Invalidate(); としてまとめて書いた_bmpを更新して表示してるんですが 一文字ずつ書いた跡を表示したいので このフォーム eにあたる部分に直接書き込む方法ないでしょうか?
56 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 15:32:23 ] >>49 ノートパッドというものを使うと 中味を見られてしまうと 教えてgooに書いてある
57 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 15:38:44 ] dllにもネイティブコードとILのがあんだろ 混ぜて考えるなよ
58 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 16:05:46 ] >>55 意味がわからん
59 名前:55 mailto:sage [2009/04/14(火) 16:18:14 ] e.Graphics.に直接Drawしたいのですが 他の場所でやるとバグってしまいます 書きたい場所からOnPaintを呼び出して そこでDrawStringするように試してみます
60 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 16:19:38 ] このスレ見てるとたまに頭おかしくなりそうになるな
61 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 16:20:28 ] 普通に逆コンパイラに食わせればすぐ見えるわけだが。 早速自作ソフトを食わせてみたが、リソースもソースコードも丸見えだなw しかも、コメントがない程度でほとんどもとのコードと遜色がない。 機械語に変換されるネイティブと違って.NETはILまでしか落ちないからなぁ。 難読化? 別にいいや。
62 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 16:23:02 ] 簡単に見られたくないコードはアンマネージドで書けってことか。
63 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 16:29:41 ] 猫Winの文字化け表示の話をweb検索で解決できたw まあ第3版買えってことなんだろうな
64 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 16:37:56 ] つ 難読化 ・・が続く、いつもなながれだな。飽きないね。
65 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 16:59:37 ] そこまでして見たがる人間がどこまでいるのかと 自意識過剰なんじゃね?
66 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 17:04:12 ] 見られて困る部位をC#やVB.NETで書いてあるようなアプリなんて間違いなく使い物にならない
67 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 17:15:35 ] え?vb.netも見られちゃうの?
68 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 17:17:15 ] いやんみないでぇ
69 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 17:28:01 ] >>66 言えてるな。コアの部分にそれらの言語を選択してるアプリなんて わざわざ逆アセしたところで得るものなんて何もない
70 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 17:28:08 ] お前の粗チン(ソースコード)何か誰もみねえよ お前のソースコード覗いて100円の特になるか? 100銭の得にもならんだろ っていってやれよ初めから 初心者ほど言い出しがちなネタなんだから まず初心者脱出しろ
71 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 17:44:09 ] .NETの案件でいくら動くか知ってて言ってるのか……。 >>67 それだけじゃなくむしろC#で書かれたプログラムをVB.NETで逆アセしたり、また逆もできる。
72 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 17:48:05 ] MonoのAOTでネイティブコンパイルすればOK
73 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 17:49:29 ] スレタイに初質って書いてんだろ。 そんなスレで案件とか、字も読めない文盲か?脳障害か? どっちにしろ病院の方が先だな。
74 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 17:51:57 ] 何でキレてんのw 言ってることは分からんでもないがw
75 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 17:58:49 ] (´・ω・`)しーましぇん。 でもねー案件がどうとか言い出すなら、 予算出してもらってMSの難読化ツール買うなり、 ネイティブコード要因雇って移植するなりすりゃいいんじゃねえかと。 ボランティア回答スレで何求めてるの? 業務サポートですか?
76 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:00:37 ] >>59 もうちょっと整理してやりたいことと今やってることを書いてみたら。 OnPaintとそれ以外で描く場合の動作はわかってしまえば簡単なんだが 見た感じだけで動作を予測するのは難しい。 オフスクリーンバッファを用いれば解決しそうな気がしないでもない。
77 名前:デフォルトの名無しさん [2009/04/14(火) 18:01:02 ] ソースを見られたら困るというほど貴重なテクニックとかアルゴリズムを使ってるなら 逆にそれを特許申請して金取って使わせたらどうよ
78 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:01:57 ] アセンブリ言語を使いたくてウズウズしてる先輩が食いついてきそうだ。
79 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:02:42 ] Win板の質問スレでも業務ネタを聞いてくる奴はいるなあ 責任持てないから然るべき所に依頼して下さいって叩き返されてるけど
80 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:09:42 ] しつこい。もういい。 ソースコードの話題は終了な。
81 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:13:52 ] >>71 もしかしてVB6をVB.NETにしてそれをC#にしたりもできるの?
82 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:20:21 ] 実際やれよ
83 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:23:40 ] C#←MSIL→VB.NET は可能 VB6→VB.NET はVSの移行ツールで一応出来るけど・・とりあえず使ってみれ
84 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 19:15:00 ] >>55 やりたいことは意味不明だが、 質問への答えとして、CreateGraphicsが使えるのではという気がする。
85 名前:55 mailto:sage [2009/04/14(火) 19:35:55 ] この OnPaint(PaintEventArgs e) のeをよそでも使えるように、と書こうと思ったら >>84 g = this.CreateGraphics(); これでできました。 ありがとうございます。
86 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 22:09:15 ] ILに落としてパスワードチェックを書き換えてilasmする生活が始まるお(;ω;
87 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 22:09:59 ] だからそんなもんC#で書くなよw
88 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 22:22:38 ] それってネイティブでも大差なくね? バイナリ少し書き換えられたら終了じゃないか。
89 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 22:40:30 ] パスワードチェックのクラックぐらいだったらネイティブでも似たような もんだよな確かに。
90 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 23:22:46 ] 可読かどうかはスクリプトキディを寄せ付けないための必要で十分な条件かもしれない
91 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 23:25:08 ] apache2入れてみたんだが,apacheってどの板で盛んだっけ?
92 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 23:29:31 ] スレがあるのは多分自家鯖板じゃないかなあ 運用がテーマであってWebDevelopmentとは何の関係もないスレだとは思うがね
93 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 23:31:35 ] <a> <b c=100 /> </a> といったxmlファイルがあったとして、属性cをStringではなく直接 intで取る方法ってないでしょうか。
94 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 23:36:05 ] >>92 てぇんきゅー ちょっと見てくるー
95 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 23:36:28 ] 属性値は二重引用符で囲まないと整形式じゃなくなっちゃうよ もしやるとしたらDTDなんかを使って support.microsoft.com/kb/307379/ja
96 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 23:37:18 ] >>93 まず何で取ってこようとしてるのか書こうよ… で,xml的にはattributeは必ず"で囲む必要があったんじゃなかったっけ?
97 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 23:44:46 ] 行って見て来た ちょうちょう初心者の俺にはタスク指向のヘルプがないと無理ということだけ分かった 畑違いすぎワロタ DTDもいいけどxsdでinteger突っ込むのもいいかもね 外部ファイルが必要になるし,現行のプログラムじゃ導入までが面倒だとおもうが
98 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 00:24:18 ] 俺はXMLよりYAMLのほうが読み書きしやすくて好きなんだが、 .NET向けにはいいライブラリがないんだよね……。
99 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 01:12:57 ] 書くのは XML はインテリセンス、ツールチップコメントとか エディタがフルサポート状態なので VS 使いとしては楽と いうか。 Codeplex にあるんだっけ > YAML
100 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 01:19:37 ] yaml.orgには2つ.NET向けの実装が紹介されてるな(そのうちの一つがcodeplexの
101 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 02:17:51 ] そっかー。Visual Studioでxml書くとインテリセンスが使えるんだっけ。盲点だったな。 yaml-netの方は改造なしでそのままでは話にならないレベル。 yatools.netの方はDOMインターフェイスがなくてSAX的な読み方しかできないので、 YAMLを使う利点が半減してしまう。 まあ、静的型付言語にYAMLは向いてないのかもしれないが……。 後、せっかくなので。 .NETアプリケーション向けに簡単なstringやintegerを格納できるxmlの書式データってどこかにないだろうか?
102 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 02:23:02 ] アドオン作ればいいじゃん
103 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 02:46:43 ] >>101 クラス作ってxsd.exeって話?
104 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 02:59:14 ] >>101 XmlSerializer
105 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 03:45:51 ] すみません、前スレで public string MessageText { get { return textBox1.Text; } ってあったのですが、 Form1でこれやると怒られるんですが・・・
106 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 03:47:37 ] VSさんは親切にも具体的理由を挙げて叱ってくれているというのにガン無視とはどういう了見だ
107 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 03:48:29 ] 静的クラスではダメですってことですか?
108 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 03:59:24 ] そもそもなんつって怒られたの?
109 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 04:02:19 ] そもそもForm1を静的クラスってどういうこと?
110 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 04:03:00 ] どうせForm1.MessageTextとか書いてんだろ
111 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 04:04:24 ] エントリポイントでインスタンスの作られていない脳内のForm1のことだとしたらここで聞かれてもな
112 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 04:04:30 ] 前スレでも >クラスとインスタンスの違いが理解できていないよーな って言われてるねえ
113 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 04:05:43 ] 午前4時に15分で7レスつくって何してんだおめーら。
114 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 04:06:12 ] 残業
115 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 04:06:54 ] 残尿
116 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 04:10:57 ] 時差
117 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 07:37:44 ] 趣味でプログラムやってる人間にとって、 C#って実用性ある? 皆仕事以外で何に使ってるの?
118 名前:101 mailto:sage [2009/04/15(水) 07:43:19 ] 寝てる間にスレが流れた。 >>104 さっそく試してみた。エロいな、これは! 整数、実数、文字列、文字列のコレクション、全てOK。 アプリ依存のデータを入れる程度だったら、これで十分すぎるな。
119 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 07:48:48 ] >>117 WindowsでちょっとしたGUIアプリを書くのにこれほどお手軽な開発環境は無い。 VB.NETとどっちを使うかはお好みで。
120 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 09:18:42 ] >>117 文字列処理でも、ファイル処理でも、数値計算でも何でもできるよ。 昔はほんのちょっとした計算とか、ファイル操作とか何でもC#でやってた。 たまに使うためだけにsedとかgrepとかsh覚えても、すぐ忘れちゃうし、 全部インテリセンスに頼れるC#(てかVisual Studio)は便利。 最近はPowerShellがあるからワンライナーなものはこっちでやっちゃうけど、 10行超えたらもうC#。
121 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 11:38:10 ] VSのインテリセンスとリアルタイムなエラー指摘が無かったら xsdなんか書ける気がしない
122 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 19:47:45 ] C#でネームスペースをDll化したんだけど SummaryをDLL使った側で読むにはどうしたらいいの?
123 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 19:51:32 ] [AssemblyName].xml ってのができてると思うが。 できてないんならプロジェクトのプロパティ確認して。 で、インテリセンスは同じところにおいときゃ勝手に読む。 ドキュメントっぽくしたいなら Sandcastle とかで
124 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 00:25:21 ] private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e) { MessageBox.Show("メッセージ"); } これでXを押してもメッセージボックスがでないんですが、ほかに何か必要でしょうか? 環境のせいでしょうか。
125 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 00:29:22 ] イベントハンドラをイベントに追加してないんでそ Form1.designer.csのInitializeComponentの中をのぞいてイベントに対して何やってるか見てみ つかイベントはデザイナのプロパティグリッドの雷マークからやるようにした方が良い
126 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 00:29:30 ] >>124 どっかでForm1.Closing+=みたいにイベントハンドラさんにちゃんと教えてあげてる? 書いてあるだけで探して関連付けてくれる負んぶに抱っこは幼稚園までだよ! みたいなことか
127 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 00:52:28 ] >>125-126 雷マークから追加でできました。 ありがとうございます。
128 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 01:09:28 ] 質問です。WCFで通信量ってわかりますか?
129 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 01:18:57 ] >>128 よくわからんので調べてみた social.msdn.microsoft.com/Forums/ja-JP/wcf/thread/80e5a892-419e-46e5-ae38-fcbdaa537c64 とか www.google.co.jp/search?complete=1&hl=ja&q=wcf%E3%80%80management+communication+traffic&lr=&aq=f&oq= で
130 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 14:27:11 ] treeviewのノードを全部消したいんだけど、やり方がわからないです。 選択中のノードの消し方はなんとかわかったんだけど、 単純に全部消す方法を教えてください。
131 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 14:30:27 ] TreeView.Nodes.Clearとかじゃね 知らんけど
132 名前:130 mailto:sage [2009/04/16(木) 14:55:47 ] >>131 ありがとうございます!出来ました!
133 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 15:10:23 ] どういたしまして
134 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 18:02:30 ] >>129 解決してないですね パフォーマンスモニタは精度が低いし・・・ 自分でBindingを継承するなりしてみます。
135 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 00:16:22 ] ToolStripMenuItemのBackColorプロパティを設定しても 何も変わらないんですけど、特別な手順が必要ですか?
136 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 00:22:23 ] まずズボンを脱ぎます
137 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 00:49:00 ] 次にスカートを穿きます
138 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 00:57:38 ] そしてクリをいじります
139 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 07:54:09 ] いきます
140 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 09:08:07 ] C#ってネイティブコンパイルできる?
141 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 09:54:41 ] Mono使えばできるらしいけど。
142 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 10:04:21 ] >>140 ngen.exeでググリ給え
143 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 10:07:22 ] しらなかった ngen使えばソースみられない、でOK?
144 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 10:19:20 ] ngenしても元のアセンブリと一緒に配布しなきゃいけなかったような
145 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 10:23:49 ] ・・・そなんだ
146 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 12:51:02 ] class A { bool foo = false; public bool Hoge { get { return foo; } set { foo = value; } } } void ThreadProc(A objA) { while (!objA.Hoge) { 〜 } } 他のスレッドがHogeをtrueにするまでループするようになっているのですが この場合A.fooにvolatileは必要でしょうか? プロパティを通してアクセスするので必要ないような気がするのですが 確信がもてません。
147 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 13:07:27 ] 子フォームをドラッグして親フォームとある程度近い距離になったとき 親フォームの上下左右にぴったりくっつき, 遠くなったら子フォームのみ自由に動く. くっついてるとき親フォームをドラッグしたら子フォームも付いてくる. といったような親フォームに吸着する子フォームを作りたいんだけど 親子ウインドウの相対座標やサイズから地道にIF/THENルール作るしかないですか?
148 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 13:51:30 ] ここに20行ぐらいのコード貼って、どこがおかしいか見てもらってもいいですか
149 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 13:52:29 ] 長ければテキストに貼り付けてアップローダーに上げるのが良いかと思います
150 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 13:57:28 ] >>146 JIT最適化によって直接参照する形になりうるんじゃなかったっけ >>147 基本クラスライブラリにはそういう機能は存在してないな
151 名前:148 mailto:sage [2009/04/17(金) 14:00:41 ] 了解しました。 ttp://textup.no.land.to/w/1239944224/ textBox1に秒数、2に繰り返し回数を入れ、 label1に経過秒数(一回ごとにリセット)、 label2に何回目かを表示しようとしています。 label1・2共に数字が表示されません。 たまに変な数字が出たりします。 何がいけないのかわかりますか?
152 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 14:03:32 ] 処理でスレッド占有してるから画面描画できる隙がない
153 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 14:08:35 ] BackgroundWorker使うといいよ
154 名前:151 mailto:sage [2009/04/17(金) 14:19:06 ] >>152 なるほど、そういうことだったんですね ぜんぜんわからなかた >>153 解決方法ありがとうございます。 早速調べてみます
155 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 16:37:04 ] ttp://codezine.jp/article/detail/139?p=2#end_thread 上記URLを参考に、マルチスレッドを実装したのですが サンプルで言うWriteStringメソッドやCallbackMethodメソッドが staticじゃなきゃいけないと言うことは無いと思っていいでしょうか。 少なくともCallbackMethodのstaticは外しても一見問題無さそう なのですが、何か理由があってそうなっているのであれば教えて下さい。
156 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 17:17:26 ] mainがstaticだから合わせたんじゃないの。 それのVBのサンプルが怪しいな、VBのMainは普通Moduleを使うものだが。
157 名前:147 mailto:sage [2009/04/17(金) 17:40:48 ] >>150 やっぱりそうですか, 地道にIF/THENルール作ります ありがとうございました
158 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 22:26:25 ] WinFormsって512x384の画像表示で40FPSしか出ないほど重いものなんでしょうか・・ NiVEというC#製のモーショングラフィックスソフトがあるのですが、 FAQの「プレビューが遅い。エフェクトとかかけてないのに30fpsのプロジェクトで22fpsまでしか出ない」 の項目に「WinFormsが重いのでプレビューの高速化は厳しいです。」 とあり、実際試してみると40FPSまでしか出ません。 やっぱりWinFormsの描画って遅いんでしょうか? nicoae.if.land.to/index.php
159 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 22:28:51 ] WPFとかXNAだとどうなんだろうネー
160 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 22:32:47 ] 描画って言うよりはそれ以外の部分で処理食ってるような気はするわ
161 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 22:34:23 ] WinFormsとか関係ないんじゃないのか? まさか普通にGDI+で描画してるわけじゃないだろ
162 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 23:52:43 ] 今スレを見返してて、文字列コレクションでもXmlSerializerが可能ってレスがありましたけど ちなみに、文字列配列では無理ですよね?
163 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 00:01:02 ] そんなこと無いよw
164 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 00:01:04 ] >>162 なぜ試さない?
165 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 00:03:15 ] 普通にstring[]でもList<string>でも可能 何を見てそんな認識に至ったのか分からん
166 名前:162 mailto:sage [2009/04/18(土) 00:04:34 ] いや、以前試してできなかったので てっきりできないと思い込んでたんですけど 118を見て、コレクションが可能ということだったので もしかして自分のやり方が間違っていただけかと思って…
167 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 02:22:04 ] XMLArray属性 ちなみに俺は姉属性
168 名前:162 mailto:sage [2009/04/18(土) 02:29:50 ] もう一度試してみましたが、今度はちゃんとできました。 以前は文字列配列じゃなくて、ArrayListでやってダメだった記憶と 勘違いしていたのかもしれません。お手数かけました。
169 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 15:56:10 ] 配列の配列じゃない二次元配列(なんていうの? の配列の範囲を超えないかチェックするにはどうすればいいの? うまく説明できないけど IndexOutOfRangeExceptionが投げられないように 事前にifでチェックしておきたい
170 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 16:06:52 ] int [,] n = new int[7,4]; これだろ? Array.RankとArray.GetLengthを参照
171 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 16:34:42 ] そういや多次元の配列をforeachでぶんまわすときってどうやんだべ いままでやったことなかったな 調べてみるか
172 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 16:36:19 ] >>170 ありがとうございます!
173 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 17:10:29 ] >>171 こんな感じ。 int[,] rect = new[,] { { 1, 2, 3 }, { 4, 5, 6 } }; foreach (var x in rect) Console.WriteLine(x); int[][] jugged = new[] { new[] { 1, 2, 3 }, new[] { 4, 5, 6 } }; foreach (var x in from array in jugged from elem in array select elem) Console.WriteLine(x);
174 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 17:24:26 ] >>173 jugged は SelectMany で一発だよ
175 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 17:32:00 ] SelectMany 書ける人が少ないから2重 from が導入されたわけで、 この場合は >>173 でいいと思ってる。
176 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 17:49:31 ] おお、そんな風に書けるんだ。 今まで二重にforeachしていた。
177 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 18:33:06 ] >>175 それなら Aggregate とか
178 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 18:52:50 ] >>176 まあ、素直にそう書くのがいいと思うよw >>177 それも考えたけど、そこまでしてクエリ式を避ける意味もないかなぁと。 Aggregate じゃなくて Sum とか書ければそれを使ったけども。
179 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 19:07:03 ] 字面でin fromってところが気持ち悪い
180 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 19:23:18 ] >>179 うん、普通は、 var q = from array in jugged from elem in array select elem; foreach (var x in q) .... って書くと思う。
181 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 20:56:47 ] >>178 俺もクエリ式大好きなんだけど、foreach 文に含ませたりとかそういう 部分式的な扱いとかメソッド一発の場合はメソッド形式が好みかな みたいな。避けているわけではない。
182 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 20:59:24 ] let使わない限りは全部メソッド形式で書いちゃう
183 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 21:35:35 ] オブジェクト指向の書き方が、基本的にクエリの書き方にマッチしないから違和感感じるよな
184 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 21:36:49 ] 気持ち悪さの一番の原因はクエリ式がfromで始まるということだと思う。
185 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 21:40:17 ] 普段はメソッド形式で書くけど、 メソッドチェインが3つ超えたあたりからクエリ式に切り替えてる。 >>183 C# は最初から純粋OOP言語でもないしね。 >>184 英文法的な気持ち悪さよりも、 インテリセンス利くことを優先したからしょうがない。
186 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 22:00:19 ] >>185 オブジェクト指向の書き方がクエリの書き方にマッチしないといってるのに、 C#は純粋なOOP言語じゃないなんてのは論点のすり替えですよ
187 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 22:59:08 ] C#で書いている以上純粋OOは無理って事が言いたいんじゃないかと
188 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 23:11:14 ] じゃあ純粋OOPならLinqのクエリは完璧に違和感なく書けるってことだな?
189 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 23:14:45 ] 落ち着け
190 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 23:16:26 ] 純粋OO言語としても使えるだろ ベースにOOを使ってOO的じゃないことを実現してる感じ
191 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 23:22:20 ] C とか C++ からの括弧とかドットとか式とかシンタックス周りとの組み合わせが あわねーって話ならわかるけど OOPL がどうこうとかそういうことなのか?
192 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 23:24:47 ] ならいったい何を論じてるんだ? >>190 圧倒的に論旨から外れてる 誰もそんなことを論じていない
193 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 23:38:36 ] 便利なんだからOOとかどうでもいいと思うのだが、お前ら何騒いでるの?
194 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 23:43:40 ] オブジェクト指向の書き方が、基本的にクエリの書き方にマッチしないから違和感感じる という意見に、C#は純粋なOOPではないとか、いやC#でもOOPかけるだろとか、 超的外れな意見ばかり出し合ってなれ合って騒いでる
195 名前:デフォルトの名無しさん [2009/04/19(日) 01:49:20 ] クエリの書き方とオブジェクト指向の書き方ってどういうのをいうの?
196 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 06:56:11 ] 名字に口が付く姓で口をぐちと読むのは 実は井口と野口、山口、この三つしかない まめちしきな
197 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 08:14:00 ] 210個あるらしいがコピペもうざいので書かない wwwww.2ch.net/test/read.cgi/news4vip/1172987773/
198 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 10:44:59 ] >>194 オブジェクト指向の書き方=UMLですねわかりますえん
199 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 12:38:21 ] DataGridViewで、何も無い部分(濃い灰色の部分)をクリックした時、アイテムを何も選択しなくするようにするにはどうしたら良いのでしょうか。 要はリストビューみたいな挙動にしたいのですが、、、
200 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 19:12:26 ] >>196 5000円札の樋口姓は絶滅したのか?
201 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 19:22:22 ] 貼ると絶対にレスがつくコピペってのはほんとなんだなw
202 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 23:47:08 ] C#おべんきょ兼ねて、Winsnmp.DLLを叩いて「簡易SNMPマネージャ」チャレンジ中。 GETの応答をイベントっぽく受けたい(タイマー待ちしたくない)んですが、 いろいろ試してもうまくいかず。何を使えば良いのか迷っております。助言ください。 初期化関数のSnmpCreateSession()に「callback」関数の登録があり、 応答受信、またはTimeoutを契機にこれが呼ばれることは確認できました。 で、受信解読処理を起こすのにMonitor使おうとしたら「プロセスが違うぜダンナァ」。 Mutexなのか?と思うも、期待通りに動かず…。 ええ、「自分が何をわかっていないのか」が判らない状態であります。 どこか「ここ読んで再チャレンジしてみろ」みたいな指標、ありましたら教えてください。
203 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 23:49:28 ] >>202 www.google.co.jp/search?hl=ja&q=SNMP+C%23&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=&aq=f&oq=
204 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 01:21:58 ] つかぬ事を聞くんだが、.NETはスピンコントロールはなくなったんだろうか。 それから、Textboxで上書きカーソル(Iビームでない方)は使えないんだろうか?
205 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 02:08:41 ] >>204 スピンコントロールって名前やめたっぽいよ。 NumericUpDown。
206 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 08:27:01 ] 申し訳ないのですが、調べてもわからなかったので質問させてください VisualC#にて、新規ファイル作成時にWindowsApplication1を別名に変えると デバック時に依存関係が読み込めないというエラーがでます。 これは何が悪いのでしょうか?デフォルトの名前しか使えないのでしょうか?
207 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 10:02:26 ] キミがどこかでミスってる。 リビルドしてもだめかい?
208 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 19:15:30 ] >>207 すみません。プロジェクト名に('A`)が入っていたことが原因のようです。 無くしたら解決しました。
209 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 19:31:34 ] ワロタ
210 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 19:35:28 ] C/C++やってて、GUIとか使いたくなったからC#やり始めたんだが、 .csのソースを.csprojが入ってるディレクトリ以外に入れて参照できるようにはできないのだろうか。 これは仕様でどうにもならない?
211 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 19:41:10 ] >>210 できるよ
212 名前:210 mailto:sage [2009/04/20(月) 19:44:03 ] C/C++と一緒のリポジトリに入れてて、 ソースだけプロジェクトと別ディレクトリで管理したいから その方法をぜひ教えてください。どこかのURLとかでもおkです。
213 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 19:50:03 ] >>212 msdn.microsoft.com/ja-jp/library/9f4t9t92.aspx
214 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 19:51:06 ] ソリューションエクスプローラ→追加→既存の項目で追加すりゃいいんじゃないの 意味が分からん
215 名前:210 mailto:sage [2009/04/20(月) 19:56:11 ] >>213 どもです!できました!
216 名前:210 mailto:sage [2009/04/20(月) 20:32:23 ] >>214 それやると別ディレクトリの.csが.csprojのあるディレクトリにコピーされて、 オリジナルが変更されないという罠。 リンクとして追加で出来ました。
217 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 04:14:41 ] CMakeList.txt を書いて目的のビルドフォルダでcmake書ける方法もあるが……。 Windowsだとあんまり一般的じゃないのかな。
218 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 10:21:34 ] Vista環境で、SHFileOperationやMicrosoft.VisualBasic.FileIO.CopyFileを使って、 ループ内でファイルコピーを繰り返し行うと、GDIオブジェクトが増え続け、 300回ほどループが回ったところでGDIオブジェクト数が10000になり、ソフトが落ちてしまいます。 XPだと全く問題なく、VistaでもSystem.IO.File.Copyを使えば大丈夫です。 何か注意すべき点などあるのでしょうか?
219 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 10:38:02 ] >>218 Microsoft.VisualBasic.FileIO.FileSystem.CopyFileで試したけど 少なくともごく簡単なのだと再現しないね@Vista business SP1/.NET 3.5 SP1
220 名前:218 mailto:sage [2009/04/21(火) 10:57:35 ] >>219 試していただきありがとうございます。 ググっても類似事例がないので、自分が書いたコードが悪いんだろうなとは思っていましたが… ちなみに、公開しているソフトで、ユーザーからの問い合わせもかなりあるので、環境依存というわけではなさそうです。 再現できるミニマムコードが書けたらまた質問しに来ます。
221 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 13:10:58 ] > ユーザーからの問い合わせ があったとしても、特定環境でしか起こらなければ環境依存だろうよ ちゃんと集計とか分析とかしたのか? まあ単に自分の環境が特殊ではないと主張したかったんだろうけど
222 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 13:16:06 ] vb6から C#にアプリを移行してるんだけど DBのテーブルで誕生日がint型なんだが これをC#でDateTimeにコンバートしたいんですけど どうしたらいいですか? どうも 36524 が 2000-01-01 になるらしい。
223 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 13:18:15 ] 変換の計算式書けよ
224 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 13:20:43 ] 1899年12月31日を0としてそれからの経過日数かな
225 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 13:26:37 ] 1900年1月1日からかもしれない 1900年2月29日が存在するバグがあるか無いか確認して まあどちらにしても1900年3月1日からは一致するけど
226 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 14:10:56 ] ワラタ
227 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 15:15:30 ] 他のプロジェクトでビルドしたアセンブリを参照設定してメインのプロジェクトで使っているんですが、 アセンブリを再ビルドするたびに参照設定をやり直さないとビルドに失敗します。 何かいい方法はないでしょうか。
228 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 15:30:04 ] そのプロジェクトをソリューションに追加すれば ビルドと配置も同時にやってくれるんでない
229 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 15:35:04 ] 誕生日がintってどうやってるんだろ 20090421とか?
230 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 15:37:10 ] >>229 通常、特定の日付からの経過日数で換算する。 UnixとWindowsそれぞれでやりかたがある。詳しくはぐぐれ。
231 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 15:42:42 ] それにどんなメリットがあるの
232 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 15:51:20 ] 内部形式の意味を聞いてどうすんだ int表現ならそのほうが便利だろう、引き算だけで経過日数がわかるとか
233 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 15:54:10 ] Date関連は、昔は自前で計算するしかなかったもんなぁ。 C#で新規設計の時、intでやる奴はいねぇだろ。
234 名前:227 mailto:sage [2009/04/21(火) 19:28:15 ] >>228 結局自力で解決しました。 csprojファイルをテキストエディタで開いて、 参照設定のItemGroupにおいて <Reference Include="Azuki.dll" /> といった形に書き換えました。 これでVSのオブジェクトビューアでも直接dll内のアセンブリ情報を見に行くし(当然属性情報も見える)、 アセンブリを再ビルドしてもエラーが出なくなりました。
235 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 23:23:43 ] >>231 Excel使いから言えば、時間単位の換算がやりやすい。 日→時は24倍すればいいとか。
236 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 23:26:57 ] >>235 ExcelだとVBAでDateDiffとか使えないの?
237 名前:デフォルトの名無しさん mailto:sage [2009/04/22(水) 00:01:57 ] GUIだけフォーム使って中身はCとか出来ますか?
238 名前:デフォルトの名無しさん mailto:sage [2009/04/22(水) 00:08:54 ] できますよ
239 名前:デフォルトの名無しさん mailto:sage [2009/04/22(水) 19:35:27 ] クリップボードから得たメタファイル形式のデータを、 メモリストリームかファイルストリームにする方法がわかりません。 meta = new Metafile(mfms, hmeta); も meta = new Metafile("metafile.wmf", hmeta,EmfType.EmfPlusDual); もGDI+で汎用エラーと出てしまいます。 メタファイルの取得は下記のサイトを参考にしました。 ttp://dobon.net/vb/dotnet/graphics/getclipboardmetafile.html
240 名前:デフォルトの名無しさん mailto:sage [2009/04/22(水) 21:02:32 ] >>239 そのページの一番最後のGetEnhMetafileOnClipboardをそのまま使ってもだめなのか?
241 名前:デフォルトの名無しさん mailto:sage [2009/04/22(水) 21:28:00 ] 一旦Imageとして読み取って、 それとは別にMetafile(Stream, IntPtr)で新しいMetafile作って、 Graphics.FromImageでMetafileからGraphics作って、 Graphics.DrawImageで読み取ったImageを描画 …てな流れになるかのう マネージドでやろうとすると
242 名前:239 mailto:sage [2009/04/22(水) 22:48:16 ] >>240 それでメタファイル形式のデータは取得出来るのですが、 他のデータと合体させてバイナリファイルとして保存したいので、 メモリストリームかファイルストリームにしたいです。 クリップボードのデータをファイルに保存して、 必要な時に読み込み、クリップボードに貼り付けるのが目的です。 >>241 すみません。 いろいろ調べたり試したりしてみてますが、Graphics.DrawImageから ストリームにする方法がわかりません。
243 名前:デフォルトの名無しさん mailto:sage [2009/04/22(水) 23:59:23 ] Metafileの作成時に渡したStreamに書き出されてる ちなみにIntPtrの方はGetDC(IntPtr.Zero)でも適当に作ったBitmapからGraphics.GetHdcでも
244 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 00:12:03 ] >>242 241のやり方は、ここの「メタファイル形式で保存する」が参考になると思う。 dobon.net/vb/dotnet/graphics/saveimage.html
245 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 03:25:38 ] B+Treeで実装されたコレクションのクラスってありますか? それとSortedListの実装はBinaryTreeですか?
246 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 09:48:45 ] >>245 List<T>.BinarySerach()
247 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 09:50:00 ] Searchか
248 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 10:15:48 ] >>245 ぐぐれ
249 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 11:30:30 ] XMLスキーマの構造を/区切りでテキストに出力しようと思っています。 DataSet.ReadSchemaを用いて作ってみましたが、似た形式で出力できるものの、並び順がおかしくなってしまいます。 やはりちゃんとShemaとして読み込んで、それを解析する必要なあるようですが、やり方がわかりません。 ご教授ください。
250 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 12:25:07 ] C#かjavaで 文字列A "qwertyuiop" に 文字列B "cdefghij" のどれか が1つでも含まれていたら真になるというのを できるだけ高速にやりたいのです。 考えたのは @ s="qwertyuiop"; f = s.IndexOf("c") + 1 + s.IndexOf("d") + 1 + … A 配列に文字列Bのテーブルで真偽表を作り 文字列Aを一文字ずつ取り出しAscii値にしてテーブル参照して加算 ですがまだ重そうです。 何か関数等で高速にできる方法ありませんか?
251 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 12:41:02 ] 真偽値が欲しいだけなのになんで加算してんの?
252 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 12:52:05 ] 真偽というか0か0以外ならいいのです。 今気づきましたが s.ToCharArray(); を使えばcharの配列に変換できて Aのテーブルとの掛け合わせが簡単にできそうですね。
253 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 13:09:41 ] 文字列が短ければ線形探索 長ければ一方をソートして二分探索
254 名前:239 mailto:sage [2009/04/23(木) 13:11:49 ] 何度もすみません。 >>243-244 ttp://dobon.net/vb/dotnet/graphics/getclipboardmetafile.html を元に下記を作ってみましたが、 DrawImage後もstreamには入っていないようです。 (stream.lengthが0) 使い方が間違っているのでしょうか ttp://www10.uploader.jp/user/cetinutre/images/cetinutre_uljp00008.txt
255 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 13:16:09 ] IntPtr disDC = GetDC(IntPtr.Zero);
256 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 14:53:32 ] >>250 部分文字列を取りたいのではなくてマッチするかどうかだけ調べればいいんだな? 実用的には正規表現の文字集合を使う。 match(/[cdefghij]/, "qwertyuiop") 自前でやるならデーブルでヒット走査。 bool[0x100] の走査ウィンドウを作り、全ての要素を倒しておいてから "cdefghij" を立てる。それから文字列を入力して一文字ずつ走査すればよい。 入力値が無数にあると期待され、テスト前に準備期間が許されるならば、 入力値側を前操作する方法もありえる。
257 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 14:55:46 ] 239は自分で紹介している記事を最後まで読んだのか? WindowsMetaFileとして取り込むにはAPIを直で呼び出す他なさそうだと書いてあるんだが。 .NETの範囲での解法を自力で発見してそれを報告するなら分かるが、 まだ探している段階ならまずは記事に書いてあることを試すべきだろ。
258 名前:239 mailto:sage [2009/04/23(木) 15:07:38 ] >>257 最初に質問する段階でMetaFileを取り込むところまでは出来てます。 やりたいのは>>242 です。 いろいろ調べたり試したりしてはいるのですが、 何もしていないように見えたのならすみませんでした。 >>255 Bitmap bmp = new Bitmap(1, 1); Graphics bmpg = Graphics.FromImage(bmp); IntPtr hdc = bmpg.GetHdc(); としてもダメでした。
259 名前:239 mailto:sage [2009/04/23(木) 16:14:16 ] 長々と書いて申し訳ありませんが、なんとか出来ました。 最後に emfg.Dispose(); が抜けていたのでダメだったみたいです。 レスくれた方々本当にありがとうございました。
260 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 16:21:50 ] >>256 正規表現ですか。 基本、文字処理はこれでやればいいわけですね。 ありがとうございます。
261 名前:218 mailto:sage [2009/04/23(木) 17:26:23 ] >>218 ですが、比較的簡単なコードで再現できました。 暇な方は試していただけると助かります。 ↓GDIオブジェクトが増え続けるケースのメインメソッド private void FileAdd(string[] stFileList) { int i = 0; foreach (string stFileName in stFileList) { FileInfo fi = new FileInfo(stFileName); i++; Microsoft.VisualBasic.FileIO.FileSystem.CopyFile(fi.FullName, Path.Combine(Application.StartupPath, "test" + i.ToString("000") + fi.Extension), UIOption.AllDialogs, UICancelOption.ThrowException); listView1.Items.Add("test" + i.ToString("000") + fi.Extension); } } プロジェクト一式のZIPファイル ttp://www.dotup.org/uploda/www.dotup.org30324.zip.html フォームにファイルをD&Dすると、実行ファイルと同じ場所にD&Dしたファイルを番号を振りながらコピーします。 タスクマネージャを見ながら、100個くらいのファイルをD&DすればGDIオブジェクトの上昇がわかりやすいと思います。 再現した環境 WindowsVista x64 (6.0.6001SP1) .NET Frameworkは最新版です。 (2.0向けなので、System.Environment.Versionで取れる値は、2.0.50727.3074)
262 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 17:55:58 ] オーバーレイ表示でもスクリーンショットが取れるようにしたいんだけど無理? 無効にしなくてもPowerDVDとかは出来るみたいなんだけど。
263 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 18:34:51 ] >>261 UIOption.AllDialogs のときにそうなるみたいだね。 UIOption.OnlyErrorDialogs だと普通に終わる。
264 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 21:14:20 ] >>248 今ぐぐってみました。 そしたらこのスレに飛ばされました
265 名前:218 mailto:sage [2009/04/23(木) 21:26:56 ] >>263 ということは、ダイアログ出してコピー中にユーザーキャンセルできるようにするには、色々自前で組まないと、Vistaでは不具合がでるってことですね。 面倒なのでFile.Copyとうまく使い分けて何とか切り抜けます。 ありがとうございました。 これはVistaの仕様なのか不具合なのか…
266 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 22:08:01 ] >>265 SHFileOperationはVistaからIFileOperationに置き換えられるようになるから、 ttp://msdn.microsoft.com/ja-jp/magazine/cc163304.aspx ttp://msdn.microsoft.com/ja-jp/magazine/cc164236.aspx この辺参考にしてVistaのときはそっち使うようにする、とかどうだろう これがリークするかどうかは知らないけど
267 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 23:18:19 ] System.IO.File.Move(@"C:\test.txt", @"C:\test1.txt"); ↑ これの@ってなんの意味ですか?
268 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 23:18:42 ] すみません、VS2005でWindows アプリをデバッグしているのですが、 どうもWebBrowserでWebページを表示していてそこでのスクリプトか何か の動作がうまく行っていないようなので、そのWebページの動作を調べたい ときには、そのVS上でそのWebページのソースファイル(htmlファイル) をいっしょにデバッグするようなことは可能ですか? Webページは現在はたまたまそこで見ているGoogleのイニシャルページ で、そこで「検索」ボタンを押したときの動作を見たいのでした。
269 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 23:20:37 ] >>267 ヘルプのキーワード検索で「@ リテラル文字列」
270 名前:268 mailto:sage [2009/04/23(木) 23:21:16 ] VS2005はプロフェッショナルEditionでWebアプリも開発可能だとは 思ったのですが、現在のWindowsアプリケーションで開いたときにだけ 不具合を起こしているようなので、統合的に調べたいのでした。 よろしくお願いします。
271 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 00:30:43 ] >>264 いや、文字通りぐぐったら実装されたライブラリが入手できるんだが?
272 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 03:22:58 ] >>271 .Netの標準ライブラリには存在しないんですか?
273 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 03:49:43 ] >>272 ないよ。 BSDライセンスで公開されている実装があるんだから、それ使ってみれば いいじゃん。
274 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 03:57:35 ] ありがとうございました
275 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 12:57:20 ] プロジェクトの「発行するバージョン」とAssemblyVersionを同期して変更していくいい方法はないだろうか?
276 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 16:23:29 ] 自身のフォームを非アクティブにする(VisibleやCloseではなく)方法 もしくはAPIは無いでしょうか。
277 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 16:26:04 ] デスクトップをアクティブにすればいいよ
278 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 16:47:05 ] >>277 SetActiveWindow(IntPtr.Zero) で、目的の動作を達成することが出来ました。 有り難う御座いました。
279 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 14:36:39 ] amazonのサービスを使って、本の管理プログラムを作っているのですが ISBNから書籍データ類を取得した後、その画像データをローカルに保存する方法で困っています。 画像のURLを取得した後にいちいち WebClient wc = new WebClient(); Stream stream = wc.OpenRead(url); Bitmap bitmap = new Bitmap(stream); stream.Close(); としたあとで bitmap.save() とすると保存は出来るのですが、ものすごく時間がかかってしまいます。 画像のURLはWebサービスの参照で自動的に作成された物を使用して所得しています 他に良い方法は無い物でしょうか、教えてください
280 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 14:47:38 ] 書籍データのGETと画像のGETを別コネクションで行ってたりしない? さしあたりパケットスニファのWiresharkとC#のTcpClientでぐぐってみて
281 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 14:49:43 ] 試したけど別に遅くもなんともねえけどな
282 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 14:50:58 ] クエリー投げ過ぎで待たされてたりして
283 名前:デフォルトの名無しさん [2009/04/25(土) 14:56:56 ] ファイルごとのバージョン管理はどうしていますか?
284 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 16:12:38 ] SVN使えばいい。TortoiseSVNとか便利よ
285 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:17:18 ] if文やメソッドなどを書く時、 if (....) { ...... } と書くのと if (....) { ..... } と書くのでは、どちらが一般的なのでしょうか。
286 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:19:43 ] 下が一般的
287 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:21:38 ] >>285 www.linux.or.jp/JF/JFdocs/kernel-docs-2.2/CodingStyle.html
288 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:24:10 ] >>287 釣りだろうけど、異教の作法なんか張るなバカ。
289 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:27:31 ] >>279 というか、クエリ投げてもらえる画像ファイルをそのまま保存すればいいと思うんだが?
290 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:28:12 ] 下はVSのデフォルト設定だしね 個人的には一貫してさえすればどっちでもいいと思う
291 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:29:03 ] >>285 標準書式が無数にあるC/C++とは違い、C#はVisual Studioによる開発がデファクトスタンダードなんだから、 VSの補完により生成される書式が標準だと考えるのが自然だろう。
292 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:40:25 ] if (true) { } を支持する人はメソッドも public void Procedure() { } 派?
293 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:40:39 ] >>291 VSは賢いので開発者の好きにカスタムできます
294 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:41:24 ] お作法はヘジたん教に従えって事だな、つーわけで下
295 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:41:28 ] >>285 趣味等で自分の好きに書ける環境なら、好きな方を使えばok 上式で書くなら、メソッド書く時のみ中括弧を字下げ。制御文は同じ行に開始括弧を書く。 コーディング規約と違って、自分のやり方に固執したり 他のやり方に批判的だったりすると気持ち悪がられる分野だから注意。
296 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:44:28 ] if { } だと始まりがよくわからなくて困らない?
297 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:44:41 ] あれ?ヘジたんの本はK&Rスタイルだったぞ
298 名前:デフォルトの名無しさん [2009/04/25(土) 17:45:26 ] >>296 そんな事はないけど、C#なら当然それは使わない!!
299 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:45:59 ] ごめんヘジたんのエディタいじってそうなるようにしちゃったの
300 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:48:20 ] C#の話をしてる時でも Java歴が長くてJava信奉の厚い人は わざとK&Rで書く人多いよね
301 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:49:20 ] >>300 掲示板に書くときは狭いからそうすることも多いけど、コードはK&Rでは書かないな
302 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:52:09 ] JavaScriptでK&Rみるとなんかむかつく
303 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:55:12 ] 大体、K&Rは歴史的資料、古典なんだから、それのスタイルで書こうとするなよ。 「福沢諭吉に感銘受けたので旧仮名遣いで日本語書きます」って言ってるようなもんだろ。
304 名前:285 mailto:sage [2009/04/25(土) 17:55:40 ] どうもです。 自分の読んでるオブジェクト指向の入門本がJavaを扱って書かれているので その書き方をしていたみたいです。 どっちでも良いということなので安心しました。
305 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 17:56:00 ] K&Rなぞ知ったことではないが行が嵩むのが嫌なので趣味コードは中括弧は全部同じ行 会社では大体VSのデフォルトそのままだから下げ
306 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 18:01:23 ] 最近Windowsシャットダウン時にCSC.EXEが出る様になた。 .NET Frameworkは3.5(x86) プログラムに問題が有るのかなぁ?
307 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 18:01:40 ] クラスもメソッドも{を同じ行にしてるの?
308 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 18:02:37 ] >>307 異教禁止
309 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 18:09:22 ] K&Rで書く人見ると 思わず英語で喋っちゃった帰国子女っぽくて鼻につく
310 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 18:10:57 ] 爺さんはみんなK&Rだぞ、return(0); だし、いちいち気にするな
311 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 18:13:26 ] >>309 見事に的を射た表現だな ただ漏れには非K&Rで書かれてるコードのインデントの意図が さっぱり理解できない >>310 待ってくれ。K&Rは return 0 だ
312 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 18:14:21 ] そりゃ新しいK&Rだ、+= が =+ 時代からやり直し
313 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 18:23:38 ] >>312 漏れ生まれてないYO でもお年寄りは国の宝っていうから従っとく
314 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 18:28:43 ] >>313 だから異教は禁止、ヘジたんに従え
315 名前:デフォルトの名無しさん [2009/04/25(土) 18:46:02 ] 発行した書籍数の多さと年季が信頼の印 連休中に勉強しよう。 www.tech-arts.co.jp/technologies/books/ 連休明けの仕事が楽しみなるよ!!
316 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 18:59:07 ] >>314 いやいや、Visual Studio のデフォルト設定に従えって。
317 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 19:00:29 ] Visual Studio のデフォルト設定はヘジたんスタイル
318 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 21:54:45 ] ヘジたん大好きdelphiは if begin end; だから、 if { } じゃなきゃだめだお
319 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 21:58:23 ] でもべーしっくは if then endif だお
320 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 22:41:44 ] if〜else if〜elseのときコメントはどこに書いてる? //コメント1 if() { } //コメント2 else { } こんな感じで書くとインデントも揃ってて見やすいけど閉じ括弧とelseが離れちゃってて気持ち悪い。 if() { //コメント1 } else { //コメント2 } こっちの方がいいのかな?でも条件式にコメントしたいときとか、コメントが連続で2行になることとかあって書きづらい。 C#の標準的にはどうなの?
321 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 22:48:02 ] ほとんど、そういうコメントを書きたいと思うことがないけど、たまにあるね 俺は上派 下だとインデントされるから、条件式のコメントじゃないみたいだから でも気持ち悪いから //条件式コメント1 //条件式コメント2 if() //中身のコメント else //中身のコメント よほどの事がなければ、こんな感じで書いてる
322 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 22:49:21 ] コメント記述のマナーについては語る価値はあると思うが、 コメントの記述位置そのものについては通常言語仕様で語られる範疇ではない。 AdaやPythonだと決められてるかもしれないが……。
323 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 22:58:08 ] 俺はコメント書かない派だから、どうでもいいな。
324 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 23:10:31 ] if() { // comment } else { // comment }
325 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 23:47:13 ] 一行内に書くのはフィールドくらいでいい
326 名前:デフォルトの名無しさん [2009/04/26(日) 00:06:17 ] インデントなんて好きにすればいいの・・・。 どうせVSのインデント設定で一括変更とかある程度できるっしょ。 そもそもいろんな言語の国内外のソースよんでりゃ、 インデントがどうのなんて瑣末な問題だと思いますよ?
327 名前:デフォルトの名無しさん mailto:sage [2009/04/26(日) 00:10:46 ] インデントは全角スペース2個分で、タブを維持する(スペースに変換しない)じゃないと嫌
328 名前:デフォルトの名無しさん mailto:sage [2009/04/26(日) 11:50:13 ] 文字列変換の際に hoge.ToString()にするのと (string)(hoge)にするのとで どのような違いが生じるのでしょうか?
329 名前:デフォルトの名無しさん mailto:sage [2009/04/26(日) 11:54:36 ] 下は変換じゃなくてただのキャスト hogeがstringでない限り失敗する
330 名前:デフォルトの名無しさん mailto:sage [2009/04/26(日) 16:39:43 ] string型じゃない変数を使って試してみると一発でわかるはず。
331 名前:デフォルトの名無しさん mailto:sage [2009/04/26(日) 17:32:38 ] >>329 implicitやexplicitな変換が定義されていればstringでなくてもいけるだろ。 まあstringに対してそれをやるやつはなかなかいないとは思うが。
332 名前:デフォルトの名無しさん mailto:sage [2009/04/26(日) 19:22:27 ] キャストとはいうものの、Cのキャストとはまるで別物なんですかね。変換方法が定義されていることが前提?
333 名前:デフォルトの名無しさん mailto:sage [2009/04/26(日) 19:25:58 ] 変換方法が指定されていなければ冷害が発生する
334 名前:デフォルトの名無しさん mailto:sage [2009/04/26(日) 19:33:07 ] そもそも別言語だからまるで違うんですかって聞かれることに違和感を覚える
335 名前:デフォルトの名無しさん mailto:sage [2009/04/26(日) 19:34:06 ] そしてイナゴが・・・ 次の収穫は期待できないなw
336 名前:デフォルトの名無しさん mailto:sage [2009/04/26(日) 19:38:52 ] >>332 int←→doubleとかvoid*←→int*のような暗黙的・明示的な型変換はC#にもあるぞ。 その上で、さらに任意の型間でキャスト演算子を使えるようにimplicit/explicit operatorを定義できるのがC#。
337 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 00:31:54 ] Rubyを始めて、しばらくぶりにC#やるとすごい・・・ なんかすごい
338 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 01:45:42 ] TabControl で、TabPages.Count が 0 の時に 「メニューから項目を表示してください」 って TabControl に表示させたいんですが、良い方法を教えてください。
339 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 01:58:28 ] ToolTipTextかStatusStrip
340 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 02:00:17 ] TabControlを継承したコントロールで OnPaintをオーバライドしてGraphicsで描画
341 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 02:25:00 ] 継承しなくてもイベントでいいじゃん
342 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 13:28:58 ] DataGridViewオブジェクトに対して、 DataTableオブジェクトをバインドしてみたのですが View.DataSource = Table; こうするとスクロールバーの機能がおかしくなります。 スクロールバーがあるであろう矩形領域は再描画がされなくなり、 マウスでクリックしても表示項目が変更されません。 どなたかご教示お願いします。
343 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 16:05:27 ] すみません、教えて下さい。 C#のフォームに自作のActiveXを貼りました。 このActiveXを操作したいのですが、ActiveX側の自作関数が見えません。 関数は、ディスパッチインターフェースに追加しました。 どうやったら、見えますでしょうか? そもそも、好きに関数を作れば呼び出せるというものではないのでしょうか?
344 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 16:21:23 ] できる。やり方が悪い。 ちょっと違う名前空間が前についていることがあるのでよく探してみよう。
345 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 18:15:27 ] >>337 何がすごいの? ものすごいの?
346 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 00:48:29 ] アプリケーション設定の propertes.Default.setting1.変数名 this.変数名みたいに、短くできないですかね。
347 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 04:22:25 ] staticなプロパティの返値にすれば Class.PropertyNameで取得できるんでね?
348 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 14:08:40 ] >>344 有難うございます。 ActiveXTestという名前でActiveXは作りました。 Axが頭について、AxActiveXTestという参照?がC#のプロジェクトには 見えているのですが、望む追加関数は、_DActiveXTestという インターフェース? にあるのかどうなのか、結局見えません。 これはActiveX(C++)側の関数の作り方が悪いのでしょうか? 手作業で、idlファイルを書き換える必要ありますか?
349 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 15:50:20 ] すみません、リビルドしたら見えました。
350 名前:デフォルトの名無しさん [2009/05/01(金) 17:01:16 ] クラスに定義されているイベントへ複数の箇所からイベントが登録されるのですが、登録された際、任意の共通処理を行いたいのです。 delegate void hoge(); class sampleClass { public event hoge hogeEvent; public void callEvent() { this.hogeEvent(); } //↓イベントが追加される度に呼び出される private void addEventCom() { : } } class mainClass { public static void main(string arg[]) { sampleClass o = new sample(); //↓このタイミングで任意の処理を行いたい(addEventComを呼び出したい) o.hogeEvent += delegate() { : } : o.callEvent(); } } 最初、「演算子のオーバーライド(+演算子)でいけるのでは?」と思ったのですが、根本的に間違っていることに気付き... 何かよい方法はないでしょうか?
351 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 17:06:16 ] 方法 : カスタム イベント アクセサを実装する (C# プログラミング ガイド) を見れ
352 名前:350 [2009/05/02(土) 03:08:00 ] >>351 add / remove ありがとうございました。m(_ _)m 〜追記〜 add / remove を定義する際、マルチスレッドを考慮してlockをかけた 方がいいとおもうのですが、自インスタンス(this)でlockをかけるのは 過度だと思い、lock専用のインスタンスを定義してそのインスタンスに 対してlockをかけるようにしたのですが、一般的でしょうか?
353 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 03:22:45 ] 一瞬イベントの定義かとおもって dobon.net/vb/dotnet/vb2cs/event.html 貼り付けたけど違うんだねわかった
354 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 04:47:02 ] >>352 一般的<lock用のインスタンス作るの
355 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 13:01:18 ] ものすごく初心者的なことで悪いんですが 娘が全寮制の高校に通っているのですが 学校でやっているCを自宅に帰ってきてからも やりたいというのですが。 ウルトラCとかいうのを学校では使っている そうなのですが調べてもダウンロード販売ばかりで パッケージ販売が無いようなんです。 しかもダウンロード販売も、実際には販売終了ばかりで。 当方、プログラミングは20年前にN88basicとMASMで終わっている 爺いなんで、どれを購入して娘に与えればいいか アドバイスお願いします。
356 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 13:05:08 ] VIPでやれ
357 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 13:09:31 ] GWらしい釣りだな
358 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 13:22:55 ] なんかバベられてね?
359 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 14:35:48 ] バベるって何? 神に挑戦すること?
360 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 16:28:56 ] >>355 Visual Studio 2008 Express Edition(無料)
361 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 16:34:59 ] ところでウルトラCって実在するの?
362 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 16:38:23 ] >>361 ggrks
363 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 21:05:41 ] >>355 Niftyでダウンロード購入可能っぽいが store.nifty.com/goods/goods.aspx?goods=00803LBTE001
364 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 21:18:45 ] 過去の遺物にもほどがあるな この程度の教官に教わるしかないとか気の毒すぎる
365 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 21:20:00 ] サポ終了してるので購入は慎重にしたほうがいいかも試練 ttp://www.runexy.co.jp/news/release/news_080602b
366 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 21:21:14 ] うん?高校生?
367 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 22:25:19 ] 言語に違いないんだからVSでやればいいだけだろに
368 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 01:53:27 ] インライン関数じゃない書き方を教えてください
369 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 02:05:52 ] 何の目的で?
370 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 02:21:59 ] まず質問に答えたら教えてやりますよ
371 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 02:29:46 ] >>370 まず目的を答えたら教えてやりますよ
372 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 02:35:19 ] それなりの誠意を見せてくださいよ
373 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 02:38:31 ] じゃあいいや
374 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 02:41:18 ] 威勢がよかった割にはあきらめの早いことで。 MethodImplAttributeでMethodImplOptions.NoInliningを指定するのがそれっぽいことくらい ぐーぐる先生はすぐ教えてくれたろうに。
375 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 02:43:06 ] 解説くらいしろよ役立たず
376 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 02:55:28 ] つか目的書いてくれんとマジで。 NoInlining はインライン最適化は確かに抑制するけど目的が コールスタック保持とかならこれは一部で意味がないとかあるし
377 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 06:27:42 ] なんか>>368-373 がテンポいいんだけどちょっと屋上までこいや
378 名前:デフォルトの名無しさん [2009/05/03(日) 11:37:43 ] よく画像に映数字が書かれてて それを入力して認証するようなのがありますが あれを実現するライブラリってありますか? あとWebAPIなんかでも公開されてるんすかねえ?
379 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 11:50:05 ] CAPTCHA認証でググってそれっぽいのを探したら良いんじゃないか WordPress用のは使ったことがあるから誰かモジュール化してるかもね
380 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 12:35:56 ] internal static string s = "hage"; このsの値が変更されるのを防ぐにはどうすればいいですか
381 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 12:44:54 ] readonly
382 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 13:15:51 ] ありがとうございます
383 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 15:43:44 ] ブラウザのURLのクエリ情報を解析したりするクラスってありますか? search.yahoo.co.jp/search?p=URL%E6%83%85%E5%A0%B1++C%23&ei=UTF-8&fr=top_ga1_sa&fl=0&x=wrt&meta=vc%3D でeiの項目を取得したり、pの項目を取得できたりみたいな
384 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 15:46:02 ] 探すより自作したほうが早いような
385 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 15:49:29 ] URIの制限で?と&でしか連結できないんだからSplitすればすぐできるだろう
386 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 15:59:10 ] よーし楽天が一気に7得点したから自作してみるぜ
387 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 16:46:13 ] できたこんなんでいいのかな?サンクス public Dictionary<string, string> GetQueryData(string uri) { Dictionary<string, string> dictionary = new Dictionary<string,string>(); string queryString = uri.Split('?').Length == 2 ? uri.Split('?')[1] : ""; foreach (string query in queryString.Split('&')) if (query.Split('=').Length == 2) dictionary.Add(query.Split('=')[0], HttpUtility.UrlDecode(query.Split('=')[1])); return dictionary; }
388 名前:デフォルトの名無しさん [2009/05/03(日) 17:47:27 ] すげえじゃん
389 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 18:28:05 ] >>387 今更ではあるが、 つ HttpUtility.ParseQueryString HttpUtilityまで見ているのに、何故気付かないのかと あと、>>387 だと http://...?hoge=1&hoge=2 とか駄目だな
390 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 19:06:33 ] >>389 >ParseQueryString ぬぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉ >あと、>>387 だと http?://...?hoge=1&hoge=2 とか駄目だな なして?
391 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 19:11:54 ] Dictionaryのキーが同じだから上書きされてしまう。
392 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 19:14:52 ] なるほど、そういうことか サンクス でもそれ受け取った側はどうなるんだべなってのは サーバサイドの問題か
393 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 19:34:01 ] まあ要素には全てArray入れればいいけどな
394 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 19:39:58 ] >>393 そうなんだけど、結局、どっちかを無視するしかないんじゃない? GETで同じのが複数渡された場合、別々の動作をさせることは不可能なんだから
395 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 20:16:50 ] ひとつのキーに複数の値を受け入れるサーバサイドアプリもあるよ たとえばこんなの <input type="checkbox" name="item" value="1" /> <input type="checkbox" name="item" value="2" /> だからこういうフォームを吐くなら値は配列で持たなきゃいけないし 吐かないならどれかひとつで足りる。残りは捨てても構わない
396 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 21:59:25 ] >>395 エッ(゚Д゚≡゚Д゚)マジ?
397 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 22:25:34 ] 例えばPHPあたりでは ?hoge[]=0&hoge[]=1 で配列送れるし ?hoge[foo]=bar で連想配列も送れた筈。 ?hoge=0&hoge=1 みたいな時の挙動は知らん
398 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:06:54 ] int x = 0; x = x++; の後に x の値見ると C++ は 1 なのに C# は 0 なんだな…
399 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:07:29 ] ファイルなどの不定長データを配列に格納する場合 .NET1.xの仕様だと配列を再宣言してコピーする操作が必要だから 大きめに配列を宣言しないといけないってググッたら出てきたけど それって本当だったんですか? .NET2.xからは可変長な配列が作れるような仕様に なったって認識で良いですよね?
400 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:16:24 ] 何だよ、可変長な配列って。 エスパーするに、ListとかArrayListってのが可変長だよ。 つか >>ファイルなどの不定長データを配列に格納する場合 って何?まさかbyte配列に格納しようとか言うつもりか?
401 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:19:29 ] >>399 入門書一冊読んでこいよ C#以前にプログラミング言語習得したことないだろ まー理解できるか知らんけど説明すると ValueTypeを格納するコレクションが提供されていなかっただけ パフォーマンスを気にしなければArrayListに格納できた 2.0からはList<byte>が利用できる
402 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:22:48 ] 俺は1.0当時から可変長ファイルの読み込みにはMemoryStreamを使っていたから、 別に可変長配列を使う必要なんかなかった 単にそのライターがしょぼいんだよ
403 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:24:12 ] byteだったらmemorystreamにでもIREROYO
404 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:25:48 ] 内部配列の初期サイズについて言ってるんじゃね?
405 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:29:20 ] >>390-394 インデクサなら上書きで済むけど、Add だとキーが被った時点で例外吐くでしょ 1つしか利用できないとかいう以前に、その1つすら取れないじゃないか まあ、HttpUtility.ParseQueryString がカンマ区切りなのは、 全部配列にすると面倒だが、フレームワークの実装としては 2個目以降を捨てるわけにもいかないという状況での妥協点だな
406 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:37:00 ] >>398 C/C++/C# すべてその結果は未定義じゃなかったか? 気のせいだったらすまんが。
407 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:37:32 ] >>398 C++ は未定義じゃねーの? 少なくとも、C では未定義。
408 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:45:21 ] C#は変数を使用する前/後に更新していると思う
409 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:46:42 ] やべ、ちゃんと見てなかった
410 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 00:17:38 ] うーん、未定義でござるか。 演算子の優先順位を考えると C# の動きで正しそうでござるが。
411 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 00:17:50 ] C#の場合は未定義じゃないね。 y = x++; は、 temp = x; operator ++(x); y = temp; と展開されるのが本則。(2行目はコンパイル通らんと思うが) yをxに置き換えると、xにも(y同様)最終的に0が代入されるよね。
412 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 00:34:51 ] >>411 ttp://msdn.microsoft.com/ja-jp/library/ms173145(VS.80).aspx >ただし、次のコード例の出力は未定義です。 >C# >int num2 = 5; >num2 = num2++; //not recommended >System.Console.WriteLine(num2); ↑の記述でそう思ってたんだけど今見たら ttp://msdn.microsoft.com/ja-jp/library/ms173145.aspx >未定義の出力について誤りのある説明を削除 ウヴォアァ。パネェ、MSDN マジパネェ
413 名前:411 mailto:sage [2009/05/04(月) 00:43:31 ] おっと失礼。結局の所 int x = 0; int temp = x; x = operator ++(x); x = temp; ですな。3行目はoperator抜かないとコンパイル通らない。 (意味的には抜いてOK。後置++が特殊) >>412 ははは。先入観でしょうね。
414 名前:デフォルトの名無しさん [2009/05/05(火) 06:20:30 ] おはようございます C#の勉強をし始めたのですが Console.WriteLine( "{0:#.##}" ,1.1 ) とかですと問題なく表示されるのですが Console.WriteLine( "{0:#.##}" ,0 ) にすると表示がなくなってしまいます 0.1にすると0のところが消えてしまい.1だけの表示となるのですが これを0を含む数を表示させたいときは{}の中はどのように書けばいいのか教えていただけないでしょうか
415 名前:デフォルトの名無しさん mailto:sage [2009/05/05(火) 06:37:46 ] {0:0.##} とか {0:0.00} 書式の説明はMSDNにあるが何箇所かに分かれていてちょっと探しにくい。 {0:#,0.00}なら普通は {0:N2}と書くかな。
416 名前:デフォルトの名無しさん [2009/05/05(火) 06:47:46 ] ありがとうございます 頭の0が省略されずにちゃんと表示されました ほんの少し違うだけで結果が全然違うようになるんですね、、
417 名前:デフォルトの名無しさん mailto:sage [2009/05/05(火) 10:09:31 ] そりゃ、ゼロ詰めの有無くらい両方できるようでないと使いづらい。
418 名前:デフォルトの名無しさん mailto:sage [2009/05/05(火) 22:43:52 ] トライフェーズって何すか?trycatchのことっすか?
419 名前:デフォルトの名無しさん mailto:sage [2009/05/05(火) 22:50:17 ] >>418 try clauseじゃなくて? とりあえずどんな状況でその言葉が使われてたのか知りたい
420 名前:デフォルトの名無しさん mailto:sage [2009/05/05(火) 22:52:29 ] トライパースTryParseだったりして
421 名前:デフォルトの名無しさん mailto:sage [2009/05/05(火) 23:05:13 ] >>419 文字列変換をするところでエラーで無いようにトライフェーズしておいてって言われました >>420 トライパース調べてみたらそんな気が・・・ しかしどうやって使うんすか? 引数に文字列と型を渡したら変換してくれる?
422 名前:デフォルトの名無しさん mailto:sage [2009/05/05(火) 23:08:10 ] Int32 i; if(Int32.TryParse("10",out i)){ // 成功 }else{ // 失敗 } こんなん
423 名前:デフォルトの名無しさん mailto:sage [2009/05/05(火) 23:10:24 ] >>422 thx なるほど変換に成功したらiに変換後の値が入ってくれるのね まじthx!
424 名前:デフォルトの名無しさん mailto:sage [2009/05/05(火) 23:31:11 ] >>421 クオート付けて "トライフェーズ" でGoogleで検索してみるとわかるが、 そんな用語は恐ろしくレアだぞ。 何かを聞き間違えてるから、まずはそれを確認するべき。
425 名前:デフォルトの名無しさん mailto:sage [2009/05/06(水) 11:33:27 ] foreach(MemberInfo m in members)の中で m.Nameが御目当ての値になったらdataGridView1.AutoSizeColumnsModeに突っ込みたいんだけど dataGridView1.AutoSizeColumnsMode = m.Name て書いたら型が違うと怒られました。 m.Nameをどう型変換細工してやれば怒られずに済みますか。
426 名前:デフォルトの名無しさん mailto:sage [2009/05/06(水) 11:37:58 ] そのm.NameはDataGridViewAutoSizeColumnsMode列挙体のメンバに含まれてる名前なんだな? Enum.Parseで文字列から列挙体に変換できるが
427 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 04:34:16 ] 初回起動が遅い 10秒かかる
428 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 09:34:09 ] ひさしぶりだなあお前w
429 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 22:59:43 ] 起動が遅いとか言ってる奴は情報の入手が遅い
430 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 09:50:24 ] Windows 標準の「ネットワークドライブの割り当て」ダイアログを表示する方法ってありますか?
431 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 11:09:03 ] はいどうぞ。 ttp://www.tsware.jp/tips/tips_232.htm
432 名前:430 mailto:sage [2009/05/09(土) 14:18:55 ] >>431 ありがとう!
433 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 15:08:43 ] C#入門ってここらあたりでいいんですかね。 www.atmarkit.co.jp/fdotnet/csharp_abc2/index/index.html あとフォームデザインなんかのVSの使い方解説してるお勧めサイトあったら教えてください。 書籍買えばいいんだろうけどせっかくでかいモニタでデュアル構成にしたから C#&.NET入門はとりあえずオンライン一本でやってみようかなと。
434 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 15:22:32 ] MSDN
435 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 16:13:36 ] >>22 (ってこんなに前のにレスするのも悪いが、指摘しといたほうがいいので) それはSambaの設定が悪い。smb.confにcase sensitive=yesって設定すれば Windowsからどちらのファイルにもアクセスできる。 Windows自体は大文字小文字を区別するんだよ。ファイルシステムも区別 するようになってれば、正しい取り扱いが出来る。 NTFSが区別しないだけ。
436 名前:22 mailto:sage [2009/05/09(土) 16:50:21 ] >>435 早速試してみた。 Explorerからメモ長で開く、copyコマンドによるコピー、typeコマンドによるファイルリダイレクトで 読み込み、書き込みにおいてファイル名の大文字小文字が区別しうることを確認できた。 しかし、常用しているEmEditor(複数のファイルを1プロセスで開くタイプのエディタ)では 大文字小文字違いのファイルを同時に扱うことができなかった。 Windowsが標準で使えるFAT12、FAT16、FAT32、NTFSでは いずれも大文字小文字違いのファイルは作成できず、 その挙動が前提となっているアプリも(少なからず)あるわけで、 残念ながらその指摘は現実的なものではないと思う。
437 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 19:51:26 ] その程度の技術知識しかない人間が作ったものを良く使う気になれるな…
438 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 20:04:50 ] >>436 そういうソフトウェアが結構あるのは承知してる。 >>22 みたいな一見もっともらしい検証が、Windowsはファイル名の大文字小文字を 区別しないという誤解をますます蔓延させて、いつまで経ってもそういう仕様の 不具合がなくならない一因になってると言っても過言ではない。。 それを指摘したかっただけであって、現在現実的かどうかはどうでもいい。
439 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 21:00:00 ] Microsoft製品はWindows NTをPOSIX互換にしたとき以来ちゃんと対応してる筈だが、 サードパーティーではそこまで気を配れてるのは少ないだろうな。
440 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 21:07:16 ] >>438 そもそもSambaはSMB/CIFSプロトコルを理解するWindowsの互換環境に過ぎないわけだが。 クライアント側がファイルを読み書きするとき、クライアントはファイル名をそのままファイルサーバー側に投げているだけで、 ファイル名のチェックを行うのはファイルサーバー側だ。 従って、Windowsはファイル名の大文字小文字を区別する、という主張は成り立たない。
441 名前:デフォルトの名無しさん mailto:sage [2009/05/09(土) 21:10:37 ] 何を言ってるんだ…
442 名前:デフォルトの名無しさん [2009/05/10(日) 01:11:28 ] Frameworkについての質問もいいですか? System.Windows.Media.Imaging内のBitmapSourceは抽象クラスとあり、 インスタンスの生成ができないようにしているのはわかるのですが、 メンバのCreateメソッドでBitmapSourceオブジェクトを作れるようになってます。 わざわざこのような方法をとるのはどのような理由があるんでしょうか? ふつうにインスタンスの生成可能なクラスでもいいような気がしますが 抽象メンバも見当たらないですし…見逃してるかもしれないけど
443 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 01:22:35 ] >>442 Hint: Factoryパターン BitmapSource.CreateはBitmapSourceの子クラスを返す。
444 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 01:25:46 ] ちなみにCreateInstanceCoreがabstractのままだ
445 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 01:36:23 ] >>443-444 なるほど、調べてきますどうもありがとう
446 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 18:39:37 ] C#にはオブジェクトを丸ごとファイルに保存するようなクラスってありますか? objectwiter.write(objectname); こんな感じで。 たしかJavaにはあったのですが。
447 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 18:44:03 ] BinaryFormatterとかXmlSerializer どっちも癖があるけどな
448 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 19:15:00 ] おおサンクス ためしてみます!
449 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 19:47:43 ] INIファイル代わりに使おうとするとプロパティの増減でいちいちエラー吐くのがな。 もっと緩いシリアライザってないのかね。
450 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 22:03:31 ] 簡単なアプリなら、断然ApplicationSettingsBaseだな。 ファイルを保存するという感覚すらないし、 設定をコントロールの表示に直接関連付けすれば読み書きするコードがだいぶ省けるよ。
451 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 22:36:58 ] The Code Project Open License (CPOL) 1.02 ってどんなライセンス? 英語はわかんね。 ttp://www.noppi.jp/diary/?date=20080227 ここみると商用不可って書いてあったりするんだが、 どんなもん?
452 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 22:41:03 ] ここで教えて貰ったとして、それを信じるのか?
453 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 22:41:28 ] ライセンスは他人とくにこんな誰ともつかん掲示板で聞くようなもんじゃないよ わからないライセンスなら使わないという選択肢しかない
454 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 22:47:39 ] >>451 ライセンス内容と全然違う事書いてて笑った。 何度も強調されてる部分をどうして取り違えるんだろうな
455 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 22:49:00 ] 聞くならUNIX板あたりか www.domo2.net/search/search.cgi?word=%83%89%83C%83Z%83%93%83X&tnum=50&sort=res+desc
456 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 23:03:30 ] >>451 読んだ。 何が知りたいの? COPLのソフトウェアを組み込んだ商用ソフトウェアを作ることは可能だよ。 ただ、全体としては、ちょっとオープンソースとかフリーソフトウェアの ライセンスと呼ぶには変な制限が多いライセンスかも。
457 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 23:04:37 ] CPOLだったね。 >>455 Code ProjectはMS系の環境のものが多いから、UNIX板ではないかも。
458 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 23:12:06 ] そういう縛りは特にない
459 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 23:36:06 ] Windows API Code Pack v0.85 きたけど code.msdn.microsoft.com/WindowsAPICodePack ・Support for Direct3D 11.0 and DXGI 1.0/1.1 APIs. Direct3D 11.0 をサポート・・?なん・・だと・・・
460 名前:デフォルトの名無しさん [2009/05/11(月) 01:54:43 ] DXGIってなんだろ?
461 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 02:23:21 ] Direct3D のうちあまり変わらないところというかコア部分を分離した やつ。今の Direct3D は DXGI と Direct3D と D3DX から構成される 具体的には、DXGI はテクスチャ、サーフェス周り(フォーマットとか そんなの)とかアダプタの管理とかそんなの。 >>459 見た感じ SlimDX の焼き直しにしか見えないというかんーむ。 フルマネージにしないの?
462 名前:デフォルトの名無しさん [2009/05/11(月) 10:57:13 ] 質問なんですが、テーブルイベントでROWSPANは、使えないのでしょうか?
463 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 11:33:05 ] 出来るだけIDEに依存しないようにプログラムを書いた方がいいの?
464 名前:デフォルトの名無しさん [2009/05/11(月) 11:50:13 ] いえVSを使用しているのでそこは特に考えていません。 それとROWSPANじゃなくて、COLSPANでしたorz 一応わからない所のソースを載せておきます。 TableRow r = new TableRow(); TableCell c = new TableCell(); c.BackColor = System.Drawing.Color.Aqua; c.Controls.Add(new LiteralControl("TEST")); c.Width = 100; c.colspan = 2; ←できない・・・ r.Cells.Add(c);
465 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 11:51:03 ] 開発・保守が自分の中だけで完結するんだったら気にしないでいいんじゃないの
466 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 11:59:29 ] 唐突でわかりにくいんだが、WPFの話? もしそうならこっちのがいいかも WPF(XAML,XBAP,.NET3.5)GUIプログラミング Part3 pc12.2ch.net/test/read.cgi/tech/1231506876/
467 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 12:04:16 ] ってBackColorがあるのはASP.NETか まあ環境書けばここでもいいけど、書かないとわからんぞ・・・ ASP.NETのスレもある 【質問】ASP.NETスレ Part5【議論】 pc11.2ch.net/test/read.cgi/php/1232671611/
468 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 12:08:29 ] で、ちょっとコード貼っつけて見たけどIDEの補間で c.ColumnSpanが出てきたけどこれじゃないの?
469 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 12:44:42 ] あるstringの変数が空文字かどうか確かめる場合、 以下のどれを使うのが良いですか? また、どれが一番早いですか? if (str == "") if (str == string.Empty) if (str.Equals("")) if (str.Equals(string.Empty)) if (str.Length == 0)
470 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 12:57:30 ] 速度はそこがボトルネックであることが判明してからでいい == で空文字列どっちかと比較が見やすくていいんじゃないか
471 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 14:08:24 ] ありがとうございます if (str == "") if (str == string.Empty) が見やすくていいということですね。 見た感じわかりやすいので上のでいきたいと思います。
472 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 14:11:45 ] そういうのって最適化されるんじゃないの?
473 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 14:19:12 ] 文脈によるしね。 そのコードの前後関係によって空文字であるかより、 長さゼロであることが主目的であればLength見るし。
474 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 15:35:17 ] String.IsNullOrEmptyも選択肢に加えてあげてください
475 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 15:37:56 ] よかったなC#は Javaだとコンパイラの最適化でリテラルプールに同じ文字列が放り込まれて しまう事があるので==は使えないんだよなあ
476 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 15:41:54 ] >>474 nullは別用途かも知れん
477 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 15:54:25 ] >>475 逆じゃね?同じ文字が別のリテラルテーブルに放り込まれることがあるだと思うが。
478 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 16:02:07 ] >>447 両方だろ問題になるのは
479 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 16:10:47 ] C# の String.Clone って自分自身を返すんだな。 ちょっとビビった。
480 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 16:20:19 ] そりゃイミュータブルやし
481 名前:デフォルトの名無しさん [2009/05/11(月) 16:24:30 ] ありがとうございます! 解決しました!!
482 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 16:25:42 ] だれよw ここ最近で上げてるのは、、>>462 かな
483 名前:デフォルトの名無しさん [2009/05/11(月) 16:42:44 ] あぁすみません! >>468 さん ありがとうございました!!!
484 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 21:49:08 ] string型のプロパティでいちいちString.Copy()した値を返しているのを見たときは 気持ちはわかるがやりすぎだと思った。
485 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 23:07:21 ] >>443 すんません、クラスを返すとはどういうことでしょうか?
486 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 23:21:30 ] インスタンスを返すの間違いじゃね
487 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 11:03:05 ] 所略してるだけだろう
488 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 11:04:06 ] 省略、、、
489 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 11:46:56 ] 空気を読まずにSystem.Typeといってみる
490 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 18:36:38 ] C#をはじめて、今まで使われていたVBのアプリケーションを C#に移行しようと思っています。 OCXの参照設定が分からなくて、アドバイスをいただきたいと思っています。 開発環境はWindowsXPでVS2008です。 分からないのは、参照設定にVBで使われていたocxを選択して、 画面には参照設定の部分に出てくるのですが、 オブジェクトがうまく作られない状態なのです。 COMをC#で使う場合何か特別な記述が必要ですか?? よろしくお願いいたします。
491 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 19:14:44 ] オブジェクトがうまく作られないとは? あと、可能ならどんなocxかわかると理解が早いかもしれない
492 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 19:35:02 ] >>490 ActiveX コントロールなら、参照設定ではなく、ツールボックスに追加する。 で、フォームに貼り付けると。
493 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 15:59:01 ] C#に直接は関係ないんですが、 変数名の頭にmyをつける理由はなんですか?
494 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 16:09:54 ] MS サンプルの変なクセ
495 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 17:26:13 ] C#学習に難儀しております。 学習に最適なStarterKitか何かをご紹介いただけないでしょうか・・・。
496 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 17:28:35 ] C言語から始める
497 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 17:48:31 ] アセンブラからやれ マジレスすると、作りたい物を調べながら作れ 自然と覚える
498 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 17:49:48 ] >>495 どう難儀してるか書いてごらん。 書けないんなら、そっちが問題。
499 名前:デフォルトの名無しさん [2009/05/13(水) 21:44:28 ] >>493 だって、マイコンピュータなんだもんw しゃーないべw
500 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 22:23:01 ] さすがにVistaでマイはなくなったよ。
501 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 22:31:23 ] そして 7 でコンピューター
502 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 22:36:29 ] サンプルソースはVBの分も作らなきゃ行かんので Book book = new Book(); にしてしまうと大小文字を区別しないVBで困ってしまう。 Dim myBook As New Book だからmyBookつうわけ。
503 名前:デフォルトの名無しさん [2009/05/14(木) 13:44:42 ] 子フォームから親フォームのオブジェクトを参照したいのですが showdialog(this) で子を表示した後に子からthis.Owner を確認してもnullになっています どうすれば親を設定できるのでしょうか?
504 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 14:05:33 ] すみません、直後に思いついて自己解決しました 子フォームでオーナーを確認するのが早すぎたようです Loadで確認したらきちんと入っていました お目汚し失礼しました
505 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 14:48:56 ] メニュー項目の変数名が漢字になるのが気持ち悪すぎるんだけど 慣れろって話?
506 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 15:53:55 ] 好きなように変えればいいだろ、って話。
507 名前:デフォルトの名無しさん [2009/05/14(木) 19:19:26 ] 1
508 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 21:49:56 ] ボタンが押されてイベント発生し イベント内でwhileなどを使って処理を繰り返してる時に Form内のラベルのテキストに現在値を更新するようにしても 表示が更新されないままwhileが終了し 進歩が確認できないのですが? なぜなんでしょうか? どうやったら更新されるのでしょうか?
509 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 21:57:30 ] この質問は本当に定番だな 描画も同じスレッドでやるから、whileで回ってる間は描画できないんだ 明示的にRefreshするのが手っ取り早いけどメッセージループが回る落とし穴 BackgroundWorkerを使うのが吉
510 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 22:02:00 ] ループの最後でupdateすりゃ良いだけじゃないのか・・・?
511 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 22:03:44 ] >>508 while が終わるまで描画されないから。 Refresh() と Application.DoEvents() を入れれば更新される。 お勧めはしないけど。
512 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 22:04:19 ] >>509 ありがとうございます。 ちょっと調べます。
513 名前:デフォルトの名無しさん mailto:sage [2009/05/15(金) 11:06:01 ] >>498 設計から実装までの全体像がわからずに困っています。 いろいろなサイトを見ていても、設計について言及しているものはあっても そこからどう実装していくかに触れているものはなく。 一方各種Tipsを紹介していてもシステム全体の中でどう使うかは例示されません。 社内には参考になるアプリも教えてもらえる環境もありません。 .NET PET SHOP がMS推奨のKitだとどこかで紹介されていましたが、 ストアドも使われていないし果たしてこれが推奨アーキテクチャなのかと・・・。 案件によってベストな解決は異なるというのはもっともですが、 何か初心者の指針になるようなアプリケーションがないかと質問させていただきました。 初心者な意見で申し訳ありませんが、ご教示いただければ幸いです。
514 名前:デフォルトの名無しさん mailto:sage [2009/05/15(金) 11:30:05 ] 初心者の俺は何を言ってるんだか理解出来ないや
515 名前:デフォルトの名無しさん mailto:sage [2009/05/15(金) 12:53:08 ] >>513 どう困ってるか分かりません。 結局何が分からないか分からないレベルなのでは。 ストアドなんて単語が突然出てくるのも分からない。
516 名前:デフォルトの名無しさん mailto:sage [2009/05/15(金) 13:40:26 ] >>513 的外れならごめん > 設計から実装までの全体像がわからずに困っています。 UMLとかOOとかに拘りすぎてて、何からどう手を付けて良いか分からない典型じゃないか? C#の勉強をしてるようだが、自分の分からない部分が 言語仕様的な部分なのか、オブジェクト指向的な部分なのか、 (ストアドという言葉が出てるので)DB接続的な部分なのか、 まず分からない部分を明確にしたらどうだ? Startkitに拘ってるようだが 「これがC#プログラムのスタンダードな構築方法だ!」って感じのプログラムでも探してるのか?
517 名前:デフォルトの名無しさん mailto:sage [2009/05/15(金) 13:48:28 ] まともな研修受けさせてくれず途方にくれてるなら手持ちの知識で突き進むしかない。 小汚くても適当に動くものをでっち上げるしかない。 ある程度組み方を理解できてから設計周りの本読んでいくと 汚い設計のデメリットと綺麗な設計のメリットを身にしみて理解できるんじゃね。 とりあえずはオプソのプロジェクトをDoxygen通して眺めてみるとか。
518 名前:デフォルトの名無しさん mailto:sage [2009/05/15(金) 14:35:46 ] >>513 はアプリの組み方が分からないといってるんだから、 本屋のコンピューター書籍のところのでも連れて行って、 本人の納得のいく入門書でも探したらどうだ……? ここで一問一答するより早かろう。
519 名前:513 mailto:sage [2009/05/15(金) 15:40:45 ] いろいろアドバイスいただきありがとうございます。 >>516 >UMLとかOOとかに拘りすぎてて、何からどう手を付けて良いか分からない典型じゃないか? そうかもしれません。 MS推奨のアーキテクチャはAAfNで、SQL文はストアドとしてDB側にまとめて・・・。 でもクラス分割をどうするのか、そこからどう実装するのか、 でも推奨Kitではストアド使わずにハードコーディングしてたり・・・。 浅薄な知識ばかりで混乱しているのかもしれません。 自分の今までの学習方法は、正解あるいは指針となる具体的な事例があって、 それと概念を結びつけることで理解を深め応用していく、というアプローチなのですが、 自社のプロジェクトにそういうものはなく、それでKitのようなものがあればと思った次第です。 >>517 助言とヒントをいただきありがとうございます。 おっしゃる通り、考えることよりも動く方が前進できるのかもしれません。 もうちょい頑張ってみます。
520 名前:デフォルトの名無しさん mailto:sage [2009/05/15(金) 15:50:44 ] そうやってひたすら書いてるうちに、数年後自分のコード見たとき 成長した自分を実感する事が出来るよ
521 名前:デフォルトの名無しさん mailto:sage [2009/05/15(金) 19:03:43 ] もし俺が億万長者なら新人〜3年目の頃に書いたコードを全部回収して焼却したい。
522 名前:デフォルトの名無しさん [2009/05/15(金) 23:55:25 ] すみません、ファイルシステムがFATなのかNTFSなのかを知ることは できるでしょうか?ググッてみたのですがわかりませんでした。 どのようなクラスを調べればよいでしょうか、よろしくお願いします。
523 名前:デフォルトの名無しさん mailto:sage [2009/05/16(土) 00:00:06 ] お前の目はとりあえずとんでもない節穴だな ttp://dobon.net/vb/dotnet/file/driveinfo.html
524 名前:デフォルトの名無しさん [2009/05/16(土) 00:03:20 ] >>523 こういういい奴をツンデレと呼ぶ
525 名前:デフォルトの名無しさん [2009/05/16(土) 00:08:58 ] >>523 あちゃー、DOBONさんところにあったんですね、すみませんでした。 一般サイトとヘルプ見たのですがヒットできませんでした。 探し方悪かったです。早急に助けて戴き、ありがとうございました! またよろしくです!
526 名前:デフォルトの名無しさん mailto:sage [2009/05/16(土) 00:40:56 ] >>525 探し方が ヘ た です!
527 名前:デフォルトの名無しさん mailto:sage [2009/05/16(土) 12:08:04 ] 検索下手な奴ってなんなんだろうな
528 名前:デフォルトの名無しさん [2009/05/16(土) 15:42:41 ] Macのメニューみたいにアイコンがスイングするライブラリ知りませんか? パクリランチャ作りたいのですが、挫折しました。
529 名前:デフォルトの名無しさん mailto:sage [2009/05/16(土) 17:28:51 ] >>528 まあ探せばあるのかもしれないが、演出は本質じゃないだろう。 そのパクリランチャとやらを作ってから考えればいいことなんじゃないか?
530 名前:デフォルトの名無しさん mailto:sage [2009/05/16(土) 18:07:53 ] 教えてください。 aという基本フォームから、a1,a2,a3と3つの継承フォームを作り、独立したdllを作成・ 利用する場合、基本フォームaも独立したdllにしたほうがよい? そうせずに、基本フォームのソースファイルを「リンクとして追加」で共有して、3つの dllを作って、本プログラムから基本フォームaを呼び出そうとしたら、aが複数のdllに 存在すると怒られてしまった。
531 名前:デフォルトの名無しさん mailto:sage [2009/05/16(土) 18:31:26 ] a1, a2, a3 を同じプログラムで使う予定があるのに DLL を分ける意味がわからん。
532 名前:デフォルトの名無しさん mailto:sage [2009/05/16(土) 20:48:45 ] 意味もなくDLLを増やすな
533 名前:デフォルトの名無しさん [2009/05/17(日) 00:36:12 ] ActiveDirectoryに接続してアカウントが所属しているグループを取得したいのですが C#でどのように書けば良いか教えていただけないでしょうか?
534 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 00:40:02 ] >>533 DirectorySearcher とかで検索すれ
535 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 15:46:42 ] C#で他プロセスのメモリの01789CF番を読み込みたいと思った時にはどうしたらいいでしょう?
536 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 15:51:41 ] ReadProcessMemory
537 名前:デフォルトの名無しさん [2009/05/17(日) 16:14:50 ] ASP.NET AJAXって何なの? AJAXならjqueryかprototype.js使えば困ること無いんですが。
538 名前:デフォルトの名無しさん [2009/05/17(日) 16:23:22 ] ASP.NET AJAX は jquery を含んでいなかったかな?
539 名前:デフォルトの名無しさん [2009/05/17(日) 18:51:10 ] メモ帳そっくりなプログラムを練習で作っているのですが、 テキストボックスのDockをFillにしつつ下部のスクロールバーをステータスバーの上に表示するにはどうすれば? 今の設定では下部のスクロールバーがステータスバーに隠れてしまうのですが・・
540 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 18:53:36 ] >>539 ステータスバーを前に出せばOK。
541 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 18:54:00 ] あ。逆か。
542 名前:539 mailto:sage [2009/05/17(日) 18:56:50 ] >>540-541 あぁ、なるほど できましたありがとう〜
543 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 20:55:24 ] >>540 それだとTextboxの下が隠れてしまわないか? TextboxをFillにするのではなく ステータスバーぎりぎりのサイズに設定した上で上下左右にアンカーをつけるか、 toolStripContainerに管理させてTextboxはContentPanelの中に入れるのが筋だと思うんだが。
544 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 21:04:45 ] >>543 隠れないよ DockがBottomになってるから
545 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 21:28:55 ] >>544 試してみた。ほんとだ。.NET Formsはよくできてるなぁ。
546 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 21:38:16 ] 謝罪が先だろ 試しもしないでケチつけやがって
547 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 21:43:25 ] 謝罪w を 要求するニダwww
548 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 21:46:42 ] それがお前の答えか
549 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 21:46:54 ] 賠償を要求してこないだけマシだなw
550 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 21:49:16 ] 最低だなお前
551 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 21:50:52 ] くだらん煽りはやめやめ。 管理者が殺伐を推奨してる掲示板で何言ってんだか、って感じ。
552 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 21:59:27 ] 何ってなんだよ
553 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 22:48:59 ] 質問です。ここのサンプルで、XElementをintにキャストできるのは何故?('A') msdn.microsoft.com/ja-jp/library/system.xml.linq.xelement (VS.95).aspx
554 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 22:52:56 ] キャスト演算子をオーバーロードしてるから
555 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 22:54:04 ] <Child1>1</Child1> だから。
556 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 22:56:40 ] メンバ一覧見ればexplicitメソッドがオーバーロードされてるって分かるだろ
557 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 23:02:36 ] さすがにExplicitメソッドがオーバーロード、は初心者には気づけないと思うんだ… まえはop_Explicitだったのにいつの間にかop_消えてたのな
558 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 23:03:46 ] チラっと見たら演算子のオーバーロードの項目が見当たらなくて、 「あれっ?」と思ったのですが、本当だ、よく見たらありましたorz
559 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 23:05:16 ] >>557 そうそう、前はop_だったのが見当たらないので、 まさかすぐ下に独立した項目があるとは思いもよりませんでした
560 名前:デフォルトの名無しさん [2009/05/18(月) 02:18:27 ] PCにモデム繋いでナンバーディスプレイって出来ないもんでしょうか? まったくやり方がわかりません。
561 名前:デフォルトの名無しさん mailto:sage [2009/05/18(月) 02:20:17 ] どこの誤爆ですか
562 名前:デフォルトの名無しさん [2009/05/18(月) 02:20:17 ] あと、FAXを送信するライブラリとかあったら教えてください
563 名前:デフォルトの名無しさん mailto:sage [2009/05/18(月) 02:22:21 ] すみません。顔面にコブシを叩き込んでもよろしいですか?
564 名前:デフォルトの名無しさん mailto:sage [2009/05/18(月) 02:46:36 ] むかーしWinFaxってのなかったっけ?
565 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 21:59:47 ] C#で作ったプログラム(.NET)はコードを読むことができるそうですが、 C#で作ったDLLもやっぱり同様なのでしょうか?
566 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 22:01:30 ] 読めます けど初心者スレレベルの人には全く関係の無い話です 誰も好き好んでクソコードなんか見ませんから
567 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 22:26:39 ] >>566 ありがとうございます。 逆に、参考に人のを見られるわけですよね。
568 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 22:27:47 ] いい切り替えしだ
569 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 22:29:53 ] 参考にしたいのなんかはまずソースオープンにされてるから気にしなくていいな
570 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 22:54:08 ] ネット探したほうがよほどいいソースが見れるぞ。説明書付で
571 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 23:59:47 ] 難読化してある物は結構スパゲッティだったりする罠
572 名前:デフォルトの名無しさん mailto:sage [2009/05/20(水) 11:18:07 ] SaveFileDialogのDefaultExtが機能せず、 Filterで指定した一番左の拡張子が選択されるのは何故ですか?
573 名前:デフォルトの名無しさん mailto:sage [2009/05/20(水) 11:47:49 ] AddExtension プロパティは、表示されるファイルにフィルタを適用するための拡張子を、既定では Filter プロパティから特定しようとします。Filter プロパティから拡張子を特定できなかった場合は、代わりに DefaultExt が使用されます。
574 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 11:54:26 ] >>3 テンプレの参考サイトについてですが、 ・ページのタイトルも書いてください ・googleは検索エンジンであって参考サイトではありません。 解らないことがあったらgoogleで調べよと一言入れておけば良いのでは?
575 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 11:59:43 ] じゃあ次スレを立てるときに574が入れてください。 任せましたよ。
576 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 12:05:54 ] >>575 解りました。 次スレから俺好みのスレに調教させてもらいます。
577 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 14:15:03 ] >>576 そんなら、相談室とふらっとスレがうまいこと棲み分けできるように 調教ついでにおねがいします。
578 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 14:38:59 ] テンプレ変更するならスレ立てる前にテンプレ案張っとけ
579 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 18:01:59 ] タスクバーに表示される文字列が更新されない時がある なんでこんな曖昧なことが起きるんだ コンピュータって何なんだ
580 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 18:12:40 ] コードが悪いんだろ。環境のせいにするなよ
581 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 18:50:39 ] まあ変な環境使ってるのかもよ 代替シェルみたいな
582 名前:デフォルトの名無しさん [2009/05/22(金) 18:17:14 ] 現在UserControlを継承した、スクロールバー付きのコントロールを作成しています。 スクロール毎にクライアント領域全てを再描画させたいのですが、 AutoScrollの場合、内部でScrollWindowEx?が呼ばれているらしく、 どうしてもOnPaint前にその描画(前回描画したものがずれたもの)が入るようです。 そこでAutoScrollをfalseにし、VerticalScrollを使うようにしてみましたが、 今度はマウスでスクロールした後に、VerticalScroll.Valueが0に戻るようです。 どなた様か解決策をご教示頂けませんでしょうか。
583 名前:デフォルトの名無しさん mailto:sage [2009/05/22(金) 20:42:15 ] AllPaintingInWmPaintをtrueにしてみるとか
584 名前:582 mailto:sage [2009/05/22(金) 21:25:59 ] 有り難うございます。 AllPaintingInWmPaintはチラツキ対策の為、trueにしてあります。
585 名前:デフォルトの名無しさん [2009/05/22(金) 23:44:09 ] listViewコントロール(View=Details)でアイテム選択状態の時に、 右クリック押下でコンテキストメニューを表示したいのですが、 listViewコントロールにコンテキストメニューを設定すると、 当然どの状態でも表示されてしまうので、抑制する方法を教えてください。
586 名前:デフォルトの名無しさん mailto:sage [2009/05/22(金) 23:50:51 ] 抑制じゃなくて右クリック押下の時に選択アイテムあるか見て表示すればいいじゃない
587 名前:デフォルトの名無しさん [2009/05/23(土) 08:59:34 ] クラス内の関数をpublic static とするとクラスの インスタンスを作成しなくとも関数を使用することが でき、結構便利に使うことができますが、これは、 邪道なのでしょうか。クラス内の関数はクラスの インスタンスを作成して使うべきなのでしょうか。 使い分けなんかはありますか?
588 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 09:34:05 ] どのくらい書いてる? いくつも書けばわかってくる
589 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 10:10:55 ] >>587 責務で分ける。インスタンスが不要 or インスタンスを指定できないような責務なら使う。 ユーティリティクラスと言われる関数の集合を扱うクラスでは有用。例えばMathが良い例。 他にも手順を用いてインスタンスを生成するための関数でも使う。Singletonとか、String.Fromatとか。 しかし、責務としてインスタンスが必要な場合にstatic変数 + static関数にするのはアウト。 書くのがちょっと楽になる程度で、実質static変数の弊害(グローバル変数の弊害)しかない。
590 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 10:41:48 ] コード分析ツールはこんなこと言うよ msdn.microsoft.com/ja-jp/library/ms245046.aspx ちなみにこれは、>>589 の言っていることとは矛盾してない。 (「責務」って表現する文化にはなじみがないし、static変数じゃなくて、 クラス変数と言うかスタティックフィールドって言うかどっちかにしてよ、 ってのはともかく)
591 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 10:58:33 ] >>590 そう?static〜は確かにそうだけど 責務って言葉はけっこう使われると思うな。
592 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 11:14:18 ] 「責務」は確かに使われてるみたいだ。でも、誤訳でしょう。 送られたメッセージに自律的に応答する能力(respond + ability)が resposibilityだよ。 www.merriam-webster.com/dictionary/responsible 1aが最もシンプルな定義になるんだろうけど、OOP用語としては2aが近いかな。 いずれにせよ「応答する能力」が一義的かつ重要なんであって、「責務」って のはニュアンスとしてだいぶかけ離れている。まあ、responsibleは プログラミングの世界だけでなく、一般的に常に誤訳されてるような気はするが。
593 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 11:27:59 ] どうでもいい。
594 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 11:36:34 ] >>592 dictionary.goo.ne.jp/leaf/jn/205972/m0u/responsibility/
595 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 11:38:40 ] >>590 > パフォーマンス重視のコードでは、これにより大きくパフォーマンスを向上できます うーん、これどうなんだろう。どっちかというと、疎結合になるメリット、つまり 「インスタンスに影響を与えない/影響を受けない関数と明示できる」が一番じゃないの?
596 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 11:44:25 ] 状態を持つ必要のないものはstaticにする 状態を持つものは通常のインスタンス化する
597 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 11:52:29 ] >>594 Merriam Websterに対してgoo辞書の2単語で対抗しようとするのって 無謀だとは思わないか?
598 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 11:56:35 ] オナニーはオナニー板で
599 名前:デフォルトの名無しさん [2009/05/23(土) 12:28:41 ] 俺はこういう話好きだぜ。
600 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 12:46:09 ] あーOEDオンライン化しないかなぁ
601 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 13:24:04 ] してるじゃない。個人で利用は難しいが
602 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 15:37:20 ] すいません質問です。 アプリケーションの設定を保存したいのですが、ユーザースコープのようにアプリケーションスコープの値を変更する方法はないでしょうか。 やりたいことは実行ファイルと同一フォルダ上にアプリケーションの設定情報を保存およびその読み出しをしたいだけなのですが、 わざわざ自作しなければならないのでしょうか?
603 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 16:22:08 ] >>602 >アプリケーションの設定を保存したいのです >ユーザースコープのようにアプリケーションスコープの値を変更する方法はないでしょうか。 >実行ファイルと同一フォルダ上にアプリケーションの設定情報を保存およびその読み出しをしたい どれだよおい
604 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 16:34:46 ] 一応それをやれる枠組みはあるが、 インターフェイス以外のほとんどコードが書き直しで、 そこを変更してしまうとIDEが対応しない。 で、やるのをあきらめた。
605 名前:602 mailto:sage [2009/05/23(土) 22:25:42 ] 自己解決しました。 exe.configをDOMとして読み込んで、上書きという単純すぎる方法。 1、あらかじめフォームデザイナでApplicationSettings>PropertyBindingでアプリケーションスコープの設定をバインド。 2、FormClosedイベントハンドラ辺りに、たとえば以下のコードのように記述。 string assemblyName = this.GetType().Assembly.GetName().Name; XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(assemblyName + ".exe.config"); XmlNode node = xmlDoc["configuration"]["applicationSettings"]; //exe.configのxmlを見て決め打ち。 foreach (XmlNode item in node) { if (item.FirstChild.Attributes[0].Value == "StatusBarVisible") //ここに、設定の名前を。 { item.FirstChild.FirstChild.FirstChild.Value = statusStrip1.Visible.ToString(); //入れたい値を代入。 } } xmlDoc.Save(assemblyName + ".exe.config"); //保存を忘れずに。 これでexe.configをiniのように使えるっぽいです。
606 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 22:40:05 ] ショートカットからとかの起動考えてないだろ、相対パス使ってるあたり あとProgram Filesにインストールしたら書き込めないぞ
607 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 22:50:36 ] PowerShellくらい簡単にXML使えるようにしてくれよ
608 名前:デフォルトの名無しさん [2009/05/23(土) 22:57:55 ] LINQ to XML使え びっくりするくらい簡単で使いやすいから
609 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 23:03:17 ] CD-ROMに保存できないよね
610 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 23:23:16 ] XDocumentなー XmlDocumentに比べれば確かに便利
611 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 00:21:18 ] 初心者です。 VC# express edition を入れたのはいいのですが、教科書のコンソールアプリをコンパイルすることが出来ないでいます。 csc hello.cs でコンパイルできるようにするには、なにをどうすればいいのでしょうか。 IDE環境でビルドすることはできます。でも短いプログラムごとにプロジェクトをわけるのはどうも大げさすぎて。
612 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 00:27:43 ] 「パスが通ってる」って表現は分かる?
613 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 00:28:21 ] >>611 プロジェクト右クリック→プロパティ→〜アプリケーションとかなってるやつを コンソールアプリケーションに変更
614 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 00:34:54 ] cscはC:\Windows\Microsoft.NET\Framework\v3.5\ とかにあるぞ v3.5はv2.0.50727とかも
615 名前:611 mailto:sage [2009/05/24(日) 00:57:46 ] >>614 さんのところにパス通して無事にコンパイルできました。ありがとうございました。
616 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 01:05:56 ] VC++のコマンドプロンプトみたいに、パスを通すバッチのショートカットを作っとくと便利。
617 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 01:15:37 ] スタートメニューのVS2008以下にコマンドプロンプト用意されてるけどね
618 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 01:17:13 ] >>606 >>ショートカット 自分の環境だと再現できないからよくわかりませんがそうなんですか? >>Program Files ・・・Vistaだと起きるのか・・・まぁ、不対応って事で。
619 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 01:29:08 ] 普通にXPでも一般ユーザなら書けないし あとショートカットは作業フォルダ=起動時のカレントディレクトリを簡単に変更できる
620 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 01:37:02 ] ここで作法レベルの話をうだうだやってもしょうがない。 インストーラつきのまともなアプリを作って配布するなら データの保存場所はMSのガイドラインに沿うべきってだけ。
621 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 02:10:27 ] >>616 残念ながらVC++以外のエクスプレスにはない。
622 名前:621 mailto:sage [2009/05/24(日) 02:11:29 ] >>617 の間違いだ、すまん。
623 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 12:05:13 ] >>619 ,620 ぐぐって色々把握できました。サンクス ショートカットはApplication.ExecutePathに置き換えて絶対パスにしました。 書き込みに関してはインストール不要系の習作なので放置。 しかしこんな書き込み関連の仕様だったことを初めて知りましたよ。 もしそこら辺のゲームがuser.config書き込みだったりすると、隠しフォルダだしバックアップもソフト側でお膳立てしないといけないと実質だめそうですね
624 名前:582 mailto:sage [2009/05/24(日) 17:34:16 ] チラ裏に書くべき事かもしれませんが、一応解決したらしいのでご報告を。 前者の問題ですが、SetScrollState(ScrollStateFullDrag, false);とする事により対処出来ました。 ですが、スクロール中に無理矢理再描画するとぶれる現象が再発。 後者の問題はttp://rararahp.cool.ne.jp/cgi-bin/lng/dotnet/dotnetlng.cgi?print+200607/06070002.txt ここに書いてある現象と全く同一なわけですが、一応解決・・・? WM_VSCROLLでSB_ENDSCROLL(8)が飛んできたときに、VerticalScroll.Valueが0になるようなので、 base.WndProcに処理を渡さないようにすると「一応」直りました。 こちらは無理矢理再描画してもぶれる現象は発生しませんでした。 これで当初から望んでいた動作にする事が出来たようです。 この方法ですと他の部分に弊害が起きる気もしますがw 以上、指摘や助言等ございましたらレス頂ければ幸いです。
625 名前:582 mailto:sage [2009/05/24(日) 17:48:48 ] ・追伸 両者のコードとも、スクロール中にも再描画させる為に OnScrollにてVerticalScroll.ValueへNewValueを代入し、Invalidate()を実行してます。 OnPaintでは、背景は常に同位置、前景はVerticalScroll.Valueにより移動する等の描画をしてます。
626 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 01:34:12 ] varって出来るだけ使わない方がいいの?
627 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 01:37:40 ] アンダースのオッサンはvarのコストは実行時にはないって言ってた気がする 作法的な問題なら知らん
628 名前:デフォルトの名無しさん [2009/05/25(月) 02:11:48 ] varはコンパイル時に静的な型が与えられるんじゃなかったかね?
629 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 02:32:41 ] varは型推論だからラインタイムにコストが発生することはない
630 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 02:42:22 ] コンパイルする時に型決めるだけで、実行段階では同じ。 コード量とコーディングの厳密さとのトレードオフ。 using(var s = new くどくど())... みたいに、宣言してすぐ初期化する場面では冗長な部分を削れたり。 C#は、コード上でも参照ごとに厳密に型付けされてることがコードの追いやすさを支えてる。 宣言と初期化がある程度離れるなら、VSの入力補完もあるんだし、書けば良いのにとも思う。 個人的にはCtrl+Spaceが癖になってるから、タイプ量も速さもそんなに変わらんし。 あとはターゲットが.NET2.0にする時とか、コードを不特定多数に配布する場合とかは避けたりする。VS2005で触るかもってことで。
631 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 03:01:22 ] 宣言と初期化が離れたらvar使えないよ… 型名が長くなるとか数個の別々の型の変数をまとめて宣言するとかだと varの方がかえって見やすくなるってことない?(右辺見れば型は明らかって場合ね)
632 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 03:07:40 ] とりあえずfrom x inの時しか使わん、今は。 何か感銘を受けるようなコードを見る機会があるまでは旧スタイルで保留。
633 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 03:31:03 ] ダックタイピングできるとvarはかなり旨いんだけどなあ
634 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 03:34:53 ] >>631 マジだw。やったこと無かったから知らんかったw。さすがC#。 複数宣言の時は参照名の頭が揃って見やすいか。納得。 今のC#のチームは2.0ターゲットだから、3.0の新機能は使ってない。コードも2.0スタイルで書いてる。 家で新機能調査はやるけど、ホビーでも今のところ慣れてる旧スタイルだな。
635 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 09:21:43 ] >>634 > 今のC#のチームは2.0ターゲットだから、3.0の新機能は使ってない。コードも2.0スタイルで書いてる。 こんな恥ずかしいチームは解散で。
636 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 10:29:41 ] .NET2.0をターゲットにしてるが、C#は3.0を使ってる。 使える機能は限られはするがvarは便利だな。 使いすぎには注意だけど、 ローカル変数の宣言以外に使えないから 使いまくってもそれほど可読性は落ちてないな。
637 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 11:52:08 ] エラー 1 プロパティまたはインデクサを out か ref のパラメータとして渡すことはできません。 どうしてですか?
638 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 11:59:35 ] 何のためのゲッター・セッターだよ。
639 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 12:21:25 ] VBは出来たりするけど内部で変なことをやってる。
640 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 14:13:29 ] こんにちは 質問させて下さい 今ゲームを作っているのですが 物を表すobjっというクラスのインスタンスを複数作りたいんです インスタンス変数の配列みたいなのを宣言してfor文で一気にインスタンスを作りたいのですが 無理なんでしょうか?
641 名前:デフォルトの名無しさん [2009/05/25(月) 14:20:58 ] 複数のスレッドから呼び出される関数があって、ブレークポイントを仕掛けて止めたあと、そのスレッドだけでステップ実行したいのですが。 現状、他のスレッドを止めて作業しています。 特定スレッド以外から呼び出された場合は、ステップ時の停止をしないようにする方法があれば誰か教えてください。 >>640 意味がよくわからないけどこういう事かな? obj [] objArray = new obj[100]; for(int i = 0 ; i < objArray.GetLength(0) ;++i) { objArray[i] = new obj() ; }
642 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 14:30:18 ] >>641 ブレークポイントを右クリックして、フィルタ設定すればできるんじゃないかな? やったことないから知らんけど
643 名前:640 mailto:sage [2009/05/25(月) 14:33:55 ] >>641 ありがとうございます!できました!
644 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 14:36:24 ] >>642 どうも、いけてるっぽいですね。 ステップ実行にも適用されているぽいです、今のところ。
645 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 21:44:20 ] 初心者っていうレベルの質問なのかも分からないけど、1点質問を USBのマウスを2個ないし3個刺して、それぞれのマウスの移動量って個別に取得するとかできます? 1個のマウスじゃないのは、複数のX軸Y軸の動きを見て「マウスの捻り動作」も取得したいからでして、 DirectInput見ても、Mouseイベント見てもマウス自体の識別ができないようで・・。 何か知識や方法ご存知の方いらっしゃったらご教授ください
646 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 21:47:52 ] マウスポインタが複数あるなら拾えるんじゃね?
647 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 21:49:17 ] Windows7でサポートされるようになるとか何とか WM_INPUTである程度どうにかなったっけ 前調べたときはなーんか限界があった気がする
648 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 22:15:02 ] どちらかというとそれはDirectInputやらの話で、 C#は関係ないような気がするんだが。
649 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 22:17:15 ] Win7だとマルチタッチがあるから対応したのかな? てかここじゃなくて、Win32SDK?あたりのスレに行くと有識人と出会えるかも?
650 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 22:19:59 ] >>646 ありがとうございます。マウスポインタ関係無しで(モニタ上のポインタと関係無く)座標を取りたいので難しそうです。 何よりマウスポインタを複数表示or作成する方法がいまいち・・ >>647 MSDNをみた感じ、詳細なマウスの位置を取ろうと思ったらWM_INPUTが一番いいみたいですね WINAPIから?しか使えない感じですが調べてみます。 >>648 そうなんですか。 当方C#かVBくらいしか分からないのと、今回使用する言語がC#だったためここで質問しました。 スレ違いでしたら申し訳ありませんでした。
651 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 22:32:56 ] DirectInput だとたぶん複数取れるよ。デバイス列挙するやつがあるだろ? ttp://msdn.microsoft.com/ja-jp/library/cc351907.aspx ↑こいつかいねと。 ほかには HID API あたり使うとか。
652 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 22:38:26 ] >>651 > Microsoft. Windows. XP 上では、Microsoft DirectInput. は、 > システム マウスおよびシステムキーボードとして参照される、 > 1 つのマウス デバイスと 1 つのキーボードデバイスのみを列挙する。 > これらのデバイスは、システム上のすべてのマウスの出力と、 > キーボードの出力の組み合わせをそれぞれ表す。 > Windows XP での複数のマウスまたはキーボードからの読み取り方法については、 > WM_INPUT のドキュメントを参照すること。
653 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 22:39:55 ] Ohもろ書いてあるじゃんorz
654 名前:デフォルトの名無しさん [2009/05/25(月) 23:30:41 ] WEBで電子印鑑を実現したいんだけど.NETのライブラリありませんか?
655 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 23:37:19 ] 電子印鑑てなに?電子署名のこと?
656 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 23:45:03 ] 知らないなら黙っててください
657 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 23:49:57 ] 電子印鑑ってただの画像だぞ
658 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 00:04:10 ] ただの画像っていうか印刷したあと判子を押すのが面倒だから入れておく画像。
659 名前:デフォルトの名無しさん [2009/05/26(火) 00:10:05 ] 社印の名前と部署の部分は動的に生成しなきゃならんから難しそうだな。
660 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 00:12:55 ] >>659 電子透かしとかそういった事かと思ったけど、そういう話なの?
661 名前:デフォルトの名無しさん [2009/05/26(火) 00:48:42 ] やっぱり動的に印鑑の画像を作るしかないよね? 社内のWEBアプリで使いたいのです。
662 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 00:53:37 ] 静的なほうがよければ、 欲しいぶんだけ印鑑の画像を用意して表示させればいいんじゃないの?
663 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 12:59:05 ] >>605 アホなことしなさんな。 下手すりゃVista以降じゃまともに動かなくなるぞ。
664 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 13:03:47 ] まだやるのかよw
665 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 13:05:21 ] すまん表示更新してなかったよorz
666 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 14:01:20 ] アホめ
667 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 14:06:25 ] 黙れ下郎
668 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 14:09:16 ] 豚が
669 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 14:10:28 ] もっとなじってくれ
670 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 18:46:19 ] >>669 あいしてる
671 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 18:51:57 ] いやぁ〜ん
672 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 01:17:09 ] 空気読まずに質問しちゃうけど、 ディレクトリへのフルパス(例:"C:\Foo\Bar")から 末端のディレクトリの文字列("Bar")を取得するメソッドってないの? Bar がファイルだったらPath.GetFileName()でとれるんだけど。
673 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 01:18:10 ] ディレクトリも同じよ
674 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 09:22:11 ] IsolatedStorageFile.GetUserStoreForApplicationを呼び出すと IsolatedStorageExceptionが発生してしまします。 このときのエラーメッセージが 「呼び出し側のアプリケーション ID を確定できません。」 なので、AppDoman.CurrentDomain.ApplicationIdentityがnullなのがいけないのだと思うのですが、 ApplicationIdentityをnull以外にする方法がわかりません。 どうしたら、ApplicationIdentityをnull以外にできるのでしょうか?
675 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 13:01:56 ] checked{}って何に使うの? というかむしろデバッグ中はプロジェクト全体を覆ってしまいたい気がする。
676 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 13:26:22 ] 数字のオーバーフローチェック 桁あふれぎりぎりで演算しなきゃいけないときに使う コンパイラスィッチで指定できたはず
677 名前:デフォルトの名無しさん [2009/05/27(水) 13:34:02 ] checkedはどっちでもいいけど意図的にオーバーフローさせるときはuncheckedは絶対に付ける でないとコンパイラスイッチが使えない
678 名前:デフォルトの名無しさん [2009/05/27(水) 15:40:23 ] VS2008ExpressEditionでFxCopとStyleCop入れてみたんですが... ツールにメニューが出てきません。(´・ω・`) このアドインてExpressEditionじゃ使えないんですかね?
679 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 15:44:10 ] そもそもアドインじゃなかったと思うが ttp://japan.internet.com/developer/20061025/26.html
680 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 15:44:16 ] >>678 未だにこんな人がいたか EFではアドイン自体つかえません
681 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 15:46:48 ] 変数とプロパティの用途の違いが分からない
682 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 16:01:38 ] >679-680 ExpressじゃStyleCop使えないんですね。 FxCopは完全に勘違いしてました。(´・ω・`) どうもありがとうございました。orz
683 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 17:10:21 ] そのうち違いが分かってくるのでとりあえず意識しなくてよろしい
684 名前:デフォルトの名無しさん [2009/05/27(水) 17:23:40 ] expressではIDEに統合できないだけでFxCopやStyleCopは単体で使えるよ
685 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 18:47:26 ] MenuStripのRenderプロパティとStatusStripのRenderプロパティの初期値が違うのはMicrosoft Corporationの不徳の致すところですか?
686 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 18:50:32 ] 初期値が何だっていいじゃないか。変える必要があるなら変えればいい。
687 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 18:50:45 ] 意味が分からない メニューとステータスバーのレンダラが違うのって何かおかしいか?
688 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 19:53:32 ] >>684 とりあえずStyleCopのインストールパス探してみたんですが... 『C:\program files\MSBuild\Microsoft\StyleCop\v4.3』には設定用のexeしか無いんですが、スタンドアロンで使うってどうしたら良いんですか?
689 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 20:32:23 ] C#インスコしたけど何からはじめたらいい?
690 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 20:39:44 ] WinAPIのラップあたりから。
691 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 20:40:12 ] お前は何もしなくて良いよ
692 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 20:44:57 ] 新しい環境では大抵メモ帳作るな。 メニュー、ツールバー、ステータスバーの実装、 ファイルの入出力、ちょっとした状態の管理(新規、変更なし、変更あり)あたりが学べる。
693 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 20:46:24 ] もうちょっとがんばって最近使ったファイル、外部ツールの登録機能を実装すると いろんなアプリで使いまわせるようになる。
694 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 21:13:44 ] なるほどありがとう 上でもあったようにメモ帳からやってみるよ
695 名前:デフォルトの名無しさん [2009/05/27(水) 21:30:18 ] >>688 msbuild用だから単体では使えない プロジェクトファイルを手で書き換えればビルド時に自動的に診断してくれるようになる stylecop msbuild でググれ
696 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 21:42:27 ] DLLのラップはやってみて損しないと思うな どうせ不満が出てくるから
697 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 21:49:14 ] APIついでにやるなら32bitと64bitの切り替え対応かねぇ 関数は一緒でも引数の型違いで動かんのとか結構あるし setupapi.dllとか半日悩んだわ
698 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 21:54:28 ] 64bitと32bitで別関数なんてのもよくある話 GetWindowLongPtrとかな
699 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 22:02:19 ] >>696 そういうのはMSでやってくれよ。 いちいち宣言すんのだるいわ。 そういうプロジェクトどっかにまとまってないのかね。
700 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 22:03:55 ] そういえば、実際のところC#で32/64bit向けビルドってどういう扱いなの? DirectXを扱ったりすると、途端にプラットフォームターゲットがAny CPUのままじゃ動かなくなったりする。 この件は原因が判明するまで苦労したものだった。
701 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 22:06:35 ] COM Interopじゃ仕方ない
702 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 22:10:33 ] pinvoke.netは定番
703 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 23:57:30 ] C#向けじゃないライブラリのラッパーをC#で書くってのは、 P/Invokeを使うってこと? 他に方法があったりするの?
704 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 23:59:28 ] ネイティブのライブラリならP/Invoke COMのライブラリならCOM Interop
705 名前:デフォルトの名無しさん [2009/05/28(木) 00:03:18 ] 702が言ってんのはpinvoke.net/ だろ
706 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 00:06:49 ] >>705 >>703 は独立した質問です。紛らわしくてスマソ >>704 モヤモヤが解けました
707 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 01:10:16 ] コンソールアプリケーションとWindowsフォームアプリケーションだとどちらを先に習得すればいいのでしょうか?
708 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 01:16:09 ] 前者 10分で終わる
709 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 01:19:21 ] OpenFileDialogを開き、そこにデスクトップの内容を表示した状態で選択ファイル名を空にしたままエンターキー(または開くボタン)を押すとマイ コンピュータなどのリンクが一覧から消えてしまいます Windows Vistaでの挙動を教えてください
710 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 01:22:53 ] >>708 即レスありがとうございます 1ヶ月くらいかかりそうです(汗
711 名前:デフォルトの名無しさん [2009/05/28(木) 07:50:46 ] 現在、MailDir形式(1ファイルに1つの生メールデータが入ってるタイプ)がありまして、 ここから、本文とタイトルだけを抽出したいのですが、 System.Net.MailのMailMessageクラスのようなものに、この生メールデータをバインディングして 各種メソッドを使いデータを取り出すようなことは出来ないのでしょうか? 少なくとも、MailMessageクラスにはそのような生データを読み込むメソッドはありませんでした。 方法がありましたら、よろしくお願いします。
712 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 08:20:12 ] 自分でパーサ書け
713 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 08:27:20 ] フリーのLibでもいい?
714 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 14:04:51 ] ButtonコントロールのImageプロパティに画像を指定し FlatStyle = FlatStyle.Flat、FlatAppearance.BorderSize = 0として 枠線の無い画像ボタンを作ったのですが Enableをfalseにした時に、枠線が出て来ます この枠線を消すには、何を指定すれば良いのでしょうか?
715 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 14:42:28 ] んーやってみたけど出ないけどな?
716 名前:714 mailto:sage [2009/05/28(木) 14:57:09 ] >>715 さんのレス見て、クリーンしてコンパイルしたら出なくなりました… 何だったのか分からないまま再現不能に…('A`) 自分用のツールなので再現した時また考える事にします ありがとうございました
717 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 15:58:04 ] なんかフォーカスの線みたいな気がしないでもないな。
718 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 16:11:14 ] デリゲートをList化したいのですが、コンストラクタの引数がよく分かりません。 >Delegate (Object, String) 指定したインスタンス メソッドを指定のクラス インスタンスに対して呼び出すデリゲートを初期化します。 >Delegate (Type, String) 指定したクラスから指定の静的メソッドを呼び出すデリゲートを初期化します。 分かりやすく教えて頂けませんか?
719 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 16:20:52 ] 何言ってるかわからないのでコード晒してくれお public delegate int TestDelegate(string str); public int TestDelegateMethod(string str){return Int32.Parse(str);} List<TestDelegate> list = new List<TestDelegate>(); for(int i=0;i<10;i++) list.Add(new TestDelegate(this.TestDelegateMethod));
720 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 17:29:53 ] すみません。説明不足でした。コードは消してしまったのですが、 list.Add(new TestDelegate(null)); nullにできないかと思ったのですが、未指定というのは無理ですか?
721 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 17:31:28 ] >>720 Nullable
722 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 17:36:13 ] 何も指さないデリゲートインスタンスは不可能だな って言うかそんなんして何がしたいんだ
723 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 17:37:40 ] >>721 ありがとうございます。試してみます。 お早い解答に正直驚いてます。;
724 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 17:39:33 ] >>722 任意のメソッドを格納するデリゲートを複数作りたかったので…。
725 名前:724 mailto:sage [2009/05/28(木) 17:46:17 ] 蛇足ですが、 テキストファイルに書かれたメソッド *.txt {Test(...),Test2(...)} //格納 {Test2(),Test()} //2つめ格納 {Test3(...)} //3つめ。。。 を実行するためにデリゲートがいくつも必要だと思った次第です。
726 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 17:49:47 ] それはデリゲートよりリフレクションのほうが便利かもね
727 名前:724 mailto:sage [2009/05/28(木) 17:52:33 ] >726 どうも。組みなおしてみます。
728 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 19:48:39 ] デリゲートがいくつも必要なのは分かるがなぜ何も指さないのが必要なんだろう? って思ったけどまあ本人が納得してるならそれでいいか
729 名前:デフォルトの名無しさん [2009/05/28(木) 20:09:26 ] .NET4.0(DLR)では引数16個のFunkが出てくるぜ 型引数64個のクラスとかもうね
730 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 20:14:14 ] そいつはFuckだなHAHAHA!
731 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 20:24:34 ] >>730 誰が上手い事言えとwww
732 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 21:28:11 ] >>731 すまねぇ ついでてしまったんだHAHAHA
733 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 21:38:20 ] Funkyなやろうだぜ
734 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 00:06:22 ] C#は情報量が少ないように感じます なぜですか?あまり人気がないのでしょうか?
735 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 00:08:58 ] 必要な情報はあると思うが、なんと比べて少ないんだ? 何が知りたかったのだ?
736 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 00:09:49 ] オブジェクト指向です
737 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 00:12:26 ] C#で学べるのはOOPまでだな、オブジェクト指向はもっと大きな概念だ。 ちなみに、オブジェクト指向の何が知りたいんだ?
738 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 00:21:18 ] >>734 C# で情報少ないとか言ったら、他の言語なんて何もないぞ。
739 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 00:28:44 ] まだ可変長ジェネリック採用する気ないのか
740 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 00:36:52 ] C#で情報少ないとか、どんだけゆとってんだよ
741 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 00:50:04 ] C#って仕様複雑やしない? 簡単って言われたけどなんか習得すべき事柄が多いぞ
742 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 00:53:30 ] >複雑やしない
743 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 01:04:54 ] >>741 C++を選択していれば今頃挫折していた。
744 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 01:05:21 ] 複雑というか、出きることが多いけど大半は代替手段や記法の簡略化。 知らなくても困りはしないが、知っておくと得をする程度。 でも、落とし穴がこっそり各所に用意してあるのが怖いけどなw。 「匿名デリゲートは書くのが楽」とだけ理解していてキャプチャでハマったり、 LINQで遅延判定でハマったり。
745 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 01:28:49 ] >>741 どんどん増えてるねぇ。 でも、あれと同じことを他の言語でやること考えたら、はるかに簡単にできちゃうからなぁ。
746 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 01:31:03 ] >>744 あー、キャプチャは知らずに乱用してると落とし穴に落ちそうだね
747 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 04:25:29 ] 起きてる人いますか?
748 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 04:28:00 ] また来ます
749 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 04:30:11 ] いますよ。何か?
750 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 04:46:34 ] さっさと言えよ
751 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 05:13:40 ] キャプチャって何のこと? 画面のキャプチャやロボットチェックのCAPCHAのことじゃないんだよね?
752 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 05:47:14 ] うん
753 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 05:55:58 ] 正直楽しすぎてやばい 病気になりそう
754 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 05:59:10 ] はい
755 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 07:44:03 ] >>751 for(int i=0;i<10;++i) { hogehoge.PropertyChanged += (s,p) => Debug.WriteLine(i); }と、 for(int i=0;i<10;++i) { int j = i; hogehoge.PropertyChanged += (s,p) => Debug.WriteLine(j); }を 違う結果にする、わくわく系不思議機能。
756 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 07:52:39 ] それは違う結果になって欲しいだろ
757 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 09:50:13 ] forとforeachは括弧とスコープが対応していないので紛らわしいね
758 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 10:31:33 ] C#で辞書作りたいです。辞書とかって str.replaceってのを使って置換してるんですか?
759 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 10:33:32 ] 辞書ってどういう辞書ですか? 何か例となるソフトでも挙げてみてください
760 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 10:35:19 ] 英語を日本語にするんです ソフトとか良く分からないです
761 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 10:38:28 ] 「辞書とか」なんて言葉が出るくらいですから 手本としてるものはあるわけでしょ
762 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 10:40:40 ] ありません
763 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 10:43:40 ] じゃあ自由に作れよw 「こういう機能をつけたいなあ」というのがあったらまた来い
764 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 10:46:46 ] わかりました。 またお願いします ありがとうでした
765 名前:≠755 mailto:sage [2009/05/29(金) 11:33:51 ] >>756 文法上はなってくれないと大問題だけれど、直観的にはそうなって欲しくないな ほとんどのケースで後者と同じ挙動をしてほしいと思うし。 それと変数が散乱しすぎる。
766 名前:751 mailto:sage [2009/05/29(金) 11:39:19 ] イベントの登録のことを何でキャプチャと呼ぶのかは分からないけど、 delegateやラムダ式につかませる自由変数の扱いは注意しないといけないだろうね。
767 名前:≠755 mailto:sage [2009/05/29(金) 11:42:56 ] うーん、クロージャーが参照するのか、クロージャーがコピーをを持つのかを ラムダ式の内部ではなく、外部で決定しようとするから訳らからん事になってるのかな、文法の吟味が足らない予感がするな。 とくに構造体が相手の場合、普通はコピーが原則なのに此処だけは参照になってしまう。
768 名前:≠756 mailto:sage [2009/05/29(金) 12:29:16 ] >>765 >ほとんどのケースで後者と同じ挙動をしてほしいと思う ねーよw >>766 イベントの登録じゃなくて >delegateやラムダ式につかませる自由変数 外部変数を捕まえる(取り込む)からキャプチャ
769 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 12:32:42 ] はーん ややこしい
770 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 12:41:14 ] >>768 なるほど。そういう文脈があるとは知らなかったなぁ。 ググってみた限りではC#とC++0xの記事で見られる用語みたいだ。 普通は自由変数といったり、外部変数の束縛と言ったりするんだが。まあ束縛自体がキャプチャの訳語なのかな。
771 名前:デフォルトの名無しさん [2009/05/29(金) 12:42:52 ] >>768 >ねーよw 逆に問いたいが、ループ変数が最後の状態の値になった状態が必要なデリゲートなんて意味あるのか?
772 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 12:58:13 ] 要するに、この記事のことか。 www.atmarkit.co.jp/fdotnet/csharp20/csharp20_05/csharp20_05_02.html
773 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 13:40:43 ] クロージャの話は定期的に出てくるが以前このスレかもうひとつのほうでで散々やったな。 クロージャは関数型言語の概念なので、 値を拘束しない手続き型言語のクロージャはどれも特殊。 手続き型言語の世界ではforやforeachでの解釈は少数派ということはない。 身売り騒動でどっかに行ってしまったが、java7のクロージャも同じ解釈だった。 rubyでも同様に (0..9).each do |i| と for i in 0..9 do で動作が異なる。 C#なら前者はList.ForEachといったところ。
774 名前:デフォルトの名無しさん [2009/05/29(金) 13:41:04 ] ラムダ式って有効ですか?わかりにくくて使う必要がない気がするのですが。
775 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 13:45:40 ] まあ作るのものによってもよく使うかあんまり使わないか変わるし 不要と思うなら使わなくてもいいよ 他の人のを読めさえすれば
776 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 14:17:23 ] >>774 LINQを使い始めれば必要不可欠である事がわかるよ ラムダ式無しでデータ操作などする気が無くなる この種のアプローチで、毎回クラス作ってvirtual関数導出してなんてやってたら、手のつけられないクラスの山が出来上がるから。
777 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 14:20:33 ] >>773 C#の話題の中でのクロージャなんだから、普通にC#的クロージャの話題として受け止めればいい わざわざ関数型言語の話題なんか持ち出す必要もないかと。
778 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 14:21:44 ] はあ?
779 名前:デフォルトの名無しさん [2009/05/29(金) 14:43:13 ] virtual 関数一個導出するため『だけに』とかinterface の中の関数一個定義するため『だけに』といった、中身があって無きが如しのクラスが大量増殖すると嫌になりませんか?って事。 ある日気づいてみたら、そんなクラスがネームスペースの9割を占めていて大事なクラスがちっとも見つかりません、IDEの名前候補機能が役立たずになるし、たまに微妙に高機能になったクラスがあったりして、現物を見るまで正体不明だとか。 そんなライブラリ嫌でしょう?俺は嫌だね
780 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 14:55:08 ] そんなに膨れあがるかどうかは作るものに強く依存するから、あなたの経験を元にそんなに力説されても困る。 あとデリゲートがあるんだからキャプチャの必要がないならクラス作る必要はない。 それからどうせプライベートなクラスならインナークラスにする。
781 名前:デフォルトの名無しさん [2009/05/29(金) 15:08:38 ] >>780 すでにそうなりがちな.Net Frameworkを見てさえそう思うなら、そういう事なんでしょう 必要だから作られた、ただそれだけの物。 必要ないなら誰もこんな機能追加しようなんて思い立ちませんよ。
782 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 15:23:54 ] だから作るものによるって言ってるじゃん おいらも一回だけC#の仕事があったけどそれはこっちのデータを色々いじってそっちに移すってものだったから LINQもラムダ式もよく使ったというかコードの中心だったしそれをメソッドやクラスに展開したいとは思わない でも自分が使うだけのちょっとした小物なら別に必要はないと思う まあおいら自身はラムダ式とか積極的に使うけどさ
783 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 15:27:21 ] ウザイ 「必要になったら使え」の一言で終わるだろ 分かったら死ね
784 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 15:32:50 ] ここ初心者スレであって議論スレじゃないんで。 プログラミング思想信条的な物まで持ち出して話引っ張らないでくれるかね。 ○すぞ。
785 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 15:34:35 ] そもそも初心者スレの住人を相手にする時点でもうね
786 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 15:35:35 ] 伏せなくていい。ウザイから殺しとけ。
787 名前:688 mailto:sage [2009/05/29(金) 17:12:16 ] >695 とりあえずググッてみます。 ありがとうございます。
788 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 19:30:56 ] C#においてコントロールとコンポーネントの違いを説明しなさい いや、教えてください
789 名前:デフォルトの名無しさん [2009/05/29(金) 19:42:30 ] ほかのプログラムと組み合わせて使うために作られたクラスがコンポーネント それにGUIが付いたらコントロールとも呼ぶ
790 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 19:43:05 ] C#においてはともかく、.NETにおいてなら System.Windows.Forms.Controlとその派生クラスがコントロール System.ComponentModel.IComponent実装してるのがコンポーネント
791 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 21:27:18 ] 自分の知らない範囲が出てくると発狂するヤツってどーなんかねw
792 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 21:51:59 ] ArgumentOutOfRangeException
793 名前:デフォルトの名無しさん [2009/05/29(金) 22:37:48 ] ちょこっと弄っただけの知識で全てが分かった気になってしまう中二病プログラマ、俺様サイコー(笑)ってヤツだな 『俺の知らない事は知らなくても問題ない物と』信じて疑わない、たまに居るねw
794 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 23:03:42 ] >>793 まさにオレのことだな
795 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 23:09:29 ] デリゲートやらデストラクタやらスレッドやら全く分からないけど何とかなったり。
796 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 23:11:12 ] そりゃチューリングマシンなら何だって何とかなるさ それでいいのかぁっ
797 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 00:21:24 ] >>790 WPFやSilverlightやGTK#も忘れないで
798 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 00:26:06 ] WPFやSilverlightはむしろ忘れたいw デフォではスプレッドシートすらないとか、 補完機能が使い物にならないとか、ひどい有様。
799 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 00:28:47 ] MMORPG作れますかね?
800 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 00:43:08 ] 作れる
801 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 00:49:57 ] ただし
802 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 00:57:04 ] お前には無理
803 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 01:01:28 ] 頑張りますよ 応援してください
804 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 01:07:16 ] XNAで話題になってるゲームもあるし 応援してやろう
805 名前:デフォルトの名無しさん [2009/05/30(土) 02:01:11 ] 画像形式を内部データから判定する方法は、 System.Drawing.BitmapのRawFormatを使う以外にありますか? WPFアプリを作ってるのでWPFライブラリ内を探してるのですが。
806 名前:805 mailto:sage [2009/05/30(土) 02:06:45 ] ちょっと語弊がありました。 画像形式を判定というより、指定したファイルが画像ファイルであるかを調べたい のが一番の目標です。 この場合はバイトコードとして読んで自分で判定するコードを書くことになるのかな。
807 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 02:08:58 ] BitmapDecoder.Createでデコードしてみるとか 「画像ファイル」の範囲にもよるけどな MAGファイルはどうするのか? とか
808 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 10:12:31 ] Bitmapクラスで読み込める範囲で、かつそれほど高速でなくてもいいなら、 実際にBitmapクラスに開かせて、オープンできれば画像だということにするとか。
809 名前:デフォルトの名無しさん [2009/05/30(土) 10:22:36 ] それならBitmapImageで読み込んでみる方がいい
810 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 19:31:23 ] ログファイルなんかの末尾に2,3行追記するのってどうやるの?
811 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 19:35:39 ] 追記モードで開いてWriteLine()すればいい。
812 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 22:59:07 ] 簡単なクライアント・サーバープログラムを書いているのですが、サーバー側のプログラムがうまく動きません ・クライアント側: private void Connect(){ TcpClient tcpConnection = new TcpClient(ipEndPoint); Debug.WriteLine("Connected"); } ・サーバー側: private void Listen(){ TcpListener tcpListener = new TcpListener(IPAddress.Any, Port); tcpListener.Start(100); while (isAlive){ tcpListener.BeginAcceptTcpClient(new AsyncCallback(ListenAcceptCallback), tcpListener); autoResetEventTCPListen.WaitOne(WaitTime); } } private void ListenAcceptCallback(IAsyncResult ar){ TcpListener tcpListener = (TcpListener)ar.AsyncState; TcpClient tcpConnection = tcpListener.EndAcceptTcpClient(ar); Debug.WriteLine("Accepted"); autoResetEventTCPListen.Set(); } ・デバッグメッセージ:クライアント: Connected Connected ・デバッグメッセージ:サーバー: Accepted (本来Acceptedが表示されるはずだが、表示されない) よろしくお願いします
813 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 23:56:55 ] >>812 そもそもAcceptするか? TcpClientのコンストラクタに渡すIPEndPointはクライアントのローカルのエンドポイントであって 接続先のエンドポイントじゃないはずだが。 NICが複数ある場合にどれを使うか明示するためのもんだったかと。 接続はConnectでやらんと。
814 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 00:09:31 ] >>813 す、すみません。 TcpClient tcpConnection = new TcpClient(); tcpConnection.Connect(ipEndPoint); と直してみましたが、やはりAcceptしてくれません。。。 # コードを色々直して試していて、余計なことをしてしまったみたいです…orz
815 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 00:22:28 ] >>814 どうやらTCP/IPの基本が分かってないようだから、 ここで一問一答を繰り返すよりか、 ソースコード付きのチュートリアルでも探してそのとおりにやってみたら?
816 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 00:48:50 ] Panel内にあるコントロールを別のPanelに移したいとおもい、 foreach (Control ctl in this.panel1.Controls) { this.panel1.Controls.Remove(ctl); this.panel2.Controls.Add(ctl); } というコードを書いて実行してみたんですが、 これで移動できるコントロールと移動できないコントロールが。 移動できるコントロールと移動できないコントロールの違いって何なのでしょうか? ・コモンコントロールで試した結果 >移動できないコントロール ListBox CheckBoxList TextBox MaskedTextBox DateTimePicker PictureBox RadioButton TreeView >移動できるコントロール Label ListView CheckBox LinkLabel ComboBox MonthCalendar ProgressBar RichTextBox WebBrowser
817 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 00:54:11 ] わかりません!
818 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 01:08:32 ] >>816 それ以前にforeachで列挙中にその列挙してるコレクションからRemoveしちゃダメだろ
819 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 01:11:38 ] 勉強して3日・・僕は何を作ったらいいですか?
820 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 01:13:44 ] 目標を作りなさい
821 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 01:16:10 ] うまい事言うね
822 名前:816 mailto:sage [2009/05/31(日) 01:17:22 ] >>818 ごめんなさい。それが原因でした。 どうもお騒がせしました。
823 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 02:04:02 ] >>820 ちょっと感動した
824 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 17:38:06 ] フォームを作ってみたいんですが System.Windows.Forms.dllを参照設定から追加しようとしてもSystem.Windows.Forms.dllがありません。 VS2008のExpressを使っています。
825 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 17:39:02 ] 連れすすみません 間違えて投稿してしまいました System.Windows.Forms.dllはどこにあるのでしょうか?
826 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 17:42:37 ] GAC
827 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 17:48:42 ] C:\Windows\Microsoft.NET\Framework\v2.0.50727
828 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 17:52:11 ] >>824 ないわけない。ソートしてみた?
829 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 18:47:01 ] >>826-828 ありがとうございます。>>827 のパスで指定したら動いたんですけど 参照設定にはないままです…
830 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 19:03:10 ] 名前には.dllの文字は無いよ
831 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 19:57:39 ] ちゃんと .NET のタブを見てるか?
832 名前:824 mailto:sage [2009/06/01(月) 18:51:20 ] 昨日はwebサービスの下に見えなかったはずのものが 今日よく見ていたらありました みなさんありがとうございました
833 名前:デフォルトの名無しさん [2009/06/01(月) 21:12:07 ] ゲイツ神への信仰心が足りないからそういうことになる。
834 名前:デフォルトの名無しさん mailto:sage [2009/06/02(火) 09:35:00 ] contextMenuStrip1をtoolStripMenuItem1の上で右クリックして開きたい IEのメニューバーにお気に入りという項目がある(Firefoxでも良いですが) この項目に所属しているアイテムの上で右クリックするとコンテキストメニューが開き、そのまま削除などの編集ができるようになっている これと同じことを実現したいのですがうまくいきません private void toolStripMenuItem1_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { contextMenuStrip1.Show(menuStrip1, e.Location); } } 第一パラメータにtoolStripMenuItem1が入らないです
835 名前:デフォルトの名無しさん [2009/06/02(火) 15:06:00 ] オレも、お気に入り風メニューの作り方を知りたいのでアゲ