トップページ⇒tech
1001コメント263KB

C♯, C#相談室 Part37

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん2007/01/18(木) 17:55:45
(#゚ー゚)つ < C#、.NETの話題はこちらでどうぞ。

前スレ
C♯, C#相談室 Part36
http://pc10.2ch.net/test/read.cgi/tech/1165656839/

過去スレは>>2-5あたり。
※スレタイに「#」を入れても消えちゃうので新スレ立てる人は要注意だ。
0002デフォルトの名無しさん2007/01/18(木) 17:56:46
Part35 http://pc8.2ch.net/test/read.cgi/tech/1162490865/
Part34 http://pc8.2ch.net/test/read.cgi/tech/1157549657/
Part33 http://pc8.2ch.net/test/read.cgi/tech/1153537081/
Part32 http://pc8.2ch.net/test/read.cgi/tech/1149934230/
Part31 http://pc8.2ch.net/test/read.cgi/tech/1145075577/
Part30 http://pc8.2ch.net/test/read.cgi/tech/1141448072/
Part29 http://pc8.2ch.net/test/read.cgi/tech/1138925245/
Part28 http://pc8.2ch.net/test/read.cgi/tech/1134514022/
Part27 http://pc8.2ch.net/test/read.cgi/tech/1131544541/
Part26 http://pc8.2ch.net/test/read.cgi/tech/1127063469/
Part25 http://pc8.2ch.net/test/read.cgi/tech/1122352650/
Part24 http://pc8.2ch.net/test/read.cgi/tech/1117631000/
Part23 http://pc8.2ch.net/test/read.cgi/tech/1112968209/
Part22 http://pc8.2ch.net/test/read.cgi/tech/1109630502/
Part21 http://pc5.2ch.net/test/read.cgi/tech/1106490240/
0003デフォルトの名無しさん2007/01/18(木) 17:57:17
Part20 http://pc5.2ch.net/test/read.cgi/tech/1103005153/
Part19 http://pc5.2ch.net/test/read.cgi/tech/1100240847/
Part18 http://pc5.2ch.net/test/read.cgi/tech/1096112588/
Part17 http://pc5.2ch.net/test/read.cgi/tech/1091284402/
Part16 http://pc5.2ch.net/test/read.cgi/tech/1087297504/
Part15 http://pc5.2ch.net/test/read.cgi/tech/1083066815/
Part14 http://pc5.2ch.net/test/read.cgi/tech/1076933504/
Part13 http://pc2.2ch.net/test/read.cgi/tech/1071663456/ (ログ行方不明)
Part12 http://pc5.2ch.net/tech/kako/1066/10660/1066038651.html
Part11 http://pc5.2ch.net/tech/kako/1061/10612/1061262958.html
Part10 http://pc5.2ch.net/tech/kako/1051/10518/1051842450.html
Part9 http://pc2.2ch.net/tech/kako/1039/10396/1039646808.html
Part8 http://pc3.2ch.net/tech/kako/1032/10324/1032488831.html
Part7 http://pc3.2ch.net/tech/kako/1027/10275/1027531796.html
Part6 http://pc3.2ch.net/tech/kako/1022/10222/1022257078.html
0004デフォルトの名無しさん2007/01/18(木) 17:58:12
Part5 http://pc3.2ch.net/tech/kako/1019/10195/1019533942.html
Part4 http://pc.2ch.net/tech/kako/1016/10165/1016597767.html
Part3 http://pc.2ch.net/tech/kako/1009/10094/1009473982.html
Part2 http://pc.2ch.net/tech/kako/1002/10024/1002468050.html
Part1 http://pc.2ch.net/tech/kako/977/977112364.html
0005デフォルトの名無しさん2007/01/18(木) 17:58:43
Visual C# 2005 Express Edition 日本語版
http://www.microsoft.com/japan/msdn/vstudio/express/vcsharp/

MSDNライブラリ
http://msdn.microsoft.com/library/ja/

MSDN2
http://msdn2.microsoft.com/ja-jp/library/default.aspx

相互運用マーシャラによるメモリ管理
http://msdn2.microsoft.com/ja-jp/library/f1cf4kkz.aspx

Buffers のサンプル
http://msdn2.microsoft.com/ja-JP/library/x3txb6xc.aspx

文字列のマーシャリング
http://msdn2.microsoft.com/ja-JP/library/e8w969hb.aspx

pinvoke.net: the interop wiki!
http://pinvoke.net/

テンプレ終了
0006デフォルトの名無しさん2007/01/18(木) 18:08:23
>>1乙
0007デフォルトの名無しさん2007/01/18(木) 18:26:03
>>1乙
0008デフォルトの名無しさん2007/01/18(木) 18:48:58
(#゚ー゚) ←これって「C」と「しぃ」を掛けて「しぃ#」だったのか…
気付かなかった…
0009デフォルトの名無しさん2007/01/18(木) 19:09:14
姉妹スレ。
必要に応じて移動も良し。

ふらっとC♯, C#(初心者用) Part12
http://pc10.2ch.net/test/read.cgi/tech/1168271508/
0010デフォルトの名無しさん2007/01/18(木) 19:09:19
低脳・池沼はここへ

ふらっとC♯, C#(初心者用) Part12
http://pc10.2ch.net/test/read.cgi/tech/1168271508/
0011デフォルトの名無しさん2007/01/18(木) 19:19:37
質問するときに
〜したいのですが、上手くいきません。
〜したときにエラーが出ます。

という書き方はイクナイ。
何も書いてないのと同じ☆

〜したいのですが、〜で〜が失敗します。
〜したときに〜エラーが出ます。

隠さずくわしくかきましょううううう


0012デフォルトの名無しさん2007/01/18(木) 19:49:56
>>11
ここ初心者スレじゃないから
そんなのは放置
0013デフォルトの名無しさん2007/01/18(木) 20:13:41
IDとパスワードを登録してドメインに投げるプログラムについて。
参考になるソースご存知の方はご教授下さい。
0014デフォルトの名無しさん2007/01/18(木) 21:49:33
ドメインって何のドメイン?
0015デフォルトの名無しさん2007/01/18(木) 21:59:59
一般的なyahooとかgooとかに自動ログインするプログラムを作りたいんです。
ヘッダを見る限り、アカウントとパスをサーバに投げればログインしたことになってCookieとか返ってきますよね?
0016デフォルトの名無しさん2007/01/18(木) 22:05:35
Hint: HttpWebRequest CookieContainer
0017デフォルトの名無しさん2007/01/18(木) 22:25:36
HttpWebRequest CookieContainerは、Cookieを使ってログインするのではないでしょうか?
IDとPASSを登録して自動ログイン・・・というのも利用したらいけるんでしょうか?
0018デフォルトの名無しさん2007/01/18(木) 23:26:00
俺用語禁止
ドメイン
サーバにログイン
0019デフォルトの名無しさん2007/01/18(木) 23:30:09
HTTPの基礎からやり直せ
0020デフォルトの名無しさん2007/01/19(金) 11:51:43
スミマセン、ちょっと質問なのですが。

あるTextBox内がマウスでクリックされた場合に、クリックされた行全体を選択状態にしたいと考えています。
次のようなものはすぐに思いついたんですが、この他にやるとしたら、文字列検索とかになるのでしょうか?

private void textBox1_MouseClick(object sender,MouseEventArgs e)
{
textBox1.SelectionStart = textBox1.GetFirstCharIndexOfCurrentLine();
textBox1.SelectionLength = textBox1.GetFirstCharIndexFromLine(textBox1.GetLineFromCharIndex(textBox1.GetFirstCharIndexOfCurrentLine())+1)
- textBox1.GetFirstCharIndexFromLine(textBox1.GetLineFromCharIndex(textBox1.GetFirstCharIndexOfCurrentLine())) - 1;
0021デフォルトの名無しさん2007/01/19(金) 15:57:09
質問ですまない。
色々なサイトで「ShellExecuteでverbをpropertiesにして呼び出すとそのファイルのプロパティダイアログが出てくる」と書いてあったので以下のようなコードを書いて実行してみたんだけど、
ComponentModel.Win32Exceptionが発生(この操作に対して指定されたファイルには、アプリケーションが関連付けられていません。)して使えない。

ここはWin32APIをそのまま使うしかないのですか?

Process p = new Process();
p.StartInfo.FileName = "(ファイルのパス)";
p.StartInfo.Verb = "properties";
p.Start();
0022デフォルトの名無しさん2007/01/19(金) 17:31:20
>>20
それのどこに不満がある?それ以上の方法はないと思うけど

まあ、そのままだと最終行で例外落ちしそうだが。
0023デフォルトの名無しさん2007/01/19(金) 18:13:43
>>20
Homeを押した後、シフト+Endを押すというコード書けば短くなりそうだ
0024デフォルトの名無しさん2007/01/19(金) 18:18:27
>>22
文字列が無い場合の例外は、一旦"int length"に格納して分岐させて解決させました。
基本的には希望通りなのですが、何とも長ったらしいのでもっといい方法は無いかと思いまして。
あと、やや問題なのはダブルクリックをした際に対応されなくなる(選択範囲が一文字だけになる)事でしょうか。
0025デフォルトの名無しさん2007/01/19(金) 18:22:38
>>20の質問の解決法ならそれで十分。
最終的になにがしたいのかわからないから
こっちにはその他の問題なんて想像もつかん。
0026デフォルトの名無しさん2007/01/19(金) 18:57:49
>>21
そっちのVerbはレジストリにあるやつだけ
Verbsプロパティみれば分かる
0027デフォルトの名無しさん2007/01/19(金) 19:08:00
>>26
thx.

WinAPIあさるか・・・
0028デフォルトの名無しさん2007/01/19(金) 20:28:27
>>27
ずばりShellExecuteEx
0029デフォルトの名無しさん2007/01/20(土) 11:02:13
画像ファイルを使った時計を作ったんだけどメモリ使用量が凄い
タイトルバーに収まるくらい小さいのに15MBくらい消費してる
メモリクリーナーを使うと1.5MBになる

表示する用の画像をメンバ変数に持っておいて
その画像の一部を毎秒フォームに描画してる
タイマーで生成してるのは
フォームのGraphics(解放してる)だけ

なんでこんなにメモリを消費してるの?
0030デフォルトの名無しさん2007/01/20(土) 11:12:13
またメモリの話か。
とりあえずVSで初期状態のWindowsフォームアプリ作って見ろ。
なんにもしなくても16MB確保してるから
0031デフォルトの名無しさん2007/01/20(土) 11:19:49
>>29
作りが悪いから。
いまさらメモリとかいってる段階で学習能力無いからどーせまともな書き方してないんでしょ
0032デフォルトの名無しさん2007/01/20(土) 11:20:00
�d
0033デフォルトの名無しさん2007/01/20(土) 11:22:22
一番大きいのは、.NET の DLL を使ってるから。
DLL は複数プロセスで同じメモリが共有されるが、
タスクマネージャではそれをプロセスごとに計上する。

あとメモリクリーナの類は使う意味がないぞ。
仮想メモリに追い出すだけだから。
0034デフォルトの名無しさん2007/01/20(土) 11:36:50
>>29
この辺とか
.NETアプリで使用メモリがどんどん増えていく
http://www.atmarkit.co.jp/fdotnet/vblab/appqa_01/appqa_01_01.html
0035デフォルトの名無しさん2007/01/20(土) 13:21:09
ワーキングセットの内訳を調べるツールはないものか。
プロセスビューワでコミットチャージの内訳ならわかるのだが。
0036デフォルトの名無しさん2007/01/20(土) 22:23:54
いつの間にIE7正式リリースしてたんだ?
0037デフォルトの名無しさん2007/01/20(土) 22:25:33
何故このスレで聞く
0038デフォルトの名無しさん2007/01/20(土) 22:34:33
古典的なランダムアクセスファイルをパフォーマンスを犠牲にせずに
実現する方法ってないかな?

つまり、プリミティブな値型(int とかfloatとか)のみをフィールドにもつ構造体sがあるとして、
このsが一次元配列状に数珠繋ぎに記録されるようなファイルの読み書き、
具体的には任意位置からsまたはsの配列として読み書きをしたいんですが。

BitConverter使って構造体とバイト配列を相互変換すればとりあえずの実現はできそうだけど、
これだといかにも効率が悪そうだし。。

この辺とか読むと、.NETでもsの配列のようなものは単純に連続した領域にフィールドの
バイナリイメージが書かれるようにできるようだから、なにか効率的な方法が
あってもよいように思うんだけど。
http://msdn2.microsoft.com/ja-jp/library/75dwhxf7(VS.80).aspx
0039デフォルトの名無しさん2007/01/20(土) 22:51:29
byte[]で読み書き
あとunsafeとポインタ
0040デフォルトの名無しさん2007/01/20(土) 23:51:49
普通にポインタつかえばいいじゃない?
0041382007/01/21(日) 01:24:59
VB厨なんで誤解してるかもしれないけど、unsafe使っても結局できるのは、
「構造体配列のバイナリイメージをbyte[]にコピーすること」であって、
「構造体配列そのものを(マネージドな)byte[]として扱うこと」ではないですよね?
(BinaryReader,BinaryWriter使って読み書きするためには、マネージドなbyte[]として
扱えないと意味がない。)

それならBitConverterで変換するのとあまり変わらない気がするんですが。。
0042デフォルトの名無しさん2007/01/21(日) 01:30:16
>BitConverter使って構造体とバイト配列を相互変換すればとりあえずの実現はできそうだけど、
>これだといかにも効率が悪そうだし。。
0043デフォルトの名無しさん2007/01/21(日) 01:44:11
何でコピーするの?
sの配列をポインタ使って順番にファイルに出していけばいいんじゃないか?
0044デフォルトの名無しさん2007/01/21(日) 01:48:19
>>41
unsafeにしといていまさらBinaryWriterなんかつかうことはないだろ
0045デフォルトの名無しさん2007/01/21(日) 01:56:05
>>43
目的は「効率的に」読み書きすることだから、1バイトずつちびちび処理するんじゃ
恐らくあまり意味がないわけで。。

>>44
Win32使えって事?
そりゃあまあそうなんですが。
0046デフォルトの名無しさん2007/01/21(日) 02:27:40
ここ見てると次期はC#なんかねぇ・・・と思う
元C、元C++、元VBがわんさか集まってる感がある
個人的に好きな言語だからいいんだがM$がね・・・
0047デフォルトの名無しさん2007/01/21(日) 02:43:42
>> 45
結局こういう事で良いのか?

struct Hoge {
    public int A;
    public int B;
}

using (FileStream fs = new FileStream(path, FileMode.Open)) {
    byte[] data = new byte[16];
    fs.Read(data, 0, data.Length);
    fixed (byte* pdata = data) {
        Hoge* hoges = (Hoge*)pdata;
        for (int i = 0; i < 2; i++) {
            hoges[i].A *= 2;
            hoges[i].B += 2;
        }
    }
    fs.Write(data, 0, data.Length);
}
0048デフォルトの名無しさん2007/01/21(日) 02:48:39
>>45
.NETは基本的にマシンパワーで押し切るようにできてる環境なんだ

おとなしくC++/CLIでも使っとけ
004938,452007/01/21(日) 03:08:56
>>47
目的は構造体のランダムアクセスファイルを効率的に実現することなので
たぶん微妙に違うと思う。

つまり、必要なのは「構造体配列とファイル上の位置を引数にとってファイルに書き込むメソッド」と
「ファイル上の位置と必要なデータ数を引数にとって構造体配列を返すメソッド」です。
0050デフォルトの名無しさん2007/01/21(日) 03:29:58
つうかほとんどIOの性能だけで決まって
その他の影響なんて誤差じゃねーの、大抵。
1バイトずつちまちまって何を1バイトずつちまちまするっていってんのよ?
0051デフォルトの名無しさん2007/01/21(日) 03:37:19
どうせどっか低級なところでバッファリングされるんだから、
一旦配列にコピーするくらいたいしたことないだろ。
0052デフォルトの名無しさん2007/01/21(日) 03:52:21
FileStreamでバッファリングされるし
さらにOS自体でバッファリングされるし
0053デフォルトの名無しさん2007/01/21(日) 14:00:52
ポインタを使うよりMarshal.Copyのほうが速いよ
0054382007/01/21(日) 15:04:11
>>53
ああ、なるほど。いいこと聞いたよありがとう。
unsafeで構造体配列の先頭のポインタを取得して、それをIntPtrにキャストしてやれば
Marshal.Copyを使って効率よくbyte[]と相互変換できそうな感じだ。

それ以前に、値型だけをメンバーに持つ構造体の配列っていうのは、
連続したメモリ領域に隙間なく配置される、と思っていいんだろうか本当に?
もちろん構造体はStructLayoutでアラインメントをきちんと指定するという前提で。

このあたりMSDNライブラリ読んでも俺の頭じゃどうもよく理解できない。
0055デフォルトの名無しさん2007/01/21(日) 15:08:24
fixed してれば問題ない
0056デフォルトの名無しさん2007/01/21(日) 17:48:13
そもそも何がしたいのかと。
手段自体が間違ってるってことないのか?
0057デフォルトの名無しさん2007/01/21(日) 17:51:57
コンソールで作ったプログラムを、ボタンをクリックすると動くようにするのはどうしたら良いのでしょう?
クラスをボタンクリックの方のプロジェクトに持っていって読み込むって感じですか?
0058デフォルトの名無しさん2007/01/21(日) 17:53:39
初心者スレいってきな
0059デフォルトの名無しさん2007/01/21(日) 22:07:17
>>38 = >>49
なのか?

後だし乙!
0060デフォルトの名無しさん2007/01/22(月) 14:28:06
おまいらある処理がどのぐらい時間かかってるのか計りたいんですがいい方法ないですか?
パフォーマンスツールだとある処理もしくはそこから呼ばれる処理だけを分析するようなことが出来ないような木がするんですがどうなんでしょう(´・ω・`)
そうしないと遅くて使い物に並んです・・・
0061デフォルトの名無しさん2007/01/22(月) 14:34:24
DevPartner
0062デフォルトの名無しさん2007/01/22(月) 14:36:06
>>61 ・・・・(´・ω・`)

・・・・えーと有料ですよね・・・
0063デフォルトの名無しさん2007/01/22(月) 14:47:17
このスレ的にはないものは自分で作れ
0064デフォルトの名無しさん2007/01/22(月) 14:55:39
VSに統合されてなくてよければMS製のCLRプロファイラがあったろ
0065デフォルトの名無しさん2007/01/22(月) 14:57:40
>>62
CEは無料でダウンロードできね?
2003しか対応してないけど
0066デフォルトの名無しさん2007/01/22(月) 14:58:30
お舞らリリースのデバッグ情報出力ってデフォルトでNoneになってます?
自分のはPDB出力ですた(´・ω・`)
きったら分析するまでも泣く馬鹿っぱやになったよ・・・
0067デフォルトの名無しさん2007/01/22(月) 15:03:48
いちいち(´・ω・`)つけなくていいよ^^
0068デフォルトの名無しさん2007/01/22(月) 15:04:06
>>65 2003までですね・・・
0069デフォルトの名無しさん2007/01/22(月) 16:51:08
使い物にならんほど遅いなら大体原因は限られてるでしょ
0070デフォルトの名無しさん2007/01/22(月) 17:13:05
http://pasokon-yugi.cool.ne.jp/AutoLogOn/
こういうものをC#で作るにはどうしたら良いのでしょうか?
どれでも良いですけど・・・とりあえずmixiでお願いします。
0071デフォルトの名無しさん2007/01/22(月) 17:19:31
意味不明
0072デフォルトの名無しさん2007/01/22(月) 17:20:38
この間も同じような質問あったなあ
0073デフォルトの名無しさん2007/01/22(月) 17:23:19
別にC#だから特別ってことは何もないから調べろとしか
0074デフォルトの名無しさん2007/01/22(月) 17:25:13
>>70
http://pc10.2ch.net/test/read.cgi/tech/1168271508/410
0075デフォルトの名無しさん2007/01/22(月) 17:31:54
Stopwatchでもつかったら?
プロファイラ使いこなせるならそれがいいんだろうけど
現実にはそんなもの知らない人間が調査することも多いし。
俺は簡単に時間計測できるユーティリティクラス作ってる。
気になるところにはとりあえず入れとく、あるいは勝手に入るようにしてる。
構成ファイルで無効に出来るようにしとけば消す必要もない。
0076デフォルトの名無しさん2007/01/22(月) 17:33:42
>>70
Visual C#(Visual Studio)を起動する。
メニューのファイル→新規作成→ファイルをクリックし、ダイアログボックスの「HTMLページ」を選択して開くを押す。
最初に表示されてるHTMLは必要ないので全て消す。
上のサイトから「mixiに一発でログインできるHTML文書」のHTMLをコピー&ペースト。
ファイル→名前を付けて保存で、適当な名前を付けて保存。

ほら、C#でできたよ!!
0077デフォルトの名無しさん2007/01/22(月) 17:47:51
Windowsサーバのサービスを管理(開始・停止・再起動)が行えるアプリケーションを作成してるのだけどもドメイン・アカウント・パスワードを入力して作業する方法ってありませんか?
Process.Startでexeを指定すればできるんだけどももう少しスマートに一つのexeで実行したいのですが
0078デフォルトの名無しさん2007/01/22(月) 17:49:23
WMI
でできるのかどうかは知らんけど
0079デフォルトの名無しさん2007/01/22(月) 18:08:41
JavaのPipedReader, PipedWriterみたいなクラスってC#にはない?
パイプライン処理を実装したいんだけど・・・
0080デフォルトの名無しさん2007/01/22(月) 18:46:29
Javaつかったことないからよく分からんが
StreamReader, StreamWriterあたりじゃね
0081792007/01/22(月) 20:26:16
うーん

PipedWriter(PipedReader)
引数にパイプ入力データであるPipedReaderオブジェクトを指定します。

Javaのはこういうコンストラクタがあってさ
これ使うとReaderのデータを自動的にWriterに渡せるんだよね
やっぱりないか・・・
0082デフォルトの名無しさん2007/01/22(月) 20:44:20
http://www.google.com/search?num=50&hl=ja&q=C%23%20%E3%83%91%E3%82%A4%E3%83%97
0083デフォルトの名無しさん2007/01/22(月) 22:13:28
>>79
http://msdn2.microsoft.com/ja-jp/library/336wast5(VS.80).aspx
多分無い。

0084デフォルトの名無しさん2007/01/22(月) 22:35:08
自分で作るとしてもそんな難しそうなものじゃないな
0085デフォルトの名無しさん2007/01/23(火) 01:09:52
C#のwindows form開発でsql server 2005のストアドプロシージャから
取得したデータをdatagridviewのソースに設定しています。

その際verbinary(max)列に画像を入れているものがあるのですが、
値がnullのものが勝手に「×」マークがついた画像としてdatagridviewに表示されてしまいます。

値がnullの場合はdatagridviewに何も表示しないようにするにはどうしたらいいのでしょうか?
0086デフォルトの名無しさん2007/01/23(火) 07:59:34
DataGridViewImageColumn の解説嫁
0087デフォルトの名無しさん2007/01/23(火) 10:20:44
>>69 なんか知らんがPDBがあるとPointF型のプロパティにsetするところで15ミリせくかかることがある。
それもリストでぐるぐる回すループの中。
PDBなくしたら快適そのもの。PDBがどうデバッガで絡んでるのか知らん。
0088デフォルトの名無しさん2007/01/23(火) 17:59:13
画像1から画像2を検索し、見つかった場合
その左上頂点座標を取得しようと考えています。

今は、
画像2の左上ピクセルを画像1内の全てのピクセルと照らし合わせ、
もし、一致した場合、さらに画像2の次のピクセルと、画像1の次のピクセルを照らし合わすという
作業を続けることによって判定しているのですが、
もっとスマートな実装、もしくは関数があるのでは?と思い質問させていただきました。
他の方法はあるのでしょうか?
0089デフォルトの名無しさん2007/01/23(火) 18:00:55
そんなけったいなものねえよ
0090デフォルトの名無しさん2007/01/23(火) 18:11:16
せめてポインタ使おうね
Get/SetPixelでやったら死ぬよ
0091デフォルトの名無しさん2007/01/23(火) 18:39:34
なんだよポインタってw
0092デフォルトの名無しさん2007/01/23(火) 18:41:41
ポインタはポインタじゃねえの?
0093デフォルトの名無しさん2007/01/23(火) 18:43:15
ウルトラ警備隊の車
0094デフォルトの名無しさん2007/01/23(火) 18:57:16
ハンティングにつれてくワンコのことじゃないの?
0095デフォルトの名無しさん2007/01/23(火) 19:05:39
一番簡単なのはGetPixel。その代わり遅い。
たぶんこれでやってると思うけど。

で、効率上げようとピクセルで判断するんじゃなくて
バイトデータで判断しろと言いたいのがたぶん >>90。
でも色数等の比較環境(バイトデータの保存形式)を揃えないと意味が無い。



0096デフォルトの名無しさん2007/01/23(火) 19:12:40
対角線だけGetPixelでチェックして、あとはXORでbitbltして真っ黒になるかどうか見るとか。
まあDCが「真っ黒」かどうかどうやって判定するのか俺は知らないけどw
0097デフォルトの名無しさん2007/01/23(火) 19:17:39
>>88
ヒントだけですまん。

・画像1内の全てのピクセルと比較する必要はない
→せめて画像1の幅-画像2の幅でおk(高さも同様)

・画像の場合、隣のピクセルは同じ色の頻度が高いので無駄が多い
→数ピクセル飛ばしにチェックとか(0,8,16,32, 1,9,17,33, 2・・・)

もういらない?
0098デフォルトの名無しさん2007/01/23(火) 19:20:14
>>97
そんなトーシロー臭い「ヒント」いらんやろw
0099デフォルトの名無しさん2007/01/23(火) 19:26:34
質問みたらトーシローっぽいからいいんじゃね?
0100デフォルトの名無しさん2007/01/23(火) 19:35:36
>>97
前者はともかく後者はいたずらに精度を下げてるだけじゃない
0101デフォルトの名無しさん2007/01/23(火) 19:37:16
>>100
下げてないだろw

0→8→16→32→1→9・・・
0102デフォルトの名無しさん2007/01/23(火) 19:38:02
しかし、何のためにそんな判定が必要になるんだ
根本的なところから考え直したほうがいい気が駿河
0103デフォルトの名無しさん2007/01/23(火) 19:38:10
他人のレスに文句しか言わないヤツばっかりでワロタ
0104デフォルトの名無しさん2007/01/23(火) 19:40:05
>>102
「画像に含まれた画像を探す」じゃねーの?
例えばどういうこと?
0105デフォルトの名無しさん2007/01/23(火) 19:41:03
>>102

>>88はそれを聞いてるんだろーがw
0106デフォルトの名無しさん2007/01/23(火) 19:44:27
速度もとめるなら各行をBM法を使って探索すると良いよ!
列部分はほとんどかわらないけど、行部分が理論上高速になる。

と、書いてて思ったけど2次元に拡張したBM法ってない?
そういうのがあったら、列部分も高速化できると思うんだけど。
0107デフォルトの名無しさん2007/01/23(火) 21:00:23
>>88
要は、UWSCのCHKIMG関数のよう事をやりたいわけよね?
で、最終的に何がしたいんだい?
0108デフォルトの名無しさん2007/01/23(火) 21:13:32
>>107
いいから >>88 の最初の2行に答えてやろうよ
0109デフォルトの名無しさん2007/01/23(火) 21:27:46
だからbitbltでxorとれば判定できるでしょ
0110デフォルトの名無しさん2007/01/23(火) 23:49:08
1ピクセル目のいろで探して見つかったらXor?
0111デフォルトの名無しさん2007/01/23(火) 23:51:02
それの方が遅い気が・・・
0112デフォルトの名無しさん2007/01/23(火) 23:53:04
画像に含まれた画像を探すって
文字列含んだ画像からアルファベット探すようなものかな?
0113デフォルトの名無しさん2007/01/23(火) 23:55:13
実際にベンチとってみないことにはなんともいえんな。
0114デフォルトの名無しさん2007/01/24(水) 00:05:56
多分ポインタの単純なコードが速いと思うよ。
0115デフォルトの名無しさん2007/01/24(水) 01:00:52
だから具体的に教えろよ
それじゃ >>90 に戻るだけだろ
0116デフォルトの名無しさん2007/01/24(水) 01:09:02
xorするにしたってwidth*height*depth回の比較は必要になるじゃない
LockBitsでとったデータをポインタで手繰っていけばいい
0117デフォルトの名無しさん2007/01/24(水) 01:09:51
>>116
depthって釣り?
0118デフォルトの名無しさん2007/01/24(水) 01:11:32
>>116
結局 >>95 と同じレベルかよ
0119デフォルトの名無しさん2007/01/24(水) 01:15:10
C++/CLIでmemcmpでもしときゃいいじゃない
0120デフォルトの名無しさん2007/01/24(水) 01:28:40
高速画像マッチングアルゴリズムのコーディングなんだよな、本当は
素直にアクティブ探索法とかコーディングすればおk
0121デフォルトの名無しさん2007/01/24(水) 02:13:02
もう言語は関係なくアルゴリズムの話になるってわけだな
0122デフォルトの名無しさん2007/01/24(水) 07:15:31
C++かアセンブラでゴリゴリ書けば速くなるって結論でいいんじゃないかw
0123デフォルトの名無しさん2007/01/24(水) 07:33:01
Scan0などを使うとかの話じゃないの?
0124デフォルトの名無しさん2007/01/24(水) 09:39:50
ウォーリーを探せ
0125デフォルトの名無しさん2007/01/24(水) 09:42:09
カラー画像ならグレイスケールに変換してマッチングかければ速くなるお
0126デフォルトの名無しさん2007/01/24(水) 12:33:53
>>125
数学できなかった奴だねチミは。
写像って知ってるか?w
0127デフォルトの名無しさん2007/01/24(水) 13:03:09
(゚д゚)ハァ?
0128デフォルトの名無しさん2007/01/24(水) 13:56:44
写像となんの関係が?
0129デフォルトの名無しさん2007/01/24(水) 15:27:39
よくわからんが異なるカラー画像が同一のモノクロ画像に
なることがある、というのを1対多の写像、みたいにいいたいのでは
ないかと。

0130デフォルトの名無しさん2007/01/24(水) 15:31:43
違いが出た時点で違うことがわかるのが早いほうがいいなら
早い手段での比較を通して、最後に元画像でチェックする、とか?
0131デフォルトの名無しさん2007/01/24(水) 15:33:35
違うと分かるまで走査しなきゃいけないんじゃね?
0132デフォルトの名無しさん2007/01/24(水) 15:42:32
WebBrowserコントロールのUrlプロパティにローカルフォルダのパスを指定すると
エクスプローラと同じようにファイル操作ができますが、
このとき表示されているフォルダに関する情報(ファイル一覧など)を取得することは可能でしょうか?
0133デフォルトの名無しさん2007/01/24(水) 16:24:04
>>132
パスが分かってるのなら
普通にDirectoryInfoでファイル一覧とか取得できるけど?
選択されてるオブジェクトとか知りたいなら↓

リフレクション使う。
Shell32.dllとSHDocVw.dllを参照に追加して、

FieldInfo fi = typeof( System.Windows.Forms.WebBrowser ).GetField( "axIWebBrowser2", BindingFlags.NonPublic | BindingFlags.Instance );
SHDocVw.IWebBrowser2 wb = (SHDocVw.IWebBrowser2)fi.GetValue( this.webBrowser1 );
Shell32.IShellFolderViewDual2 folderView = wb.Document as Shell32.IShellFolderViewDual2;

MessageBox.Show( folderView.Folder.Items().Item(0).Path );

あとはこのShell32.IShellFolderViewDual2 を
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/shell/reference/objects/objects.asp
を参考にしてごにょごにょ。
0134デフォルトの名無しさん2007/01/24(水) 16:54:24
>>126はちょっと早計だなw
グレイスケールにしてはいけない場合だって当然あるけど
そういう例外は除いて一般的に速くなるってことだろ

テンプレートの特徴量(例えばヒストグラム)を事前に作成しておいて
特徴量で比較する手法でも単純なテンプレートマッチングより速いぞ
0135デフォルトの名無しさん2007/01/24(水) 19:37:44
PenとかBrushっていうのは描画が終わり次第Disposeすべきなんだろうか?
Formとかと同じ寿命にするのはまずい?

ググると掲示板なんかで「すべき」と言ってる人が何人か見つかるけど、
根拠付きでそう書いてある文章は見つからない。

Bitmapあたりが「すべき」なのは直観的にも明らかなんだけど、
PenやBrushなんてせいぜい数100Byte程度のメモリしか消費しないように思えるんだけど。
生のWin32ではどうか知らないけど、.NETじゃ単なる「オブジェクト」だよね?
0136デフォルトの名無しさん2007/01/24(水) 19:50:55
ちゃう
0137デフォルトの名無しさん2007/01/24(水) 19:53:31
アンマネージリソースを持ってるクラスは基本的にIDisposable
0138デフォルトの名無しさん2007/01/24(水) 20:00:01
>>137 そういうことを聞いてるんじゃないだろうw

ブラシとかのオブジェクトはGDIリソースを消費して、
その数にはシステム単位で上限があるから
アプリケーションが解放しないで保持してると不足する可能性がある。
0139デフォルトの名無しさん2007/01/24(水) 20:11:22
>>138
つまり、PenやBrushは、「Graphicsの描画メソッドで使われる時だけ生のOSの
リソースを取得する」ような実装にはなってないってこと?

本当にそんな間抜けな実装をするだろうか?
0140デフォルトの名無しさん2007/01/24(水) 20:17:21
>「Graphicsの描画メソッドで使われる時だけ生のOSのリソースを取得する」

そんな間抜けな実装(゚�听)イラネ
0141デフォルトの名無しさん2007/01/24(水) 20:18:08
なってないよ
そんなこと勝手にされたらかえって混乱する
だから必要に応じてDisposeが使えるようにしてある
0142デフォルトの名無しさん2007/01/24(水) 20:33:52
>>141
そうか回答ありがとう。

結構複雑な描画をするコントロールを自作してるんだけど、
その際ペンとかをフィールドで持ってコントロールと同じ寿命にすると楽だと思ったんだけどね。

線の色や太さやスタイルなんかは、Penのそれをそのまま公開するようにすれば済むから。
これがまずいとなると面倒だな。
0143デフォルトの名無しさん2007/01/24(水) 20:38:27
http://www.microsoft.com/japan/msdn/community/gdn/ShowPost-1418.htm
ここによるとそういう実装になってるらしい。
ただ正確な情報じゃないので実際どうなってるのかは知らないが。

まあ、仮にそうなってたとしてもそれは「実装の詳細」なわけで、
MSDNにそうしろと書いてある以上使ったらすぐ解放しなければならないのには変わりない。
0144デフォルトの名無しさん2007/01/24(水) 22:34:49
いや,かなり素直なGDI+のラッパーだよ
コンストラクタでペン作ってDisposeで破棄してるだけ
0145デフォルトの名無しさん2007/01/24(水) 22:45:16
Disposeパターンめんどい人は
using文をつかえ
0146デフォルトの名無しさん2007/01/24(水) 22:55:03
ところで、Pensから得られたペンはDisposeしなくていいんかいな?
0147デフォルトの名無しさん2007/01/24(水) 22:58:56
>>146
Pensで取得したものはDisposeしようとすると例外が発生すると思うけど。
0148デフォルトの名無しさん2007/01/24(水) 23:23:10
俺はデフォルト値にPens.Blackを使って嵌った
MSDNに一言も書いてないのは不親切だよな
0149デフォルトの名無しさん2007/01/25(木) 01:13:35
パスワード入力用に入力文字が'*'で表示されるテキストボックスを
作りたいんですけど、プロジェクトはクラスライブラリと
ユーザコントロールのどちらにすれば良いですか?
0150デフォルトの名無しさん2007/01/25(木) 01:17:29
TextBox.PasswordCharでは駄目なんか?
0151デフォルトの名無しさん2007/01/25(木) 01:17:45
TextBox.PasswordCharじゃいかんのか?
0152デフォルトの名無しさん2007/01/25(木) 01:19:43
どうしても自前で実装したければ、TextBoxを継承するのが普通だろうな
UserControlを使う必要はない
0153デフォルトの名無しさん2007/01/25(木) 02:39:25
>>152
あり得ない
0154デフォルトの名無しさん2007/01/25(木) 08:06:03
>>152
その通りなんだけど、>>153みたいに誤解してる人間が多いね何故か。
0155デフォルトの名無しさん2007/01/25(木) 09:14:19
>>133
ありがとうございます
参考にしてみます。
0156デフォルトの名無しさん2007/01/25(木) 14:44:44
C#でレイヤードウィンドウ使いたいときはAPIでUpdateLayerdWindowを呼ばないと駄目(´・ω・`)?
0157デフォルトの名無しさん2007/01/25(木) 16:15:05
GetGUIThreadInfoのAPI使ったサンプルってありませんか?
0158デフォルトの名無しさん2007/01/25(木) 17:06:48
>>156
yes

>>157
pinvoke.netでも見てみれば?
0159デフォルトの名無しさん2007/01/25(木) 21:03:14
グラフ理論を確かめたいので、
グラフ表示用のライブラリが欲しいのですが、
有りますでしょうか?
0160デフォルトの名無しさん2007/01/25(木) 23:41:47
ドトネット用のソフトあったけど忘れたw
馬鹿な答えで申し訳ないがどこかにあるよ。
ただしサイトは英文だった。
0161デフォルトの名無しさん2007/01/25(木) 23:47:25
C用のをDllImportするほうが現実的かも
0162デフォルトの名無しさん2007/01/26(金) 00:20:56
graphlayout でぐぐる。java だけど。
0163デフォルトの名無しさん2007/01/26(金) 05:56:35
つ【Graphviz】
0164デフォルトの名無しさん2007/01/26(金) 09:59:23
ぬこでもわかるC#出たけど読んだ人います?
0165デフォルトの名無しさん2007/01/26(金) 10:59:23
ゾウリムシでも分かる言語なので読んでない
0166デフォルトの名無しさん2007/01/26(金) 15:04:32
COMでLPIDISPATCHを受け取る関数があって
.NETのラッパーだとobject型で受け取るんです。
で実際に入ってるのはSystem._ComObjectなんですけど
このSystem._ComObjectを元のインターフェイス(のラッパー型)に変換するにはどうすればいいんでしょうか?
0167デフォルトの名無しさん2007/01/26(金) 15:56:40
インポータ使うか手動で必要なインターフェイス定義してキャスト。
あるいはリフレクションでも出来たかもしれない。
0168デフォルトの名無しさん2007/01/26(金) 18:47:23
>>164
本出たのか
猫のサイトを覗いてみたけど,CやC++を知ってる人向きな感じがした
0169デフォルトの名無しさん2007/01/29(月) 09:29:05
質問です。
timerなどのようなコントロールを作成することは出来るのでしょうか?
又、そういったソースなどはMSDNなどのサイトに置いてあるんでしょうか?
もしあるのでしたら、urlやググるキーワードなど教えていただけたら有り難いです。
0170デフォルトの名無しさん2007/01/29(月) 11:55:45
>>169
できる。というかSystem.Windows.Forms.Timerとか揃ってる。
サンプルソースくらいどこかにころがってるでしょ
とりあえずVC#Expressインストールして付属のMSDN読むのがお勧め
0171デフォルトの名無しさん2007/01/29(月) 12:04:55
http://www.koders.com/csharp/fidC6DDFAA5D78849154F79C51CAA282B0D60D61DD3.aspx
0172デフォルトの名無しさん2007/01/29(月) 18:36:43
ビジュアルを持たないコンポーネントを作りたいのか?
0173デフォルトの名無しさん2007/01/29(月) 19:01:49
ぬこならわかるC#
0174デフォルトの名無しさん2007/01/29(月) 19:11:42
いろいろ調べてみたのですが、わからないので教えてください。

現在作りたいもの
 Windows Media Encoder SDKを使ってAVIをWMVにエンコードするC#コンソールプログラム

やろうとしていること
 エンコード処理の終了イベントを取得してプログラムを終了させる。

困っていること
 Visual C# Express Edition上でデバッグ実行をすると正常にイベント処理されるが、
 CTRL+F5で実行すると、終了処理イベントを取得できない。このとき、開始イベントは
 取得できている。もちろん、コマンドラインからExe叩いても同じ。

行っていること
 このサイトにあるサンプルを単純にコピペして使ってます。
 ttp://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmencode/htm/capturingeventscsh.asp
 唯一違うのは、エンコードしているファイルに音声がないので、SrcAudの処理部分はコメントアウトしています。

デバッグ実行ではイベントの割り込みがデバッガによって頻繁に行われると理解していて、そのため、イベントキュー内の
イベントが正常に処理されるのでは?と思ったのですが…。

何かヒントでもわかればと思っています。お願いします。


0175デフォルトの名無しさん2007/01/29(月) 19:34:38
2つ同時にエンコードとかしてないか?
あと途中でオブジェクトの寿命終わったりしてないか?
0176デフォルトの名無しさん2007/01/29(月) 20:00:55
別IDですが、174です。

>>175

えっと、二つ同時にとかはしていません。
ただ、途中でオブジェクトの寿命が終わってるのは可能性ありそうです。
が、オブジェクトの寿命ってどうやって延命するんでしょうか。。。?

調べてみます。
0177デフォルトの名無しさん2007/01/29(月) 20:01:34
ビルドは確実にできてる?
0178デフォルトの名無しさん2007/01/29(月) 20:08:27
>>177

はい。ビルドはできてます。
Exeも更新されています。
0179デフォルトの名無しさん2007/01/29(月) 20:12:44
「終了処理イベントを取得できない」てどういう意味?
いつまでも終了しないの?
0180デフォルトの名無しさん2007/01/29(月) 20:14:59
>>179

はい。そうです。
イベントごとに何かメッセージを出力させるようにして確かめたのですが、
Debug時には最後まで表示されるのですが、通常実行時には、いつまでたっても、
Whileループの中を回っていました。。。
0181デフォルトの名無しさん2007/01/29(月) 20:22:32
  _   ∩
( ゚∀゚)彡 おっぱい!Volatile!
 ⊂彡

0182デフォルトの名無しさん2007/01/29(月) 20:38:16
VistaにVSインストールしたら報告してね!
01831692007/01/29(月) 20:54:42
>>170,172
スミマセン、timerのようなという表現は適切じゃなかったですね。
>>172さんの仰る通り、ビジュアルを持たないコントロールを作りたい、ということです。
例えば、サーバから定期的なメッセージをクライアントに送るようなアプリケーションがあったとして、
そのメッセージをイベントとして受け取れるようなアプリケーションが作れないか、と考えています。
こちらはまだC♯を触り始めたばかりで、これはあくまで習作なのですが。
0184デフォルトの名無しさん2007/01/29(月) 21:23:54
>>182
起動するたびに Run as Administrator してねって言われるよ
0185デフォルトの名無しさん2007/01/29(月) 21:24:19
ほんとかよ。
0186デフォルトの名無しさん2007/01/29(月) 21:25:55
たしか、for Vistaっていうバイナリ出てなかったっけか?
0187デフォルトの名無しさん2007/01/29(月) 22:09:55
列挙型
enum A : int
{
 a
}
でint b = (int)aと
aにキャストがいるのは何でなの
intだっつってるのに
0188デフォルトの名無しさん2007/01/29(月) 22:10:41
あ、int b = (int)A.a
ですね
0189デフォルトの名無しさん2007/01/29(月) 22:14:39
A.a は A 型であって int とは相互変換できるってだけだから
0190デフォルトの名無しさん2007/01/29(月) 22:27:04
なるほどダウンキャストがいるってことですね
トンクスです
0191デフォルトの名無しさん2007/01/29(月) 22:27:44
>>183
System.Window.Forms.Timer じゃないTimerがあるよ。
でも、その用途にTimerはオススメしないけど。
0192デフォルトの名無しさん2007/01/29(月) 22:31:45
だからTimerじゃないと(ry
0193デフォルトの名無しさん2007/01/29(月) 22:32:43
>>190
クラスツリーとしてはAはEnumの子で、EnumとInt32は兄弟だから、ダウンキャストとは言わんな
01941922007/01/29(月) 22:33:28
なんだよ…orz
0195デフォルトの名無しさん2007/01/29(月) 23:51:21
>>181

ありがとうございます。
意味を理解しました。
で、解決しました。

ん〜、確かに…言われてみれば納得です。

マルチスレッドなプログラムや組み込み系のプログラムはあまりやったことが
なかったもので(←言い訳です)、今回は非常に勉強になりました。

0196デフォルトの名無しさん2007/01/30(火) 16:41:48
「コンテキストメニューをあるタイミングで表示→項目をユーザが選択」
という事はどうすればよいのでしょうか。

通常、ユーザが右クリックしてコンテキストメニューを開きますが
ここはプログラム側でコンテキストメニューを表示し、ユーザに選択を
促そうと思っています。

this.ContextMenuStrip.Show();
とやると、一瞬コンテキストメニューが表示されますが、次の処理へ
進んでしまい、ユーザが選択をする事が出来ません。
0197デフォルトの名無しさん2007/01/30(火) 17:16:38
次の処理へ進む?もしかしてアクティブ状態じゃないんじゃない?
0198デフォルトの名無しさん2007/01/30(火) 17:18:34
そうでもないな、ユーザーがマウスで何かしてる、とか?
0199デフォルトの名無しさん2007/01/30(火) 17:29:07
ContextMenuStripはWindowだから
Showしたあとにどこかのコントロールに
フォーカス合わせちゃってるんじゃないのか
0200デフォルトの名無しさん2007/01/30(火) 17:30:03
ContextMenuStrip -> ContextMenu
0201デフォルトの名無しさん2007/01/30(火) 18:13:54
>>190
enum A : intは継承とは違うぞ
形式が似てるだけ
0202デフォルトの名無しさん2007/01/30(火) 19:18:03
>>197>>198>>199
そんな高度な話ではなく、this.ContextMenuStrip.Show();
の次の行に制御がいってしまいました、という話だと思う。
イベントドリブンが解ってないという話。

>>196
コンテキストメニューを Show() したら、選択なりキャンセルなりされて
イベントが来るまで何もしないようにプログラムを作ればOK。
0203デフォルトの名無しさん2007/01/30(火) 19:26:46
ContextMenu は自分でトラッキングするけどContextMenuStripはしないという話か・・・
0204デフォルトの名無しさん2007/01/30(火) 21:43:21
>>196
普通はコンテキストメニューのShow()で右クリックのイベントはおしまい。
で、コンテキストメニューアイテムのクリックイベントに処理を書く。
その間、他の処理は何も出来ないようにするのはどうかと思う。
メニューアイテムに「キャンセル」作るなんで考えない方がいいよ。

Explorerでファイルやフォルダを右クリックして試してみ。
0205デフォルトの名無しさん2007/01/31(水) 09:38:32
ContextMenuStripはいろいろ困るんだよなぁ。AppBarでうまく表示できないとか。
0206デフォルトの名無しさん2007/01/31(水) 15:52:04
FormからFormをつくってTopmostで表示したらそっちにフォーカスが逝っちゃうんですが逝かないようにするにはどしたらいいでしょう?(´・ω・`)
0207デフォルトの名無しさん2007/01/31(水) 16:40:03
2.0ならやっとというかShowWithoutActivationプロパティが付いたので
これをオーバーライド。
じゃないならSetVisibleCoreのbase呼ぶ前あたりにShowWindowで
アクティブにせずに表示。
02082062007/01/31(水) 16:47:03
ShowWithoutActivationは実装し呼ばれることも確認したんですが、trueかえしてもフォーカスロスとしてるっぽいです...
ShowWindowあたり見てみます。
02092062007/01/31(水) 16:54:55
フォームを表示して、新しく表示されるフォームがactivateされず、元のフォームがフォーカスをロストすることはありえる?
0210デフォルトの名無しさん2007/01/31(水) 16:59:58
実際にそうなってるんならありえるんだろが
0211デフォルトの名無しさん2007/01/31(水) 17:11:53
>>209
現象を確認した。TopMostを指定するとShowWithoutActivation無視される。
一応MSにフィードバックしといてや。by Designか直さんやろうけど。

基本的なやりかたは以下のように。

[System.Runtime.InteropServices.DllImport("user32.dll")]
static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);
const int SW_SHOWNOACTIVATE = 4;
protected override void SetVisibleCore(bool value) {
 if(this.ShowWithoutActivation && this.TopMost && !this.Visible && value) {
  ShowWindow(this.Handle, SW_SHOWNOACTIVATE);
 }
 base.SetVisibleCore(value);
}

書き捨てなのでもうちょいほかのプロパティとの整合性あわせて。
0212デフォルトの名無しさん2007/01/31(水) 17:16:50
>>204
だがエクスプローラの右ドラッグには「キャンセル」がありまする。
これきっと、メニューの外側を適当にクリックしてメニューを消すと
ファイルの選択が解除されるからだな。
02132112007/01/31(水) 17:16:53
と思ったらなおらねぇ。
…あれだ、ひょっとしたらTopMost指定するとアクティブになる仕様かも…
0214デフォルトの名無しさん2007/01/31(水) 17:37:33
TopMostはSetWindowPosをSWP_NOACTIVATEなしで使ってた希ガス
だからTopMostもSetWindowPosでやるしかないんじゃないかね
0215デフォルトの名無しさん2007/01/31(水) 17:41:26
>>212
ドラッグ後に出るメニューはドラッグというアクションへの操作だろ。
右クリックはまだアクションを指定していないからキャンセルはおかしい。
0216デフォルトの名無しさん2007/01/31(水) 17:47:18
>>214
ごにょごにょして眺めてみた。っぽいなぁ。
0217デフォルトの名無しさん2007/01/31(水) 18:50:13
TopMostのままでShowWindow(SW_SHOWNOACTIVE)でよりあえずフォーカス動かなくなったようです(´・ω・`)
なんか汚いコードになってますがとりあえずはしのげそうです。

ただ今度はFormオブジェクトを作ってから初めてhandleから見そうなメソッド呼び出しでWM_CREATEがとんできてそのときにLocationがいじられるという現象が出てるがなぁ・・・orz
0218デフォルトの名無しさん2007/01/31(水) 20:00:31
VB的な解法であれだけど、コンストラクタでActiveForm取得しといて
OnShownでそいつにFocusしてやれば、実際の動作はともかく見た目的には
目的を達成できるよ。
0219デフォルトの名無しさん2007/02/01(木) 12:12:35
>>218
そうすると元もフォームのフォーカスが一度外れることになるので問題出ることがある。
0220デフォルトの名無しさん2007/02/01(木) 12:43:10
やれやれ読解力がない人って困るな。。
0221デフォルトの名無しさん2007/02/01(木) 22:13:53
こんばんわ。初書き込みです。
C#を最近、始めたばかりでド素人なのですが、
質問に答えてもらえるのでしょうか??
0222デフォルトの名無しさん2007/02/01(木) 22:15:00
前置きはいいので質問をどうぞ
0223デフォルトの名無しさん2007/02/01(木) 22:16:08
>>221
質問はこちらへどうぞ
http://pc10.2ch.net/test/read.cgi/tech/1168271508/l50
0224デフォルトの名無しさん2007/02/01(木) 22:19:33
ここも質問スレだろ
でも始めたばかりなら>>223
0225デフォルトの名無しさん2007/02/01(木) 22:23:38
C# 3.0って、VisualC#2005で使えるの?
0226デフォルトの名無しさん2007/02/01(木) 22:24:50
なぜググらないんですか?
0227デフォルトの名無しさん2007/02/01(木) 22:26:05
>>225
Visual Studio 2007(仮称)までお待ちください
0228デフォルトの名無しさん2007/02/01(木) 22:37:20
>>227
現状はコマンドラインのコンパイラも無いの?
0229デフォルトの名無しさん2007/02/01(木) 22:51:47
なぜ吊らないの?
0230デフォルトの名無しさん2007/02/01(木) 22:54:06
嘘つくんじゃねえよ

http://ja.wikipedia.org/wiki/Microsoft_Visual_Studio

>NET Framework 3.0に対応させるための Visual Studio 2005 extensions for .NET
>Framework 3.0 (WCF & WPF), November 2006 CTPとVisual Studio 2005 extensions
>for .NET Framework 3.0 (Windows Workflow Foundation)が現在、配布されている。
0231デフォルトの名無しさん2007/02/01(木) 23:03:25
クマー
0232デフォルトの名無しさん2007/02/01(木) 23:19:24
Visual Studio 2005 extensions for .NET Framework 3.0で、C#3.0使えるようになるの?
0233デフォルトの名無しさん2007/02/01(木) 23:30:28
C#と.NET Frameworkのバージョンは別物
0234デフォルトの名無しさん2007/02/01(木) 23:35:00
だから、C#3.0が、たまたまバージョン番号が同じ3.0であるだけの
Visual Studio 2005 extensions for .NET Framework 3.0
で使えるのかどうかを聞いている。
0235デフォルトの名無しさん2007/02/01(木) 23:42:29
ttp://msdn2.microsoft.com/en-us/netframework/aa904594.aspx
0236デフォルトの名無しさん2007/02/01(木) 23:48:38
ttp://www.microsoft.com/downloads/details.aspx?familyid=1e902c21-340c-4d13-9f04-70eb5e3dceea&displaylang=en
0237デフォルトの名無しさん2007/02/01(木) 23:56:36
で、結局Visual Studio 2005 extensions でC#3.0は使えるの?
0238デフォルトの名無しさん2007/02/01(木) 23:59:51
こたえはNOだグリフ
0239デフォルトの名無しさん2007/02/02(金) 00:00:01
むりだろw
0240デフォルトの名無しさん2007/02/02(金) 00:00:40
ラクダ式とかの奴じゃないの?
0241デフォルトの名無しさん2007/02/02(金) 00:03:04
今はまだ、C#3.0の処理系は存在しないってことでおk?
0242デフォルトの名無しさん2007/02/02(金) 00:05:21
C OMEGAとかLINQならあるよ。
0243デフォルトの名無しさん2007/02/02(金) 00:07:48
C OMEGAとかLINQって、C#3.0の処理系なの?
0244デフォルトの名無しさん2007/02/02(金) 00:15:28
プレビュー版のC#3.0コンパイラなら出回ってるな。
仕様どおりコンパイルできない場合があるみたいだけど

>>234
C#3.0やLINQは.NET Framework 3.5の機能
0245デフォルトの名無しさん2007/02/02(金) 00:18:41
ttp://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1103160&SiteID=1
0246デフォルトの名無しさん2007/02/02(金) 00:19:47
.NET Framework 3.5って、プログラミング言語(C#3.0)の処理系を含むの?
0247デフォルトの名無しさん2007/02/02(金) 00:23:01
ttp://www.microsoft.com/downloads/details.aspx?FamilyID=1ff0b35d-0c4a-40b4-915a-5331e11c39e6&DisplayLang=en
0248デフォルトの名無しさん2007/02/02(金) 00:24:09
で、結局、今はまだ、C#3.0の処理系は存在しないってことでおk?
0249デフォルトの名無しさん2007/02/02(金) 00:25:27
何故読まない。
0250デフォルトの名無しさん2007/02/02(金) 00:26:28
自分で調べようともしないお前には存在してても使いこなせないから気にすんな
0251デフォルトの名無しさん2007/02/02(金) 00:26:54
結論

今はまだ、C#3.0の処理系は存在しない
0252デフォルトの名無しさん2007/02/02(金) 00:29:21
それでいいよ。
カエレ
0253デフォルトの名無しさん2007/02/02(金) 00:31:22
C#3.0の処理系って言ってる時点で初心者だけどな。
0254デフォルトの名無しさん2007/02/02(金) 00:32:22
>>246
コンパイラはフレームワークについてくるでしょ
0255デフォルトの名無しさん2007/02/02(金) 00:34:02
.NET Framework 3.5についてくるコンパイラはC#コンパイラだけ?
0256デフォルトの名無しさん2007/02/02(金) 00:34:47
糞初心者はかえれwww
0257デフォルトの名無しさん2007/02/02(金) 00:34:50
>>253
何て言えば初心者じゃないの?
0258デフォルトの名無しさん2007/02/02(金) 00:36:30
スルーしろよ。
0259デフォルトの名無しさん2007/02/02(金) 00:43:08
まとめ

・今はまだ、C#3.0の処理系は存在しない
・「C#3.0の処理系」という表現は適切である
・Visual Studio 2007(仮称)ではC#3.0が使えるようになる
0260デフォルトの名無しさん2007/02/02(金) 00:46:12
勝手に変な仮称つけないでOrcasって呼んでやれよ
0261デフォルトの名無しさん2007/02/02(金) 00:47:02
勝手に変なまとめするなよ。
>>247は無視か?
0262デフォルトの名無しさん2007/02/02(金) 00:48:32
まとめ ver.2

・今はまだ、C#3.0の処理系は存在しない
・「C#3.0の処理系」という表現は適切である
・Orcas(次期Visual Studio)ではC#3.0が使えるようになる
0263デフォルトの名無しさん2007/02/02(金) 00:55:20
ところで、ラムダ記法関連で出てくるジェネリクスクラスのFunc<>ってどうなってんの?

型パラメータを4個とか5個とか渡してるソースがあるんだけど、可変長型引数がサポートされてたりする?
0264デフォルトの名無しさん2007/02/02(金) 10:50:14
Vistaで少しは.NET Frameworkの動作速度は改善されるのでしょうか?
VB6よりもっさりしてるので凹みます。
0265デフォルトの名無しさん2007/02/02(金) 11:50:19
コンパネでWPFを使ってるらしいからランタイムの起動は体感的に速くはなったな
0266デフォルトの名無しさん2007/02/02(金) 12:38:15
>>262
まともに答えてやろうよ。

C# 3.0 のβ版ならすでに出てて、誰でもダウンロード可能
正式には .NET Framwork 3.5 (仮称)という形でリリース
予定では、3.5 は今年中(おそらくは Orcas と同時期かちょっと前)
3.5 には他に、VB 10 と Ajax ライブラリが付く
ちなみに、3.5 になっても CLR の部分は、2.0 のときのまま

>>264
ランタイム自体も改善されてるとは思うんだけど、
それ以上に、スーパーフェッチが効いてて速い臭い。
0267デフォルトの名無しさん2007/02/02(金) 12:51:04
VB6糞遅いじゃん
0268デフォルトの名無しさん2007/02/02(金) 12:57:43
>>264
速度が上がるわけない。

というか、いつの時代も新バージョンが出るたび「遅くて糞」とか言ってる人いるけど
当時のPCのスペック考えろ。いつの時代もハードよりソフトの方が進んでる。
VB6は1998年だけど、当時も「VisualStudio6.0重くて使えねー」なんてバカがいた。
ずーっと使うな。


当時の推奨システム
http://www.microsoft.com/japan/msdn/vs_previous/vstudio/vs6/pack/vbpack_p.htm

02692642007/02/02(金) 13:38:02
>268
書き方悪くてごめんなさい。
VSじゃなくて、作成したアプリケーションのことです。

>265
そうですか!ちょっと期待しよっと。

0270デフォルトの名無しさん2007/02/02(金) 13:45:18
実行速度が遅いっていうやついったい何つくってんの?w
0271デフォルトの名無しさん2007/02/02(金) 13:45:42
作成したものがクソということは作ったやつが(ry
0272デフォルトの名無しさん2007/02/02(金) 13:49:57
今隣の席でグリッドに1万件表示が遅いって言ってるバカがいるw
0273デフォルトの名無しさん2007/02/02(金) 14:51:22
.NETを遅く感じるならとりあえずメモリをもっと積め。
Vistaでは腐るほどメモリがあるときのパフォーマンスが改善されているが、
はじめから少なめならVistaにしても効果なし。Vista自信もメモリ食いだから1GB〜程度は必要
0274デフォルトの名無しさん2007/02/02(金) 15:26:50
paint.netとかはSourceCode見た感じ大部分が
C#だがそんなに遅くないけども
0275デフォルトの名無しさん2007/02/02(金) 15:27:44
フォームベースのソフトなんだけど
デバッグ用にコンソール窓作ることは可能?
0276デフォルトの名無しさん2007/02/02(金) 15:43:08
>>275
テキストボックスじゃあかんの?
0277デフォルトの名無しさん2007/02/02(金) 15:45:20
COMのオートメーションでGUIはないんです。はい。
0278デフォルトの名無しさん2007/02/02(金) 15:49:54
APIで作るとか
0279デフォルトの名無しさん2007/02/02(金) 15:59:44
telnetにでも送ったらあかんの?
0280デフォルトの名無しさん2007/02/02(金) 16:25:56
それをやるならsyslogだべ
0281デフォルトの名無しさん2007/02/02(金) 16:27:40
Debug.Write()は効かないんだっけ?
0282デフォルトの名無しさん2007/02/02(金) 16:42:25
>>275
<OutputType>Exe</OutputType>
0283デフォルトの名無しさん2007/02/02(金) 16:53:49
↑こういう教え方するヤツ嫌い
0284デフォルトの名無しさん2007/02/02(金) 17:03:20
お前の好みなんぞ誰も聞いちゃおらん
0285デフォルトの名無しさん2007/02/02(金) 17:08:37
俺も嫌いだ。
知ってるけど教えないみたいだ
0286デフォルトの名無しさん2007/02/02(金) 18:16:08
.NET Frameworkの質問はここで良いでしょうか。

CheckedListBoxでいずれかのアイテムのチェック城外が変更されたときに、
既にチェックされたアイテムの一覧を取りたいのですが、ItemCheckイベントだと、
チェックされた/チェックが外れた瞬間のアイテムが取得できません。
適当に合成してやれば良いのかもしれませんが、他に何か良い方法はないでしょうか?
0287デフォルトの名無しさん2007/02/02(金) 18:22:51
CheckedIndices, CheckedItems?
0288デフォルトの名無しさん2007/02/02(金) 19:12:30
>>286
こっちのがいいよ

ふらっとC♯, C#(初心者用) Part12
http://pc10.2ch.net/test/read.cgi/tech/1168271508/
0289デフォルトの名無しさん2007/02/02(金) 19:31:57
Consolo console = new Console();
0290デフォルトの名無しさん2007/02/02(金) 19:42:34
型または名前空間名 'Consolo' が見つかりませんでした。using ディレクティブまたはアセンブリ参照が不足しています。
静的クラス 'System.Console' のインスタンスを作成することはできません。
0291デフォルトの名無しさん2007/02/02(金) 19:56:58
>>263
> 型パラメータを4個とか5個とか渡してるソースがある
Func<A,R>しか見当たらないんだけど
ソースは?
0292デフォルトの名無しさん2007/02/02(金) 20:19:30
LINQ Preview (May 2006) から System.Query.dll

namespace System.Query
{
    public delegate T Func<T>();
    public delegate T Func<A0, T>(A0 arg0);
    public delegate T Func<A0, A1, T>(A0 arg0, A1 arg1);
    public delegate T Func<A0, A1, A2, T>(A0 arg0, A1 arg1, A2 arg2);
    public delegate T Func<A0, A1, A2, A3, T>(A0 arg0, A1 arg1, A2 arg2, A3 arg3);
}

と、いうことのようだ。
0293デフォルトの名無しさん2007/02/02(金) 21:30:35
>>288
どうも
0294デフォルトの名無しさん2007/02/02(金) 21:36:15
原始的すぎるなあw
0295デフォルトの名無しさん2007/02/02(金) 21:57:14
C#3.0ではCLRに手を加えないからなあ
0296デフォルトの名無しさん2007/02/03(土) 01:17:32
>>292
し・・・しょっぱい
0297デフォルトの名無しさん2007/02/03(土) 15:53:49
ジェネリックでは、型パラメータを参照型で展開できない。
あ、ここでの参照型ってのは、クラスとかじゃなくて
ref とかのメソッドパラメータとしての参照型のことね。

参照型とそうでないものの組み合わせを定義するのは
現実的じゃないよな〜
0298デフォルトの名無しさん2007/02/03(土) 16:03:32
refは型ではなく実/仮引数を修飾してるんだから当然だろ
0299デフォルトの名無しさん2007/02/03(土) 16:06:33
>>297
refは参照渡しと呼んでくれ。
0300デフォルトの名無しさん2007/02/03(土) 16:10:45
>>297
どういう場合にそんな珍妙なことがしたくなるの?
0301デフォルトの名無しさん2007/02/03(土) 16:24:27
>>298
知らないなら黙ってろ。
0302デフォルトの名無しさん2007/02/03(土) 16:27:26
通常の型名に&をつけたものが参照タイプ
汎用デリゲートで参照渡しのあるメソッドに対応したい場合
0303デフォルトの名無しさん2007/02/03(土) 16:30:41
CLRでは型を派生させてるが、C#では引数の修飾だから
流石にそんなことできると気持ち悪いな
0304デフォルトの名無しさん2007/02/03(土) 16:47:55
ポインタ型も型パラメータに使えないしな
0305デフォルトの名無しさん2007/02/03(土) 16:53:33
デリゲート定義するときに参照渡しがあると汎用的なので対応できないんだよね
0306デフォルトの名無しさん2007/02/04(日) 00:23:31
いつも思うんだけど、そんなこと言語開発者だってわかってると思うんだが…

俺はMSのような優秀な(中には癖のある)人間が沢山いる大企業が
いろんな意見を纏めて最終的に一つの製品としてリリースする以上、
俺が抱く疑問や不満は既に議論されていて、そうせざるを得なかった
理由があるんだと思う。

0307デフォルトの名無しさん2007/02/04(日) 00:32:58
ジェネリックの型にrefを認めたら
List<ref int>なんかも当然認めないといけない
そうなったら,ref int型をメンバに持てるようにしないといけない
破綻するな
0308デフォルトの名無しさん2007/02/04(日) 00:53:08
「できなかった」んじゃなくて「しなかった」って考えるのが普通だわな
0309デフォルトの名無しさん2007/02/04(日) 01:27:51
var d = new[] { 1, "one", 2, "two" }; がエラーになるのは痛すぎる。

何で object[] にしないんだよ。アホか。
0310デフォルトの名無しさん2007/02/04(日) 01:46:36
object型だということを忘れそうだからじゃないか?
0311デフォルトの名無しさん2007/02/04(日) 01:52:03
>>309
なにこれ?
0312デフォルトの名無しさん2007/02/04(日) 01:53:29
そもそも「暗黙の型付け」なんだから、忘れるも何もないだろ。
0313デフォルトの名無しさん2007/02/04(日) 02:20:04
プログラミング初心者です。

えっと、
2つのテキストファイルを読み込んで、
それぞれ配列に格納して、
出来た配列Aと配列Bのi番目の要素同士の和を求めたいのですが、
どうすればいいのでしょうか??

どなたかよろしくお願いします。
0314デフォルトの名無しさん2007/02/04(日) 02:20:06
型推論ってなんかやだな
0315デフォルトの名無しさん2007/02/04(日) 02:21:29
>>313
>どうすればいいのでしょうか??

って、どうしてほしいんだよ。
その文章の各ステップ全部分からないのか?
0316デフォルトの名無しさん2007/02/04(日) 02:29:44
ファイル読み込むまでは出来ます。
0317デフォルトの名無しさん2007/02/04(日) 02:47:49
>>316
テキストファイルの各行が配列に入ってるわけだな?
で、その配列の型は何よ。

ようは、「要素同士の和」というのは文字列を連結することを言っているのか
それともテキストファイルには数値しか入ってなくて、数値として和を求めたいのかどっち?
0318デフォルトの名無しさん2007/02/04(日) 03:06:58
宿題の悪寒
0319デフォルトの名無しさん2007/02/04(日) 03:12:13
>List<ref int>なんかも当然認めないといけない
>そうなったら,ref int型をメンバに持てるようにしないといけない
>破綻するな

参照渡しは型で言うとちゃんと参照タイプになってるていってんのに。
ポインタ型とかと同じ扱いだよ、どっちもジェネリックでは対応していないが。

もちろんいろいろ理由はあるだろうし、どこかで破綻してしまうのかもしれないが、
>そうなったら,ref int型をメンバに持てるようにしないといけない
こんなあほな理由ではないだろう。
参照型やポインタ型をメンバに出来る言語だってあるわな
0320デフォルトの名無しさん2007/02/04(日) 03:15:17
あと、しなかった理由があるんだろうことぐらい分かっとる。
できないのが残念だなってことだ。
0321デフォルトの名無しさん2007/02/04(日) 03:18:36
>>313
宿題スレじゃねーんだよ
0322デフォルトの名無しさん2007/02/04(日) 03:20:38
出来る言語があるから、は CLI に機能を盛り込む理由にはならんだろう
クロスランゲージを指向してるんだから公約数的な方向に向かうのは必然
0323デフォルトの名無しさん2007/02/04(日) 03:23:40
誰か>>313をLinqで解く強者はいないか?
できそうな気がした
0324デフォルトの名無しさん2007/02/04(日) 03:51:36
>>323
普通に for ループでいいだろ。
0325デフォルトの名無しさん2007/02/04(日) 05:00:15
テキストファイルには数値しか入っていません。
数値同士の和を求めたいんです。
0326デフォルトの名無しさん2007/02/04(日) 05:09:48
そうですか。頑張って下さい。
0327デフォルトの名無しさん2007/02/04(日) 05:28:28
頑張れ
0328デフォルトの名無しさん2007/02/04(日) 06:11:22
>>325
計算機使え
0329デフォルトの名無しさん2007/02/04(日) 10:21:59
>>322
CLIレベルではmanaged pointerが存在するが、
どうしてC#で使えないのかって話をしてたんじゃないのか?
0330デフォルトの名無しさん2007/02/04(日) 10:23:45
>>325
ふらっとC♯, C#(初心者用) Part12
http://pc10.2ch.net/test/read.cgi/tech/1168271508/
0331デフォルトの名無しさん2007/02/04(日) 12:05:16
初心者スレに誘導しても宿題には解答しないよ。
0332デフォルトの名無しさん2007/02/04(日) 14:04:03
C#って静的メンバを表すためのthisのようなキーワードってなかったっけ?
仮引数で隠蔽されるときにクラス名つけるのって今ひとつ美しくないんだけど。。
0333デフォルトの名無しさん2007/02/04(日) 14:10:12
C#のメニューは
MFCみたいに特定のIDにするとデフォルトの終了ハンドラが呼ばれるとかないですか?
0334デフォルトの名無しさん2007/02/04(日) 14:16:14
ないですね
0335デフォルトの名無しさん2007/02/04(日) 14:19:49
>>333
そこらへんは自由
0336デフォルトの名無しさん2007/02/04(日) 17:16:07
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.50727</ProductVersion>
〜略〜
</PropertyGroup>
〜略〜
</Project>
みたいなXMLファイルがあるんです。

XmlDocument document = new XmlDocument();
document.Load("hoge.csproj");
てな具合で開くんです。

XmlNodeList nodes = document.GetElementsByTagName("PropertyGroup");
だとヒットするんです。

XmlNodeList nodes = document.SelectNodes("/Project/PropertyGroup");
とXPathで検索しても見つからないんです。
どうしてでしょうか?
0337デフォルトの名無しさん2007/02/04(日) 17:31:09
mlns="http://schemas.microsoft.com/developer/msbuild/2003";
0338デフォルトの名無しさん2007/02/04(日) 17:31:40
名前空間が付いてるだろ。
XmlNamespaceManagerつかうといい
0339デフォルトの名無しさん2007/02/04(日) 17:41:21
流れ的にはこんな感じ
XmlDocument document = new XmlDocument();
const string xmlns = "http://schemas.microsoft.com/XXXXXXXXXXX";;
XmlNamespaceManager nsmgr = new XmlNamespaceManager(document.NameTable);
nsmgr.AddNamespace("AAA_AAA", xmlns);
document.Load("hoge.csproj");

…

XmlNodeList xnl = xmlElement.SelectNodes("AAA_AAA:tag_name", nsmgr);
0340デフォルトの名無しさん2007/02/04(日) 17:52:15
できました。どうも。
0341デフォルトの名無しさん2007/02/04(日) 23:03:33
変数の宣言とか基本的なことは大体理解したんでGUIが詳しく載ってる参考書探してるんだけどどれがいい?
ツールつくったりするだけなんで、Webとかデータベースとかはいらん。
0342デフォルトの名無しさん2007/02/04(日) 23:40:59
>>341
猫でもわかるプログラミング C#フォーム編INDEX
ttp://www.kumei.ne.jp/c_lang/index_form.html
0343デフォルトの名無しさん2007/02/05(月) 00:30:05
詳しくないぞそれw

2005のフォームのコントロールに詳しい本ってたぶんないんじゃないかな。
洋書は知らないけど
0344デフォルトの名無しさん2007/02/05(月) 11:00:59
自動テストのために、ランダムな日本語文字列を作りたいのですが、何か良い方法ないでしょうか?
引数に文字コードと文字列長を指定したら、適当なランダムな文字列が返ってくるような……。

英数だけだったら配列に入れてランダムに取り出したり、用意されているパスワードジェネレータを
使えば良いと思いますが、
ひらがなだけでなく、漢字なんかもあるので、日本語でその方法はちょっと……。

0345デフォルトの名無しさん2007/02/05(月) 12:57:50
IExplorerBrowser
http://msdn2.microsoft.com/en-us/library/ms645992.aspx
とか
IExplorerBrowserEvents
http://msdn2.microsoft.com/en-us/library/ms645980.aspx

を使ってみたいんだけど、
インターフェイスやイベントシンク自分でごにょごにょしたりしないと駄目?
なんかのdllを参照に追加して一発、ってわけにはいかないの?
0346デフォルトの名無しさん2007/02/05(月) 17:30:56
DataGridViewのボタンになんらかのアクションを設定するにはどーしたらいいんでしょう…
0347・_・;<あぼーん2007/02/05(月) 23:29:36

何かDataTable(DataSet)関連で上級者レベルの技はありますか?

他のヤツが知らない様な上級技を教えて下さい。
0348デフォルトの名無しさん2007/02/05(月) 23:40:40
>>344
お前このスレの 419 だろ。
VBスレに誤爆したうえに、答えてもらっといて無視かよ。

http://pc10.2ch.net/test/read.cgi/tech/1168585041/
03493442007/02/05(月) 23:56:11
>>348
なんじゃそりゃ〜。VBスレなんて見たこともありません。
なんちゅう言いがかりですか。VBスレで回答したのはあなた様ですか?
老婆心ながら、もし、返事やお礼の言葉が欲しいなら、2chで回答するべきではないかと。

私の求めているのは、およそありうる文字が、等しい確率で出てくる方法です。
やっぱり、UTF8に限定して、バイト列で生成してUTF8でエンコードとかしか無いですかね。

>>345
確か、何かのCOMを参照追加でできますよ。
配布するときに、それも付けなくちゃいけなくて、8MBぐらいあって凹んだ記憶が。
IEコンポーネントでググれば出てくるはずです。
0350デフォルトの名無しさん2007/02/06(火) 00:05:22
>>349
>およそありうる文字が、等しい確率で出てくる方法
是非結果をここに書いておいてくれ



期待はしてないがな
0351デフォルトの名無しさん2007/02/06(火) 00:09:38
>>349
16ビットの乱数出してCharにキャスト。
それをJIS X 0208に含まれる文字が出るまで繰り返せばいい。
0352デフォルトの名無しさん2007/02/06(火) 00:19:16
>>349
そんなに必死になると余計…ま、いいやw

だいたい、自動テストくらいでそんな厳密にやる必要があるのかよ。
地名や氏名なんかはどっかの資料から引っ張ってきて、適当にくっつければいいじゃん。

0353デフォルトの名無しさん2007/02/06(火) 00:24:00
>>349
質問しといてその言い方はないわ
0354デフォルトの名無しさん2007/02/06(火) 00:30:27
まぁ>>348も見事な勘違いだろうけどな。
質問内容似てるけど、344の解答には全然なってねぇし。
0355デフォルトの名無しさん2007/02/06(火) 00:57:15
あっちよりもちょっと詳しく説明しただけに見えなくもないな。
ハッキリ言ってどうでもいいんだが、349の言い方は気に入らないw
0356デフォルトの名無しさん2007/02/06(火) 00:59:37
>老婆心ながら、もし、返事やお礼の言葉が欲しいなら、2chで回答するべきではないかと。

質問者のセリフかよ…
0357デフォルトの名無しさん2007/02/06(火) 01:28:13
お前等食いつきすぎ・・・
ゆとりの実力はこんなもんじゃないぞ
0358デフォルトの名無しさん2007/02/06(火) 09:34:11
Vista入れてみたけど、自作のC#アプリの動作がなにげに変だな。
APIも結構使ってるんで、.Net Framework自体の問題かどうかは
すぐにはわからんけど。修正めんどくさい...
0359デフォルトの名無しさん2007/02/06(火) 20:39:10
立ててみたよ
---
ふらっとC♯, C#(初心者用) Part13
http://pc10.2ch.net/test/read.cgi/tech/1170761729/
0360デフォルトの名無しさん2007/02/06(火) 23:32:19
>>359
乙
0361デフォルトの名無しさん2007/02/07(水) 01:59:36
ちょいと皆様の知恵を拝借したい

struct aaa
{
public byte xxx;
public ushort[] yyy;
}

こんな感じのbyte型とushort配列を持った構造体を構造体配列で使用したんだが、
出来るだけ多くの要素を持たせたくて

dic[] aaa1 = new aaa[ulong.MaxValue];

ってしたら案の定オーバフローしたんだよね
この場合いくつの要素数まで宣言できるのか教えて欲しい
ちなみにyyyは256個の要素を持たせる予定
0362デフォルトの名無しさん2007/02/07(水) 02:00:52
ageてしまった
スマン
0363デフォルトの名無しさん2007/02/07(水) 02:23:07
そんな無茶なことしないで、事前に必要な要素数の見当を付けとくか、
見当つかなければList<aaa>でAddするとかしたほうがいいと思う。
0364デフォルトの名無しさん2007/02/07(水) 02:47:00
メモリによるとしか言いようがないな…
0365デフォルトの名無しさん2007/02/07(水) 09:44:50
Wordに指定したファイルパスを渡して起動したいのですが、うまくいきません。
こういう感じで渡してみました。
System.Diagnostics.Process.Start("WinWord.exe", FilePath);
どうやって渡してやればいいでしょうか?
よろしくお願い致します。
0366デフォルトの名無しさん2007/02/07(水) 10:26:26
>>365
「うまくいきません」じゃわかんねえよ
何でエラーメッセージとか書かねえのかね
FilePathに空白が含まれてるなら""で囲え
03673652007/02/07(水) 10:28:54
解決しました。
psi.Argumentsに渡さないとだめなんですね。
0368デフォルトの名無しさん2007/02/07(水) 16:43:09
>>361
スタックは約1MBのはず
0369デフォルトの名無しさん2007/02/07(水) 17:39:02
配列は参照型だからヒープに確保されるでしょ
0370デフォルトの名無しさん2007/02/07(水) 18:09:08
どっちにしてもulong.MaxValueはありえない
0371デフォルトの名無しさん2007/02/07(水) 18:17:43
ペタの2個上ってなんだっけなってレベルだよな
0372デフォルトの名無しさん2007/02/07(水) 18:20:51
東洋の神秘にたよるか
・・・那由他、不可思議、無量大数
0373デフォルトの名無しさん2007/02/07(水) 19:05:46
30エクサバイトくらい?
0374デフォルトの名無しさん2007/02/07(水) 19:08:11
日付2桁とかみたいに後々破綻するから数値の上限とかは制限しないほうがいい
0375デフォルトの名無しさん2007/02/07(水) 19:24:18
HDのクォータ機能でサイズ制限にPB,EBがあって
この機能使ってるヤツがどれだけいるんだろと思った
0376デフォルトの名無しさん2007/02/07(水) 19:26:33
ネタはいいよ。
0377デフォルトの名無しさん2007/02/07(水) 19:59:25
あほ
0378デフォルトの名無しさん2007/02/07(水) 21:29:53
あほのさかた
0379デフォルトの名無しさん2007/02/08(木) 16:44:26
C#だと、ベースクラスが引数のないコンストラクタをもつ場合、派生クラスをnewするとそのベースクラスのコンストラクタが勝手に呼ばれちゃいますよね?
このときにベースクラスのコンストラクタが使うメンバをその前に初期化して動作を変えたいんですが可能でしょうか?
ちなみにベースクラスは自分で作ってるものでないのでいじれません(´・ω・`)
0380デフォルトの名無しさん2007/02/08(木) 17:00:47
むり。
0381デフォルトの名無しさん2007/02/08(木) 17:01:36
無理。第一お作法が悪い。
0382デフォルトの名無しさん2007/02/08(木) 17:15:04
無理なのは分かったがお作法が悪いというのには納得できん(`・ω・´)
C++で出来たことを何で削ったのか思想を誰か教えてくれ。
0383デフォルトの名無しさん2007/02/08(木) 17:16:09
作ったウィンドウがAlt+TABで表示されてしまうんですが出さないためにはどうしたらいいんでしょう。
0384デフォルトの名無しさん2007/02/08(木) 17:16:45
>C++で出来たことを何で削ったのか思想を誰か教えてくれ。

とても興味があります。
ぶしつけなお願いで申し訳ありませんが、
もしよろしかったら
どうやってやってたのか書いていただけませんか。
0385デフォルトの名無しさん2007/02/08(木) 17:20:17
何か大きな勘違いをしてるようだw
0386デフォルトの名無しさん2007/02/08(木) 17:23:51
>>383
FixedToolWindow or SizableToolWindow
0387デフォルトの名無しさん2007/02/08(木) 17:26:46
>>382
思想なんかMSFTの中の人しか答えられんだろ。
まあ、ILレベルで弄ればできるから頑張ってくれ
0388デフォルトの名無しさん2007/02/08(木) 18:28:55
public Hoge():_hogeValue("hoge"),HogeBase(){};
こんな感じにかけたっけ?
0389デフォルトの名無しさん2007/02/08(木) 18:32:21
今の時代protectedすら避けられているのにベースクラスのメンバなんか
0390デフォルトの名無しさん2007/02/08(木) 18:43:57
あほか。ベースクラスがメンバ使っててほかの手段を提供してなかったらいじるしかなかろうが。
0391デフォルトの名無しさん2007/02/08(木) 18:45:03
>>388
ソースコード上の順序に関わらず、コンストラクタ初期化子よりもベースクラスのコンストラクタが先に呼ばれるよ。
0392デフォルトの名無しさん2007/02/08(木) 18:46:03
リフレクションでタシーロが今の主流
0393デフォルトの名無しさん2007/02/08(木) 20:03:30
>>388>>391
先走らずに382の返事を待とうじゃないか。
0394デフォルトの名無しさん2007/02/08(木) 20:44:29
っていうか、初期化も糞もコンストラクタ呼ばれる前なんか
その肝心の初期化の対象がそもそも存在してないと思うんですが。。
0395デフォルトの名無しさん2007/02/08(木) 21:18:25
>>394
適当なこと言うなよ
0396デフォルトの名無しさん2007/02/08(木) 21:26:08
>>379
メンバってのがメンバフィールドのことを意味してると仮定して、
それが可能ってことは親クラスがフィールドの初期化を忘れてるってことにならないかなあ。
0397デフォルトの名無しさん2007/02/08(木) 21:30:24
ベースクラスのメンバの初期化が行われて、かつベースクラスのコンストラクタが
動く前に割り込んで独自の処理を行いたいということなんじゃないだろうか。

C++では出来るということだから、それと同様にやればいいと思うが。
0398デフォルトの名無しさん2007/02/08(木) 21:58:59
.class public Test.BaseClass {
  .field family int32 Member
  .method public specialname instance void .ctor() cil managed {
    ldstr "BaseClass::.ctor()"
    call void [mscorlib]System.Console::WriteLine(string)
    ldarg.0
    ldfld int32 Test.BaseClass::Member
    call void [mscorlib]System.Console::WriteLine(int32)
    ret
  }
}
.class public Test.DerivedClass extends Test.BaseClass {
  .method public specialname instance void .ctor() cil managed {
    ldstr "DerivedClass::.ctor()"
    call void [mscorlib]System.Console::WriteLine(string)
    ldarg.0
    ldc.i4 42
    stfld int32 Test.BaseClass::Member
    ldarg.0
    call instance void Test.BaseClass::.ctor()
    ret
  }
}

.method void Main() cil managed {
  .entrypoint
  newobj instance void Test.DerivedClass::.ctor()
  pop
  ret
}
0399デフォルトの名無しさん2007/02/08(木) 22:03:01
BaseClassがメンバを初期化してないな。
0400デフォルトの名無しさん2007/02/08(木) 22:16:53
スタティックメンバだと考えたらどうだろう。
それならば変更するタイミングが欲しいという、
まぁ妥当かもしれない質問になるような気がする。
んで>>398のようにアセンブラで書けばOK、と。
0401デフォルトの名無しさん2007/02/08(木) 22:29:28
それならコンストラクタをprivateにしてやって、
Createとか静的メソッドで用意すればいいだけでは。
0402デフォルトの名無しさん2007/02/08(木) 22:30:40
そんな面倒なことしなくても、C++でやっていたときと同様にすればできると思うな。
0403デフォルトの名無しさん2007/02/08(木) 22:41:39
そうだな
だぶん>>382なら余裕な筈
0404デフォルトの名無しさん2007/02/08(木) 23:37:20
UACが効いてる状態のVista上でProcess.MainWindowHandleに触ると.NET1.1だと例外が返ってくるんだけどパッチとかないよね?
1.1もサポートするって書いてあるから試してみたら落ちてくれて、
仕方なく2005でビルドしてデバッグしてみたら2.0なので落ちなくなってちょっと悩んだよ。
0405デフォルトの名無しさん2007/02/09(金) 01:42:43
なんでC++厨はアホみたいな事にこだわるの?
0406デフォルトの名無しさん2007/02/09(金) 01:48:38
アホみたいな事にこだわらないとC++の存在価値が無くなるから
0407デフォルトの名無しさん2007/02/09(金) 02:16:10
WebBrowserでYouTubeとか開いて、Flashで書かれたプレイヤのスライダとか
マウスでいじると、2回目はいじれない問題って既出?

focusの問題みたいなのだけど。

あとWebBrowserでcookie設定ってできないの?
0408デフォルトの名無しさん2007/02/09(金) 03:04:17
>>407
前者のは俺も悩んでる
後者のは API の SetCookie でOK
0409デフォルトの名無しさん2007/02/09(金) 03:24:55
>>408
> 前者のは俺も悩んでる

Timerでもまわして定期的にwebBrowser.Focus() 呼べば一応は解消するんだけど
これだといろいろ不都合があって…

> 後者のは API の SetCookie でOK

? 詳しく教えて。

WebBrowserの各インスタンスごとに固有のcookieを食わせたり吐かせたりしたいんだ。
0410デフォルトの名無しさん2007/02/09(金) 09:11:17
いいからFormがWindowをクリエイトする前に内部のプロパティを与えられた引数でいじくるすべを教えろボケ。
0411デフォルトの名無しさん2007/02/09(金) 09:56:36
>>410
C++でやればいいじゃないか
0412デフォルトの名無しさん2007/02/09(金) 13:22:37
>>410
親が初期化する前に弄ったって元に戻されると言ってるじゃないか
0413デフォルトの名無しさん2007/02/09(金) 14:08:47
メンバにもたせて、自分でタイミング見計らって更新とかは?
0414デフォルトの名無しさん2007/02/09(金) 16:39:12
>>410
コンストラクトだけして、
あとはAPIでShowWindow(...)

Formクラスの内部の状態がおかしくなってレイアウト崩れたりするけど。
0415デフォルトの名無しさん2007/02/09(金) 21:45:52
DevPartner 8.0 の評価版ダウンロードしたいけど
個人情報ださなあかんねんなー
会社名まで必要だしなー
なんだか憂鬱だ
0416デフォルトの名無しさん2007/02/10(土) 00:38:51
BandObject を使った IEツールバーで、
JavaScript や ActiveX の実行を切り替えるには
どうしたらよいでしょうか?

DISPID_AMBIENT_DLCONTROL を処理すれば
良いと思うのですが、ぐぐっても見つかるのは
IOleClientSite を実装する例ばかりで、
IEツールバーから操作する例は見つけられませんでした。


0417デフォルトの名無しさん2007/02/10(土) 01:11:33
>>416
IInternetSecurityManagerだっけか?
IInputObjectSite→IServiceProviderにキャストしてQueryServiceすれば取れるんじゃね
たしかCodeZineかCodeProjectかにそのままずばりのサンプルがあった気がするよ
0418デフォルトの名無しさん2007/02/10(土) 14:06:16
私には夢があるけど、C#にはないね
0419デフォルトの名無しさん2007/02/10(土) 17:13:08
たたくよ
0420デフォルトの名無しさん2007/02/10(土) 17:46:29
しばくぞ
04214162007/02/10(土) 18:11:02
>>417
やってみます。ありがとうございました。
0422デフォルトの名無しさん2007/02/11(日) 00:03:14
耳から手入れて奥歯ガタガタいわしたろか
0423デフォルトの名無しさん2007/02/11(日) 01:11:46
Vistaのエクスプローラ、assemblyフォルダとか行くと
詳細ペインとか死ぬな。前のフォルダで選択したもののままになる。
まだバグバグってことか
0424デフォルトの名無しさん2007/02/11(日) 08:29:20
>>422
解剖学的には、あながち間違っていない。
0425デフォルトの名無しさん2007/02/11(日) 08:48:31
伝統芸能ですから
0426デフォルトの名無しさん2007/02/11(日) 09:03:53
吉本乙
0427デフォルトの名無しさん2007/02/11(日) 15:33:47
>>423
有料βです
SP1までお待ちください
0428デフォルトの名無しさん2007/02/11(日) 16:40:07
実装のめんどくささを除いたらすべてのメソッド定義をインターフェースベースでやったほうがよさそうだ・・・
クラスとインターフェースを混在させるとどこかで破綻する・・・(´・ω・`)
0429デフォルトの名無しさん2007/02/11(日) 16:45:42
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace Project1
{

public partial class Form1 : Form
{

public Form1()
{
InitializeComponent();

}
}

class Program
{
public static void Main()
{
Application.Run(new Form1());
}
}
}

public partial class Form1 : Formとclass Program
の順番かえるとデザインができないVS2005C#nに感動した
0430デフォルトの名無しさん2007/02/11(日) 16:46:30
それでInitializeComponent(); とは何をしてるんですか?
消しても正常に動くし。
0431デフォルトの名無しさん2007/02/11(日) 16:55:57
お前はフラットスレにでも行ってろ
0432デフォルトの名無しさん2007/02/11(日) 17:29:12
むしろくだスレ
0433デフォルトの名無しさん2007/02/11(日) 18:56:24
>>428
だが、MSの推奨はAbstractクラスベースな罠
0434デフォルトの名無しさん2007/02/11(日) 19:08:58
>>429
フォームとかはソースの先頭で宣言したのもじゃないとデザインできない。
0435デフォルトの名無しさん2007/02/11(日) 21:10:17
なあ、C#のインタプリタ誰か作ってくれよ。
インタプリタがないと言語の習得できねえよ。
0436デフォルトの名無しさん2007/02/11(日) 21:13:39
C#はコンパイル激速だから別に必要ない
0437デフォルトの名無しさん2007/02/11(日) 21:24:40
どう考えてもインタプリタは必要ないだろ?
必要な理由を述べよ。
0438デフォルトの名無しさん2007/02/11(日) 21:27:56
そんなにインタプリタがいいならVB6でもつかってろハゲ
0439デフォルトの名無しさん2007/02/11(日) 21:29:46
インタプリタを使うと何ができるの?
0440デフォルトの名無しさん2007/02/11(日) 22:23:34
めじろ++
0441デフォルトの名無しさん2007/02/11(日) 23:40:25
既出な話だったら申し訳ないんですが、

今C++からC#に移行しようと.NETを勉強中なんですが
参照型(class)と値型(struct)が、仕様的におかしい気がして
仕方ないんです。

C++では、あるオブジェクトのインスタンスが参照型になるか
値型になるかは、使用時に自由に選ぶことが出来ます。
T t; // 値型
T* pt = new T(); // 参照型
対して,C#は定義時に問答無用で決められてしまいます。
別にGCが絡む問題があるとも思えないし、まったく意味のない改悪じゃないでしょうか?

また、C#で以下のコードだけ見た場合、
変数tが値型であるか参照型であるかどうやって知るんでしょうか。
T t = new T();
値型と参照型の混同、勘違いはバグの元であり
わざわざそうしやすくしているようにしか見えません。

C#プログラマの方はどう思って使っていますか?
0442デフォルトの名無しさん2007/02/11(日) 23:43:21
>値型と参照型の混同、勘違いはバグの元であり
>わざわざそうしやすくしているようにしか見えません。

どちらと言うとc++でその問題が起こったのでjavaで改善された。
0443デフォルトの名無しさん2007/02/11(日) 23:47:36
でもそれだと不便なので値型を付けた。
0444デフォルトの名無しさん2007/02/11(日) 23:47:50
言葉足らずだった。
ポインタの弊害を解消するため、ポインタっぽいものが見えないようにしたんじゃなかった?。

値方かどうかは、ポップアップされるので気しない。
0445デフォルトの名無しさん2007/02/11(日) 23:48:24
>>441
> また、C#で以下のコードだけ見た場合、
> 変数tが値型であるか参照型であるかどうやって知るんでしょうか。
> T t = new T();

C#としてはTがstructとして宣言されているか、またはValueTypeを継承しているならば値型。
内部的にはValueTypeを継承するクラスが値型で、その他のクラスは参照型。
0446デフォルトの名無しさん2007/02/11(日) 23:49:36
>>441
一年後には体感しているだろうが、絶対改悪ではない。
0447デフォルトの名無しさん2007/02/11(日) 23:54:40
C++のclassとstructの違いは、デフォがprivateかpublicの違いだけだしな。
C#のよくないところはValueTypeにstructという名前をつけて、誤解する人間を増やしたことだと思う。
C++/CLIみたくvalue classとかそのままvaluetypeでよかったと思うな。
0448デフォルトの名無しさん2007/02/11(日) 23:55:08
>>445
使用されてるところのコードだけ見て区別できないって言ってるんだろ
確かに,覚えとくかVSの機能に頼るしかないのは問題
0449デフォルトの名無しさん2007/02/11(日) 23:55:38
>>441
C#の文法で見てるうちは.NETを理解することはできないよ。
MSILかC++/CLIを使いこなせるようになれば目が開く。
0450デフォルトの名無しさん2007/02/11(日) 23:56:30
インタプリタで実行できます。
0451デフォルトの名無しさん2007/02/11(日) 23:56:46
>>447
でもCOMのマーシャリングするときもstruct→structだからそのままでよかったと思うよ。
0452デフォルトの名無しさん2007/02/11(日) 23:57:37
値型とか参照型とかを気にしなくていいのがC#
0453デフォルトの名無しさん2007/02/11(日) 23:58:27
>>452
気にしないとforeachとかではまるぞ!
0454デフォルトの名無しさん2007/02/11(日) 23:59:21
Point型のプロパティとかも
0455デフォルトの名無しさん2007/02/12(月) 00:01:17
プロパティの方はコンパイルで弾いてくれるからマシ
自分の状態を変えるメソッドは……
0456デフォルトの名無しさん2007/02/12(月) 00:01:42
C++/CLIは個人的にきもすぎるとおもいます。
0457デフォルトの名無しさん2007/02/12(月) 00:02:25
MethodBase(の派生クラス)が表してるメソッドの一意性は、
MethodHandleを調べないと分からないんだろうか?
とあるリフレクション情報(いろいろ処理した結果)をキャッシュしようとしてるんだが、
MethodHandleをキーにしないと一意にならないっぽい。
※同じメソッドを示すMethodInfoインスタンスが複数できる

単なるキャッシュなので、同じメソッドで異なるMethodBaseインスタンスになっても
それ自体は致命的ではないのだが、キャッシュとして保持する以上、
調べるたびに新しいMethodBaseインスタンスができていくと困ってしまう。
※キャッシュの意味なし&無駄にメモリ消費

やっぱりMethodHandleでキャッシュしないとだめなんかな…
0458デフォルトの名無しさん2007/02/12(月) 00:19:48
>>441
C++/CLIではC#で言っている参照型・値型の他に、アンマネージドポインタやハンドル、
マネージドポインタ型(トラッキング参照、通称「参照」)なんてのもあります。

気持ち悪い言語がお好きでしたら、C#よりもC++/CLIをオススメします。
0459デフォルトの名無しさん2007/02/12(月) 00:24:42
クラスを値型として使用できるようにするためには、
インスタンスのコピーなどを明確に定義しないといけない。
全クラスでこれが必要になって死ぬほどややこしくなったのがC++。
C#は柔軟性、効率などはある程度犠牲にして単純な方をとった。
0460デフォルトの名無しさん2007/02/12(月) 00:37:00
>>441
ref class MyRefType { }
value class MyValueType { }
...
MyRefType ^ r = gcnew MyRefType; //参照型
MyRefType ^% tr = r; // 参照型へのトラッキング参照
MyValueType ^ v; // 値型
MyValueType ^% tv = v; // 値型へのトラッキング参照

こういうことできるのが.NETの本来の姿
ここからポインタっぽいものを全部取り去って単純化したのがC#
0461デフォルトの名無しさん2007/02/12(月) 00:41:42
勉強になります
0462デフォルトの名無しさん2007/02/12(月) 00:47:50
>>460
値型は ^ いらんじゃろ
0463デフォルトの名無しさん2007/02/12(月) 01:16:36
>>460
使いたければポインタは使えると思うけど。
0464デフォルトの名無しさん2007/02/12(月) 03:26:31
>>462
V ^ はボックス化された値型。

C#だとボックス化されたヒープ上の値型を直接操作することはできなくて (まあ仮想関数は呼べるか)、
中身を弄るにはいったんコピーして再ボックス化という手順が必要だけど
C++/CLIだとヒープ上の値型を扱える。

ttp://msdn2.microsoft.com/en-us/library/hxad2z4x(VS.80).aspx

MyValueType ^ v; // ヒープ上の値型
MyValueType ^% tv = v; // ヒープ上の値型へのトラッキング参照
0465デフォルトの名無しさん2007/02/12(月) 03:39:46
仕事で使いたくないと思うが勉強になる
04664642007/02/12(月) 03:47:00
>>464
>V ^ はボックス化された値型。

訂正。
V^ はボックス化された値型をボックス化解除したもの、と言った方が良さげ。

MyValueType v; // スタック上の値型
Object^ o = v; // ボックス化 = GCヒープ上のメモリ確保+コピー

MyValueType^ rv = safe_cast<MyValueType^>(o); // ボックス化解除 (1)
MyValueType v2 = rv; // ボックス化解除した値型のコピー (2)

C# だと(1)と(2)が基本的に不可分だから区別しないことが多いけど、
厳密な意味での「ボックス化解除」は(1)だけだよ、
「ボックス化解除」は「ボックス化」の反対じゃないよ、
ってJeffreyが言ってた。
(プログラミング .NET Framework 第2版 5.3章)
04674642007/02/12(月) 03:50:56
>>466 にさらに訂正。* が抜けてた。
gdgdだな。すまん。

MyValueType v; // スタック上の値型
Object^ o = v; // ボックス化 = GCヒープ上のメモリ確保+コピー

MyValueType^ rv = safe_cast<MyValueType^>(o); // ボックス化解除 (1)
MyValueType v2 = *rv; // ボックス化解除した値型のコピー (2)
04684642007/02/12(月) 04:06:31
Jeff本読み直してみたけどV ^ はボックス化された値型で良かったらしい。
超gdgdですまん。>>466、>>467は忘れてくれ。

MyValueType v; // スタック上の値型
Object^ o = v; // ボックス化された値型

MyValueType^ rv = safe_cast<MyValueType^>(o); // ボックス化された値型
MyValueType v2 = *rv; // ボックス化解除+値型のコピー

寝る。
0469デフォルトの名無しさん2007/02/12(月) 05:43:23
Object^ o = v
なんでかな
にこやかに見える
0470デフォルトの名無しさん2007/02/12(月) 08:06:00
System.CodeDom
System.CodeDom.Compiler
この二つ凄いな。これがあるならインタプリタを素人でも作れそう。
というわけでおまいらC#インタプリタ作ってください。
Perl5とかPythonみたいな扱いやすいやつ一発頼みます。
0471デフォルトの名無しさん2007/02/12(月) 08:52:52
だからC#のぱーさーはついてないつーの
0472デフォルトの名無しさん2007/02/12(月) 09:50:30
まだインタプリタいってんのかよwwww
0473デフォルトの名無しさん2007/02/12(月) 13:01:51
コンパイラがあるににわざわざインタプリタが必要な理由って何なんだろう。
0474デフォルトの名無しさん2007/02/12(月) 13:16:09
Lispみたいに対話的に使えたら便利だと思うけど。
C#だとちょっとイメージわかないな・・・。
0475デフォルトの名無しさん2007/02/12(月) 13:19:53
ListViewのヘッダ行に、ソート方向を示す三角マーク(△とか▽)
を表示する方法は無いでしょうか?
今のところオーナー描画しか無い気がしてますが、、、

環境はVista + VS2005 C#です
0476デフォルトの名無しさん2007/02/12(月) 13:20:55
Vistaかいな。
ハイカラやなぁ〜。
0477デフォルトの名無しさん2007/02/12(月) 13:25:32
△をカラムのテキストに含めるんだ
04784752007/02/12(月) 13:30:37
>>476
>>477

レスどもです。やってみましたが、カッコ悪かったです。
「名前△」みたいな。
0479デフォルトの名無しさん2007/02/12(月) 13:41:05
>>475
1. FindWindowExでSysHeader32のhWndをとってくる。
2. SysHeader32にHDM_GETITEMをSendMessageしてHDITEMを取得。
3. HDITEM.fmtにHDF_SORTUP/HDF_SORTDOWNを設定。
4. SysHeader32にHDM_SETITEMをSendMessageしてHDITEMを設定。

CommCtrl.hみたところ、Windows XPから使えそう。
04804792007/02/12(月) 13:59:48
違う違う。
1. ListViewにLVM_GETHEADERをSendMessage
04814752007/02/12(月) 14:15:57
>>479
>>480

レスどもです、三角マークでました!(Aeroスタイル、クラシックスタイル共)
参考までに以下にソースを示しておきます。
Pl/Invokeが面倒だったのでとりあえすC++/CLI版ですが。

HD_ITEM item;
HWND hWnd = ::FindWindowEx((HWND)listView->Handle.ToPointer(),
             NULL, L"SysHeader32", NULL);
if (hWnd != NULL) {
::SendMessage(hWnd, HDM_GETITEM, 0, (LPARAM)&item);
item.fmt = 0x400; // _WIN32_WINNTを0x501にすればHDF_SORTUP
::SendMessage(hWnd, HDM_SETITEM, 0, (LPARAM)&item);
}

因みに、上記コードではListViewの列テキストは消えてしまいますが
LVM_GETHEADERも後で試してみます。
有難うございました。
0482デフォルトの名無しさん2007/02/12(月) 14:24:49
>>481
fmtはビットフラグだから

item.fmt |= 0x400;
04834752007/02/12(月) 14:31:22
>>482

本当だorz... うっかりしてました。
テキストが消えるのも直りました。もっかいソース載せておきます(マクロ版で)

Header_GetItem(hWnd, 0, &item);
item.fmt |= 0x400; // (HDF_SORTUP);
Header_SetItem(hWnd, 0, &item);

0484デフォルトの名無しさん2007/02/13(火) 08:11:02
グローバルスコープを持たない言語で対話型環境作っても意味ないだろ。
いちいちクラス定義をしないと評価できないじゃん。
0485デフォルトの名無しさん2007/02/13(火) 16:10:19
System.Diagnostics.Process を使って呼び出した外部プロセスが
異常終了(不正メモリアクセスなどの Win32 例外とか)したことを
検出したいのだけどどうすればいいだろう?管理者権限不要で

検出して復帰とか、どこで例外が起こったかとかはわからなくてよくて
ただ異常終了したか正常終了したかが知りたい

ExitCode に表れるかと思ったら、異常終了しても 0 なんだよね
0486デフォルトの名無しさん2007/02/13(火) 20:33:28
>異常終了しても 0 なんだよね

そのソフト組んだ人間による
0487デフォルトの名無しさん2007/02/13(火) 20:50:49
Win32Exceptionが飛んできた気がするんだけど…
0488デフォルトの名無しさん2007/02/13(火) 21:13:57
それはプロセスから何かを取ろうとしたときだけじゃないのか?
0489デフォルトの名無しさん2007/02/13(火) 21:38:18
エクスプローラーでファイルをコピーするときにドラッグドロップするとマウスの後ろにコピーするファイルが半透明で表示されますよね?
あれってどうやってるかわかりますか?
ドラッグドロップ中にポジションは取れたのでレイヤードウィンドウでウィンドウを描画しつつ移動させたんだけど案の定したのウィンドウにドラッグドロップイベントが届きません・・・orz
0490デフォルトの名無しさん2007/02/13(火) 21:46:54
あれはドロップされる側(draw overされる側)が描画する。
0491デフォルトの名無しさん2007/02/13(火) 21:51:24
ttp://www.google.com/search?hl=ja&q=listview+%E5%8D%8A%E9%80%8F%E6%98%8E+%E3%83%89%E3%83%A9%E3%83%83%E3%82%B0&lr=lang_ja
これ?
0492デフォルトの名無しさん2007/02/13(火) 23:12:59
>>490 ドラッグされる側が描画するにしても画面の外にはみ出るようにしてるのでウィンドウ使ってると思うんです。
だとするとドラッグドロップイベントが下のウィンドウに言ってるのは何でなんでせう。
>>491 リンク先見てみます。
0493デフォルトの名無しさん2007/02/13(火) 23:28:35
>>492
DragEnter のときに ImageList_BeginDrag して、
マウス移動中は ImageList_DragMove して、
DragLeave 時には ImageList_EndDrag する。

ドラッグソースじゃなくてターゲット(ドラッグドロップのメッセージを受け取る側)が、ね。
カーソルを重ねる場合には ImageList_SetDragCursorImage 。

ttp://ant0x.udap.jp/tips/tips_DragGhostImage.htm
0494デフォルトの名無しさん2007/02/14(水) 00:31:29
>>493 まさにそれですね。ありがとです。
あとNCHITTESTでHTTRANSPARENTを返すやり方でもとりあえず望みの動作はできそうです。パフォーマンスなどで言われたやり方とどう差があるかはこれから調べですが。
0495デフォルトの名無しさん2007/02/14(水) 02:12:44
プロジェクトにユーザコントロールを追加し
通常のWINDOWSフォームと同様にデザイン出来ることは
わかったのですがそれを、ツールボックスからドラッグし
他のWINDOWSフォームにて(TextBox/ComboBox等と同様に)
使用する方法が分かりません。

ご存知の方がいらしましたらお教え下さい。
0496デフォルトの名無しさん2007/02/14(水) 02:28:27
Defferdってなーに?
なんて読むのらぁ。。
0497デフォルトの名無しさん2007/02/14(水) 02:31:52
んな単語ねえよハゲ
0498デフォルトの名無しさん2007/02/14(水) 02:33:30
読める?
0499デフォルトの名無しさん2007/02/14(水) 02:34:47
読める?
0500デフォルトの名無しさん2007/02/14(水) 02:42:56
外国語板でも逝ってこいよ・・・
0501デフォルトの名無しさん2007/02/14(水) 03:04:45
deferred?
0502デフォルトの名無しさん2007/02/14(水) 06:25:10
differed?
0503デフォルトの名無しさん2007/02/14(水) 18:27:04
DirectXで使うマクロの名前か?
0504デフォルトの名無しさん2007/02/14(水) 18:31:20
>>495
まずツールボックスに追加するんだ。
メニューを探そう。
0505デフォルトの名無しさん2007/02/14(水) 18:35:37
DragDropでほかのウィンドウ上に持ってきたときにGiveFeedbackをかえしてくるところとそうでないところがあるみたいなんだがどういう違いだか分かる人いますか?
0506デフォルトの名無しさん2007/02/14(水) 19:31:09
C#で色々作ったのですが、他の人に使ってもらおうと思ったら、他の人のマシンでは動きませんでした。

フレームなんとかというのが入ってないマシンから動かないのだと思うのですが、でも、普通の人は入れてませんよね。

なんか、うまい方法ってあるのでしょうか?
0507デフォルトの名無しさん2007/02/14(水) 19:31:30
Windows Update
0508デフォルトの名無しさん2007/02/14(水) 20:51:48
エクスプローラのフォルダリストにフォーカスをあてて
カーソルを下に移動させると、ファイル一覧が表示されますが
常にファイル一覧を表示するのではなく、カーソルが止まったところで
表示されるようになっています。

このようなものを実装するにはどういう方法が最適なのでしょうか。

今作っているのは、ListView1 の項目にフォーカスがあたると
その内容が ListView2 に表示されるものです。
カーソルを一気に移動させようとしても、ListView2 にいつも
描画しようとするので、処理が重くなってしまいます。

C# と直接関係のない話題かと思いますが、いい知恵があったら貸してください。
よろしくお願いいたします。
0509デフォルトの名無しさん2007/02/14(水) 21:02:00
>ファイル一覧が表示されますが
てのが何のことやら分からないが、

キーで選択が変わったらタイマーを回したらいいんじゃないの
0510デフォルトの名無しさん2007/02/14(水) 22:57:04
最近、メニューとか表示とかがハイパーテキスト(HTML?)になってるソフトがありますが、
あれはそういうAPIがあったりするんでしょうか。それとも自分で一からコーディング?
0511デフォルトの名無しさん2007/02/14(水) 23:03:57
>>508
フォーカス・・・じゃなくて選択だと思うが・・・が移動したときには、

→(a) PeekMessageで(WM_MOUSEMOVE以外の)マウスイベントかキーイベントがある場合には、
短いタイマーをスタートさせる。そうでなければListView2を更新してタイマーをキャンセル。

タイマーが発火したら
→ また(a)を行う。

そんな感じ。
0512デフォルトの名無しさん2007/02/14(水) 23:04:17
ハイパーテキスト(HTML?)てw

エスパーじゃない俺には何のことだかサッパリわからんが、
ひょっとしてLinkLabelのこと言ってるのか?

つーか、個人的にはこういう人はプログラマやっちゃいけないと思う。
0513デフォルトの名無しさん2007/02/14(水) 23:09:22
VisualStudioのスタートページみたいなののことを言ってるんじゃないか?
普通にIEコンポーネントで表示させてるだけだが
0514デフォルトの名無しさん2007/02/14(水) 23:09:24
>>512
あれだろ。
xpのプログラムの追加と削除とか、VSのC++ウィザードとかはHTMLで書いてある。
0515デフォルトの名無しさん2007/02/14(水) 23:17:30
WPFが使い物になればそんなことしなくてもいいんだがね…はぁ
Orcasマダー
0516デフォルトの名無しさん2007/02/14(水) 23:19:25
>>504
解決しました。ありがとうございます。
05175102007/02/14(水) 23:24:25
LinkLabelではなくて、>>514の言うとおりXPの「プログラムの〜」とかiTunesとかです。
ああいうのを使いたいんですが。
05185102007/02/14(水) 23:29:53
>>513
やっぱりIEコンポーネントなんですかね。
リンクにイベントハンドラを割り当てるのとかどうやってるんだろう。
0519デフォルトの名無しさん2007/02/14(水) 23:42:00
<a href="action:foobarbaz">リンク</a>
みたいにリンク貼っといてNavigateイベント捕まえればいいんじゃね?
0520デフォルトの名無しさん2007/02/14(水) 23:44:23
つーか、個人的にはこういう人はプログラマやっちゃいけないと思う。
0521デフォルトの名無しさん2007/02/14(水) 23:44:47
>>519
なるほど、ちょっと手間ですがそれでいけそうですね。
0522デフォルトの名無しさん2007/02/15(木) 08:56:49
WebBrowser インスタンスの ObjectForScripting プロパティ に
オブジェクトをぶち込んどくとスクリプト側から
そのオブジェクトのコード呼べるよ
0523デフォルトの名無しさん2007/02/15(木) 13:12:03
   """   
  ♥
  ヽ|〃
0524デフォルトの名無しさん2007/02/16(金) 05:30:45
お前らそろそろインタプリタ出来た?
もう出来上がった頃かと思ってもらいに来たんだけど。
0525デフォルトの名無しさん2007/02/16(金) 08:24:32
早朝5時にそんなくだらねえこと書いてるくだらない自分が嫌にならんアンタって
幸福な奴だよなw
0526デフォルトの名無しさん2007/02/16(金) 13:09:29
>>470みたいなのを使ってそれっぽいのを作るのは簡単だろうけど
インタプリタとは言わない
0527デフォルトの名無しさん2007/02/16(金) 20:51:29
PowerShell (Monado)? でいいじゃん?
0528デフォルトの名無しさん2007/02/16(金) 22:22:46
OOPだからインタプリタは意味内。

どうしてもインタプリタ作りたかったらJava使え。
0529デフォルトの名無しさん2007/02/16(金) 22:23:40
>OOPだからインタプリタは意味内。

そんな餌に(ry
0530デフォルトの名無しさん2007/02/16(金) 22:26:25
>>529
馬鹿だろあんたもw
遂次実行ってことは、その処理系にはユーザー定義の型を持たせ難いことを
意味するんだよw
0531デフォルトの名無しさん2007/02/16(金) 22:29:57
C#の文法には前方宣言がないから何らかの方法で型名の遅延解決をできるようにする必要はあるだろうな。
0532デフォルトの名無しさん2007/02/16(金) 22:42:08
すべてのメンバをデリゲートで持つようにするとか
0533デフォルトの名無しさん2007/02/16(金) 22:47:42
何でインタプリタが欲しいの??
0534デフォルトの名無しさん2007/02/16(金) 22:48:26
IronPython
0535デフォルトの名無しさん2007/02/16(金) 22:53:41
前方参照なつかしい。
これでコンパイル速度が速かったPASCAL思い出した…
0536デフォルトの名無しさん2007/02/16(金) 23:00:11
OOPだから、というのは変でした。
OOPスクリプト言語も一応インタプリタみたいなものが多いみたいだし。
ASCIIコードを実行してるわけじゃなくて、内部コードに変換してるんだろうな。
0537デフォルトの名無しさん2007/02/16(金) 23:01:59
Emitで無理やり実現できないかな
0538デフォルトの名無しさん2007/02/16(金) 23:10:20
>>530 持たせ難いといってる時点で矛盾を露呈していることに気づいてなす
0539デフォルトの名無しさん2007/02/16(金) 23:14:50
つーか、最近のCPUなら実行時にcscにかけたって大丈夫だろ。
0540デフォルトの名無しさん2007/02/16(金) 23:16:10
>>539
それはコンパイルしてるw
そのあともう一度コンパイルする羽目に…
0541デフォルトの名無しさん2007/02/16(金) 23:24:19
クラスのスタティックメンバが参照されたり、オブジェクトが最初にインスタンス化されるあたりで
おもむろに相互参照の解決とか始めるってのはどうだろう。

実行中にエラーが出たりしていかにもインタプリタらしい感じの動作になるな・・・
0542デフォルトの名無しさん2007/02/16(金) 23:26:45
実行部分よりも下に型定義があった場合はどうするよ
結局、最初に全部読む羽目になるんじゃないか?
0543デフォルトの名無しさん2007/02/16(金) 23:32:10
とりあえず名前を考えよう

ShapaScript
0544デフォルトの名無しさん2007/02/16(金) 23:35:24
CSharpScriptってきっと探せば誰か既に作ってるだろ。
0545デフォルトの名無しさん2007/02/16(金) 23:37:35
CSharpScript の検索結果 約 52 件
0546デフォルトの名無しさん2007/02/16(金) 23:41:24
できても c--って感じだろ。

c=かなw
0547デフォルトの名無しさん2007/02/16(金) 23:43:09
現状,完結したコードを実行時に一気にコンパイルするものしかないみたいだな
0548デフォルトの名無しさん2007/02/16(金) 23:43:44
C::Script
0549デフォルトの名無しさん2007/02/16(金) 23:44:01
C# Script for .NET 2.0
script compilerってなってるね。
何だこれ?
0550デフォルトの名無しさん2007/02/16(金) 23:53:14
>>530
そもそも持たせ"難い"ってプログラマにあるまじき発言だな。
0551デフォルトの名無しさん2007/02/17(土) 00:10:35
http://skazami.web.infoseek.co.jp/tools/Graphviz_Doxygen.htm
0552デフォルトの名無しさん2007/02/18(日) 20:54:33
TabControlの文字・画像をタブ幅を固定したまま左に寄せることは出来ませんか?
タブ幅を固定しようとして、SizeModeをFixにすると画像と文字が中央によってしまいますし
例としてはSleipnirのタブのようにFaviconとタイトルを左詰にしたような感じです
もしかしてオーナードローするしか方法はないでしょうか?
0553デフォルトの名無しさん2007/02/18(日) 21:13:18
オーナードローすりゃいいんじゃね?
0554デフォルトの名無しさん2007/02/18(日) 22:09:31
>>553
そういうのは「するしかない」と表現しようね
0555デフォルトの名無しさん2007/02/18(日) 22:22:58
そういう揚げ足とって楽しいか?
0556デフォルトの名無しさん2007/02/18(日) 23:24:40
>>554
大学は合格したのか?w
0557デフォルトの名無しさん2007/02/18(日) 23:32:27
オーナードローすりゃいいなんて答えの方がガキっぽい匂いがするが
0558デフォルトの名無しさん2007/02/18(日) 23:41:10
そりゃ鼻がおかしいんだろう
0559デフォルトの名無しさん2007/02/18(日) 23:41:21
そんなもの大昔に卒業したがな。
0560デフォルトの名無しさん2007/02/19(月) 13:02:27
最悪,空フォームに全部自前で描画すればなんだってできる
0561デフォルトの名無しさん2007/02/19(月) 21:21:11
c++の<algorithm>で定義されているような関数ってC#で使えんの?
accumulateとか.
関数型ライクにC#を満喫したいんだ。
0562デフォルトの名無しさん2007/02/19(月) 22:19:08
>>561
うーん、少なくとも標準ではない。
generics 内でオペレータのオーバーロードしたの使えないから作りづらいし。
C++ の template と違って、インラインに展開されまくったりしないから
効率もあんまりよくないと思うし。
0563デフォルトの名無しさん2007/02/19(月) 23:54:54
>>562
thx!
そうか・・・。
だからあんまりそういう系の話出てこないのか
0564デフォルトの名無しさん2007/02/20(火) 00:25:47
DynamicMethodに関して質問です。

DynamicMethodを定義したのですが、通常のメソッド呼び出しより2倍以上の時間がかかってしまいます。
DynamicMethodから生成されたMSILとハードコーディングされたメソッドのMSILを見ても
バイトコードのサイズは誤差程度なのですが・・

やっていることはオブジェクトのプロパティを取得して同値判定しているだけです。

o.Name == "name";//ハードコーディングによる比較

PropertyInfo prop = o.GetType().GetProperty("Name");
(string)prop.GetValue(o,null) == "name";//リフレクションによる比較

DynamicMethodWriter dmw = new DynamicMethodWriter("Name");//Nameプロパティで比較するようなILを作成するクラスを初期化
dmw.Compare(o, "name");//DynamicMethodによる比較

比較する箇所の速度を比較するとDynamicMethod:リフレクション:ハードコーディング = 4:2:1 位になってしまいます。
DynamicMethodのInvokeメソッドを使用した場合、そもそも速度は出ないものなのでしょうか?
0565デフォルトの名無しさん2007/02/20(火) 00:31:12
listboxに表示されている項目について、右クリックで選んで
右クリックメニューを出して、そのメニューを選択するのは
どうすればいいですか?
0566デフォルトの名無しさん2007/02/20(火) 01:02:45
>>564
そんなもん
0567デフォルトの名無しさん2007/02/20(火) 01:11:28
Invokeじゃなくてデリゲートにバインドしないとだめじゃない?
Invokeはリフレクションと実質同じだと思う。
0568デフォルトの名無しさん2007/02/20(火) 01:13:33
つーか、プロパティとかだとリフレクションて意外と早いのね…
0569デフォルトの名無しさん2007/02/20(火) 16:31:20
こっちで試したらリフレクション:ハードコーディング=700:1くらいだったぞ
0570デフォルトの名無しさん2007/02/20(火) 17:14:11
どんなリフレクションの使い方してる?
てかリフレクションじゃない方インライン展開されてるとかっておちじゃねーの?
05715692007/02/20(火) 17:49:15
リフレクションの方は>>594をそのまま
リフレクションじゃない方は
[MethodImpl(MethodImplOptions.NoInlining)]
string GetName(){return this.name;}みたいに変えたり
仮想プロパティにしたりしてみてもほとんど変わらなかった
0572デフォルトの名無しさん2007/02/20(火) 19:39:04
>>594がみえない…

そうか、やっぱり差がある方が普通な気がするな。
>>564は何かを間違ってる気がする。
0573デフォルトの名無しさん2007/02/20(火) 20:10:47
俺も>>594は今のところみえない
0574デフォルトの名無しさん2007/02/20(火) 20:29:02
リフレクションて実行時にコンパイルしてるの?
0575デフォルトの名無しさん2007/02/20(火) 21:08:47
何ツーか参考書見直してからカカッテコイ!щ(゚Д゚щ)
05765642007/02/20(火) 21:13:47
計測に使用したプログラムはちょっとしたイテレータを含んでいたのでリフレクションの差はそんなに出なかったみたいです。
試しに作ってみたプログラムを一応貼り付け。まぁ、問題はDynamicMethodを使うとさらに遅くなってしまったことなんですが。
  public class RefTest{
    public void Test(){EvalByReflection();EvalByHardcode();}
    private MethodInfo _m;
    private NamedObject[] _array = new NamedObject[1000000];
    public RefTest(){
      _m = typeof(NamedObject).GetProperty("Name").GetGetMethod();
      for (int i = 0; i < _array.Length; i++) { _array[i] = new NamedObject(); }
    }
    public void EvalByReflection(){
      Stopwatch sw = new Stopwatch(); sw.Start();
      for (int i = 0; i < _array.Length; i++){if (_evalReflect(_array[i])){ }}
      sw.Stop(); Debug.Print("reflect {0}ms", sw.ElapsedMilliseconds);
    }
    public void EvalByHardcode(){
      Stopwatch sw = new Stopwatch(); sw.Start();
      for (int i = 0; i < _array.Length; i++){if (_evalHardcode(_array[i])) { }}
      sw.Stop(); Debug.Print("hardcode {0}ms", sw.ElapsedMilliseconds);
    }
    private bool _evalReflect(NamedObject n){return ((string)_m.Invoke(n, null) == "name");}
    private bool _evalHardcode(NamedObject n){return n.Name == "name";}
  }
  public class NamedObject{
    private string _name = "xxxx";
    public string Name { get { return _name; } set { _name = value; } }
  }
reflect 2280ms
hardcode 66ms
reflect 2405ms
hardcode 70ms
単純な、そこだけの処理コストだけで比較すると確かに700:1あるかも。
0577デフォルトの名無しさん2007/02/20(火) 22:58:48
なんでベンチの最中に文字列比較とかそういうことを入れるわけ?
しかもメソッド呼び出しが2回で間接になってるし。
(まああえてそういう場合で計測ってのはもちろんありえるが)

しかしそれでも30倍程度は差があるし、2倍っていったいどんなベンチしたときなんだ?

>まぁ、問題はDynamicMethodを使うとさらに遅くなってしまったことなんですが。
で、デリゲートではためしてみたのかえ?
Invokeじゃリフレクションとおなじだっつってんだが。
0578デフォルトの名無しさん2007/02/20(火) 23:25:54
バインドで試しました。
静的に作成したデリゲートにバインドしたら速度的にはほぼ同じでした。
デリゲートの型が実行時に確定するようなコードだったので、どのようにバインドすればいいのわかりませんでした。
実装方式変えてDynamicMethodのシグニチャを固定しました。
ありがとうございました。

ベンチはより実装に近いイメージで計測しました。(動的メソッド内でメソッド呼び出しを行っていたので)
DynamicMethodとの比較がメインだったので、2倍とかの情報は誤解を与えました、ごめんなし。
0579デフォルトの名無しさん2007/02/20(火) 23:55:21
>静的に作成したデリゲートにバインドしたら速度的にはほぼ同じでした。
これは速くなった(ハードコードに近い感じ)と受け取っていいのか?
0580デフォルトの名無しさん2007/02/21(水) 00:14:28
はい、ハードコードに近い感じです。
生成したILが若干余計なものが含まれているので少し遅いですが
ILが同じなら多分同じくらいじゃないかと。
0581デフォルトの名無しさん2007/02/21(水) 00:54:53
マーシャリングについて質問です。

文字列を返すアンマネージドAPIで、呼び出し側が文字列のために自前でバッファを
割り当て/解放することが要求されているものでは
HogeAPI( LPTSTR lpstr );
↓
HogeAPI( StringBuilder str );
のようにするとマーシャラがアンマネージドバッファを勝手に解放してくれると
どこかで読んだ記憶があるんですが、

SHGetKnownFolderPath(... , PWSTR *ppszPath );

みたいにCoTaskMemFreeで解放することが要求されているものはどうしたらいいんでしょうか?

SHGetKnownFolderPath(... , out string ppszPath );

で動作してしまうんですが、やっぱりIntPtrで貰って自前で解放しないと駄目なんでしょうか。。
0582デフォルトの名無しさん2007/02/21(水) 14:31:48
ビルドでインストールされるプログラムを、
exeファイルの実行等でビルド等の処理を行うにはどうした良いのでしょう?
0583デフォルトの名無しさん2007/02/21(水) 16:20:17
日本語でたのむ
0584デフォルトの名無しさん2007/02/21(水) 16:28:18
インストーラの実行時にビルドしたいとか?
0585デフォルトの名無しさん2007/02/21(水) 16:32:35
順番に行こうw
まずこれから。

「ビルドでインストールされるプログラム」

0586デフォルトの名無しさん2007/02/21(水) 16:38:01
理解したかも
「ビルドでインストールされるプログラム」はVisualStudioのGUIを通したビルドや実行のことで,
>>582は,出力されたexeファイルがどこにあるのかが分からないんじゃないか?
プロジェクトのフスマソォルダ\bin\Debug\名前.exe
間違ってたらスマン
0587デフォルトの名無しさん2007/02/21(水) 17:17:32
エスパーすると、nmake.exeが正解。
0588デフォルトの名無しさん2007/02/21(水) 17:47:07
コマンドでビルドしたいってことじゃね?



違うな・・・
0589デフォルトの名無しさん2007/02/21(水) 17:47:48
次はコレ。

「プロジェクトのフスマソォルダ」
0590デフォルトの名無しさん2007/02/21(水) 18:18:31
msbuild とかこういう話じゃないの?
0591デフォルトの名無しさん2007/02/21(水) 18:39:22
すみません。
p[0]+2
このような配列への計算はできないのですか?
0592デフォルトの名無しさん2007/02/21(水) 18:40:48
「配列への計算」という言葉の意味はわかりませんが、そのような計算はできます。
0593デフォルトの名無しさん2007/02/21(水) 19:32:48
エスパー回答!

p[0]=p[0]+2
0594デフォルトの名無しさん2007/02/21(水) 20:12:16
double[]とint型の演算はできないというエラーが出たのですが・・・。

public int a(・・・・)
{
swap(p[i],p[i]+i);

}

swap(res a,res b)
{
:
}
このように使うときなんですが。
0595デフォルトの名無しさん2007/02/21(水) 20:16:36
C#にポインターは無いだろ
0596デフォルトの名無しさん2007/02/21(水) 20:19:16
なにその言語
0597デフォルトの名無しさん2007/02/21(水) 20:22:56
ref
0598デフォルトの名無しさん2007/02/21(水) 20:25:37
p[i] + i の ref ってなにか考えてみろよ。
0599デフォルトの名無しさん2007/02/21(水) 20:31:50
意表をついて res型つくってるとかw
0600デフォルトの名無しさん2007/02/21(水) 20:32:24
こちらへどうぞ。

ふらっとC♯, C#(初心者用) Part13
http://pc10.2ch.net/test/read.cgi/tech/1170761729/
0601デフォルトの名無しさん2007/02/21(水) 20:33:55
すいません。間違えました。
public int a(・・・・)
{
swap(ref p[i],ref p[i]+i);

}

swap(ref a,ref b)
{
:
}
0602デフォルトの名無しさん2007/02/21(水) 20:41:39
>>601
>>600 のリンク先のスレッドで続けるか、C# の学習本(サイト等でもよい)を読むか
した方がよいと思います。
0603デフォルトの名無しさん2007/02/21(水) 20:42:02
それ以前に良く見直せ。

swap(p[i],p[i]+i);

これは何をしたいのか分からん。
実際に引数が何を指しているか考え直せ。
0604デフォルトの名無しさん2007/02/21(水) 20:43:41
>>601
なあ、おまいさん。
それ、意味分かって書いてんのか?
0605デフォルトの名無しさん2007/02/21(水) 20:55:15
これ適当に書いたものなので特に意味はないです。
ただp[i]+iのようにできるか知りたいだけだったのですが。
0606デフォルトの名無しさん2007/02/21(水) 21:01:04
>p[i]+iのようにできるか

できるっつってんだろボケ。
0607デフォルトの名無しさん2007/02/21(水) 21:03:15
だからエラーが出たから聞いてんだろハゲ!!
0608デフォルトの名無しさん2007/02/21(水) 21:06:58
>>607
だからさ、これはできるの。
 ↓
p[i]+i

これはC# のコードではないし、何をしたいのかもわからないの。
 ↓
>>601
0609デフォルトの名無しさん2007/02/21(水) 21:08:03
適当に書いた箇所が間違ってんだ低脳
0610デフォルトの名無しさん2007/02/21(水) 21:08:16
変数と変数でないものの区別も付かんような奴は氏んでください
0611デフォルトの名無しさん2007/02/21(水) 21:09:33
>>605
そういう時には
「ref 引数に変数ではなく式を渡せますか」と質問して、
「渡せません」と答えをもらって、
「そうですか、ありがとうございました」とお礼を言うんだよ。

>p[i]+iのようにできるか
こんなの関係ないじゃん。
0612デフォルトの名無しさん2007/02/21(水) 21:12:29
変なコードを書くより、何をしたいのか日本語で書いてよ。
0613デフォルトの名無しさん2007/02/21(水) 21:15:09
swap(ref p[i],ref p[i]+i);

いったいどういう挙動を期待してるんだよ。
0614デフォルトの名無しさん2007/02/21(水) 21:28:44
2/21 (水) NHK教育
22:00 ようこそ!鉄道模型の世界へ・レイアウト制作入門
0615デフォルトの名無しさん2007/02/21(水) 21:45:17
( ´д)テッチャン(´д`)テッチャン(д` )
0616デフォルトの名無しさん2007/02/21(水) 21:48:08
コテッチャ━━━━(゚∀゚)━━━━ソ!!
0617デフォルトの名無しさん2007/02/21(水) 22:01:18
はじまった
0618デフォルトの名無しさん2007/02/21(水) 22:16:21
みるなよw
0619デフォルトの名無しさん2007/02/21(水) 22:32:07
市況1かよ。
0620デフォルトの名無しさん2007/02/21(水) 22:51:16
流れを切って申し訳ありません。質問させて下さい。
半透明ウィンドウで、テキストだけをくっきりと不透明で表示したいのですが、
可能でしょうか?可能であればヒント・参照先を教えていただけるとありがたいです。
よろしくお願いします。
0621デフォルトの名無しさん2007/02/21(水) 23:04:37
可能だけど難しいよ。
レイヤードウィンドウ(layered window)にして、アルファ付で描画したビットマップのGraphicsから
取得した DC のハンドルで UpdateLayeredWindow してあげる、というような流れ。
0622デフォルトの名無しさん2007/02/21(水) 23:44:49
vistaでxaml使ってやれ。
0623デフォルトの名無しさん2007/02/22(木) 02:48:30
>>621
できました!ありがとうございます。

>>622
Vistaへの移行は・・・orz
0624デフォルトの名無しさん2007/02/22(木) 09:49:07
XP SP-2 でも .NET 3.0 つかえるよ
0625デフォルトの名無しさん2007/02/22(木) 10:39:22
数値でも、文字でもインデクサの指定できるDictionaryだかListってなかったけ?
dic[int]やdic[string]のどちらもイけるやつ。
0626デフォルトの名無しさん2007/02/22(木) 11:09:59
なければそれぐらい作れ
0627デフォルトの名無しさん2007/02/22(木) 11:19:43
>>626
作り方聞いてんじゃなくて、あるかどうか聞いてんの。
0628デフォルトの名無しさん2007/02/22(木) 11:27:44
最近はゴミばかりだな
0629デフォルトの名無しさん2007/02/22(木) 11:37:14
>>628
お前もな
けなしてる暇あったら回答しろ。
相談室なんだから。
>>626
SortedListだかSortedDictionaryあたりが使えたかもしれないね。
俺もあったような気はするんだが、結局自作したかもしんない。
0630デフォルトの名無しさん2007/02/22(木) 12:00:41
つーか、Dictionary<object> でよくね?
0631デフォルトの名無しさん2007/02/22(木) 12:31:59
っていうか、俺には>>625の言ってる意味がさっぱり分からんが。
いや「分からん」ってのは婉曲表現だから勘違いしないように
0632デフォルトの名無しさん2007/02/22(木) 12:37:07
そうか
0633デフォルトの名無しさん2007/02/22(木) 14:05:34
VBのCollectionと同じのがほしいんでしょ。
0634デフォルトの名無しさん2007/02/22(木) 14:41:11
なんか色々カキコすまそ

要は
dic[1] = "hogehoge"
dic["key1"] = "hogehoge"

のどちらでもアクセスできるクラスがなかったかなぁと。
0635デフォルトの名無しさん2007/02/22(木) 14:57:43
ない。

以上。
0636デフォルトの名無しさん2007/02/22(木) 15:01:21
いや、だから、Dictionary<object, string> でいけるって。
0637デフォルトの名無しさん2007/02/22(木) 15:05:41
>>636
>>634はindexでもkeyでも両方で全部のアイテムにアクセスできる
もの、という意味でいってるんじゃないのか
0638デフォルトの名無しさん2007/02/22(木) 15:08:47
それならSortedList
0639デフォルトの名無しさん2007/02/22(木) 15:40:06
あまり詳しくないけど
DataTableだかDataRowとかは?
0640デフォルトの名無しさん2007/02/22(木) 15:55:43
ふぃ〜
SortedListにて、いけるわ
list[0]
list.Keys[0]
でアクセスできるわ。
これだた。

センクス〜
長々お付き合い頂き、誠に、真に、感謝いたす。
それでは失礼つかまつります
0641デフォルトの名無しさん2007/02/22(木) 15:57:29
すんずれい。
list["key"]
List[0]
だ。
それでは!
0642デフォルトの名無しさん2007/02/22(木) 16:23:18
TreeView で CheckBoxes = true の場合に、チェックがされたノードって拾えますか?
.NET 1.1 なのですが。
0643デフォルトの名無しさん2007/02/22(木) 16:28:29
>>642
自己レス。TreeNode node = (TreeNode)e.Node;
0644デフォルトの名無しさん2007/02/22(木) 18:10:19
実行時に、基底に同じクラスを持つインスタンスの数をチェックしたいです。
よく判らないのですが、リフレクションを使うと可能になるのでしょうか?
0645デフォルトの名無しさん2007/02/22(木) 18:14:56
基底クラスを触れるなら,
public static int Count;

public MyBaseClass()
{
Count++;
}
0646デフォルトの名無しさん2007/02/22(木) 18:17:03
>>645
おぉ。難しく考えすぎていました。ありがとうございました。
0647デフォルトの名無しさん2007/02/22(木) 20:55:21
MMORPGのようなコンテンツを作りたいんですが、
アイテム「が100個あるとすればどのようにDBで管理すれば良いのでしょうか?
フィールド100個とか無理です・・・
0648デフォルトの名無しさん2007/02/22(木) 20:58:08
本屋行けばそういう本は幾らでも並んでるから、好きなの買ってきなよ
0649デフォルトの名無しさん2007/02/22(木) 20:59:21
ArrayList<Hogerpg.Item> itemList = new ArrayList<Hogerpg.Item>();
0650デフォルトの名無しさん2007/02/22(木) 21:00:44
List<T>
0651デフォルトの名無しさん2007/02/22(木) 21:02:38
買えないから聞きましたorz
0652デフォルトの名無しさん2007/02/22(木) 21:05:44
>>647
データベースレイアウトの話ならスレ違いだと思うが、
持ち主のIDを振ったレコードを100ほど用意すればいいんじゃなかろうか
0653デフォルトの名無しさん2007/02/22(木) 21:08:25
>>651
図書館にあるよ。
0654デフォルトの名無しさん2007/02/22(木) 22:49:07
なかったよ
0655デフォルトの名無しさん2007/02/22(木) 22:53:29
>>654
コンピュータ関連の棚とは別に、
ゲーム関連の棚がある。

オセロとかダーツの辺りにあるよ。
0656デフォルトの名無しさん2007/02/22(木) 22:57:38
>フィールド100個とか無理です・・・
下のスレに行って聞くと教えてもらえるかもしれないよ。
一つの文字列を固定長分割して使うのもお奨め。

コボラは横長DBがお好き
http://pc10.2ch.net/test/read.cgi/prog/1160745584/
0657デフォルトの名無しさん2007/02/23(金) 00:07:37
>>640
ほんまにそれでええのんか?

OrderedDictionary とか、文字列対象ならNameValueCollectionとか。

0658デフォルトの名無しさん2007/02/23(金) 01:56:42
はっきり言って俺はC#は詳しいよ。
Append()は戻り値がvoidなので新たにオブジェクトを作らない。
よーく考えろ。

 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\| ̄ ̄ ̄ ̄ ̄ ̄
                        _,,t-‐‐-、,-‐‐-、
                     三'::::::............... .....::::::`y,.
                     ナ::::::::::::::::::::::::::::::::: :::::::::::::ヾ
              | ̄|   V::::::::::::::::_{{ ({∫∬ノノjヾ:::::{
           | ̄| | ̄|   ナ::::::::::::::i`__,,,,,,,ァ_  _,,,,,_ t;;:ヌ
           |  | |  |  イヘ::::::(ヾ~!,ャt、 !'''i ィtン )=f }f
           |  | |  |  i {t)テ" ヘ' '___,イ ヽ_/ 介'
           |  | |  | _,rヘ_,j|!'     /ー--''!     |'
           |,.ィ―'''' ̄ /| |       /二ク     !
           /;;:::'';;::''::;;:/ { ! 、     ヾニン   ノ\
            /'''::::;r|''':::;;;|  | ! \       _,,./|::;;'''\
        /:;;/ |;;;''::;;|   丶\  `__>-ー´   !;;;:'''::iヽ、
          i/   |'::;;;;''|      三 ―''"       !''::;;;;| /ヽ
        /⌒ヽ  |;;''':::;|       \            !;;::''|/  i
         /     \{'';;;::''}          ̄二ニ=    !::;;|   |
        /ヘ     |;;:::::;{            ‐-      !/   |
        /  i     |:::;;;''!             ー       !  / |
     /   l     |;;'';イ                   }   {、
     〉、      ∧テ{ ヽ  _   _,,,,;;;;;:::-==ニ;;;_   ノ __,イ´
      / \_    //レ!      ̄           ̄ { ̄  |


0659デフォルトの名無しさん2007/02/23(金) 10:07:55
図書館にあるコンピュータ関係の本ってマイコンとBASIC時代止まりなんだが@田舎
0660デフォルトの名無しさん2007/02/23(金) 10:27:31
>>659
古くなった技術書ほど役に立たないものはないよな。
古本屋でたな晒しになってるN66BASIC入門とかNIFTY-Serve活用術とか、誰も買わないって。
0661デフォルトの名無しさん2007/02/23(金) 11:25:47
>>657
おおぅ!
こちらの方が使いやすいス!スバラスィ〜
ご好意感謝致す。
0662デフォルトの名無しさん2007/02/23(金) 13:09:29
このスレを見ている人はこんなスレも見ています。(ver 0.20)
Windows Vista PGスーパーハカー専用 スレ [Windows]
総合質問スレッド@PCサロン Part23 [PCサロン]
OSを作ろうpart12 [OS]
Windows Meの良さについて語ろう。 [Windows]
JR東日本 社会人採用対策スレッド 2006 Part6 [転職]
0663デフォルトの名無しさん2007/02/23(金) 13:29:22
JR東日本ってことは、JR情報システム関連だな。

あそこはまだドトネトにこだわりをもっているのか?
0664デフォルトの名無しさん2007/02/24(土) 11:52:22
COBOLという古い資産に縛られて生きているからね
0665デフォルトの名無しさん2007/02/24(土) 12:04:14
JAVAやC#なくなってもCOBOLは現役だろ
0666デフォルトの名無しさん2007/02/24(土) 15:13:44
SVGを表示するには独自に解釈するしかない?
0667デフォルトの名無しさん2007/02/24(土) 18:20:14
ファイルをダウンロードするときに、リクエストヘッダに
Range: bytes= と、 If-Modified-Since:
を追加したいのですが、どうすればいいですか?
0668デフォルトの名無しさん2007/02/24(土) 18:25:16
どういうクラスを使ってるかくらい書いてくれんと答えようがない
0669デフォルトの名無しさん2007/02/24(土) 18:27:09
HttpWebRequestです。
0670デフォルトの名無しさん2007/02/24(土) 18:31:39
HttpWebRequest.AddRange
HttpWebRequest.IfModifiedSince

何でMSDN見ないのかなあ
0671デフォルトの名無しさん2007/02/24(土) 18:41:18
どうもです。
0672デフォルトの名無しさん2007/02/24(土) 18:45:55
>>665
何れ衰退するよ。あの言語は問題だらけな上に将来性がない。

抵抗勢力のッサン共を救済するためにあえて残っているだけ。
今は必要悪だが、徐々に不要になり、いずれ不要悪になる。
0673デフォルトの名無しさん2007/02/24(土) 18:47:49
>>670
ライセンス持ってないから
0674デフォルトの名無しさん2007/02/24(土) 18:48:39
ライセンス?
何を言ってんだおまいさんは
0675デフォルトの名無しさん2007/02/24(土) 18:52:48
MSDNなしで開発できる猛者とかいるわけ?尊敬するわ
0676デフォルトの名無しさん2007/02/24(土) 18:54:53
全く知識がなくてある程度の見当がついてないと探しようがないけどな
0677デフォルトの名無しさん2007/02/24(土) 20:03:54
CookieContainer|CookieCollectionをファイルへ保存したいのですが、どういった方法が一番良いでしょうか?
よろしくお願いします。
0678デフォルトの名無しさん2007/02/24(土) 20:13:46
>>674
Windowsもっていません。
0679デフォルトの名無しさん2007/02/24(土) 20:40:32
>>677
普通にシリアライズすればどうだろう
0680デフォルトの名無しさん2007/02/24(土) 21:11:06
>>678
Webで全部読めるぞ
0681デフォルトの名無しさん2007/02/24(土) 21:42:37
>>679
・・・出来ました・・・。
恥ずかしながら、バイナリシリアル化とXmlシリアル化を混同してました・・・orz
有り難うございました。
0682デフォルトの名無しさん2007/02/24(土) 21:45:56
JavaでいうところのXMLEncoder/XMLDecoderが
XMLシリアライズか・・・
0683デフォルトの名無しさん2007/02/24(土) 21:47:11
コンパイラDLしたんだけど、実行の仕方がわからん
誰か教えて
0684デフォルトの名無しさん2007/02/24(土) 21:50:56
断る
0685デフォルトの名無しさん2007/02/24(土) 21:53:32
改めてVisualC#Expressを落としてきて出直せ
0686デフォルトの名無しさん2007/02/24(土) 22:05:44
>>673
タダだ。落として入れとけ。

MSDN ライブラリ 2006 年 12 月版
http://www.microsoft.com/downloads/details.aspx?FamilyID=94596af5-cc58-45af-a14b-df627a31e783&DisplayLang=ja
0687デフォルトの名無しさん2007/02/24(土) 23:25:27
質問させてください。

Formを特定の場所に出力させるために下記のようなコード書きました。
--------------------------------
Form form = new Form();
form.Show();
form.Location = new Point(300, 300);
---------------------------------
しかし、上記のように書くとShowしたフォームが一瞬、別の場所に表示されてしまい
ちらつきが発生してしまいます。
どのようにコードを書けば画面のちらつきは解消できますでしょうか?
ご教授お願いいたします。
0688デフォルトの名無しさん2007/02/24(土) 23:28:49
表示してから動かしたらちらつくに決まっているではないか

Form form = new Form();
form.StartPosition = FormStartPosition.Manual;
form.Location = new Point(300, 300);
form.Show();
0689デフォルトの名無しさん2007/02/24(土) 23:33:27
form.StartPosition = FormStartPosition.Manual;

こんなのがあったんですね。
ありがとうございました。
0690デフォルトの名無しさん2007/02/25(日) 00:04:27
>>686
必要システム

* サポートされているオペレーティング システム : Windows Server 2003; Windows Vista; Windows XP

Windows持ってないから無理です
0691デフォルトの名無しさん2007/02/25(日) 00:08:18
気違い警報
0692デフォルトの名無しさん2007/02/25(日) 00:08:44
http://msdn2.microsoft.com/ja-jp/library/default.aspx
ウェブで見放題だ
釣りか?
0693デフォルトの名無しさん2007/02/25(日) 00:09:33
ieがない
0694デフォルトの名無しさん2007/02/25(日) 00:10:52
あきらめたら?
0695デフォルトの名無しさん2007/02/25(日) 00:41:21
単なるヘルプファイルの詰まったDVDなんだから
XML解読してビューア作るくらいしろよ
0696デフォルトの名無しさん2007/02/25(日) 01:04:18
>>689
それもそうだけど、Show()してから移動してるのが主な原因
06976892007/02/25(日) 01:17:54
>>696
はい。そうですね。
俺が行間を補わなかったので
そう思われても仕方がありませんね。
06986962007/02/25(日) 01:29:16
>>697
わかってたんなら余計な事言った。スマン
0699デフォルトの名無しさん2007/02/25(日) 09:03:59
>>693
釣り野郎か?Fxで普通に見られるつーの
0700デフォルトの名無しさん2007/02/25(日) 10:28:22
眼がないので無理です
0701デフォルトの名無しさん2007/02/25(日) 10:30:34
Fxてなんだ サンテFX?
0702デフォルトの名無しさん2007/02/25(日) 10:42:20
.NET Fx
0703デフォルトの名無しさん2007/02/25(日) 16:56:32
なんでで炉の裏ものって肝心なところ塗り潰してたりするんだろ
どうせ違法なのに
0704デフォルトの名無しさん2007/02/25(日) 17:01:31
>>703
すごい誤爆だなw
0705デフォルトの名無しさん2007/02/25(日) 17:11:42
規制前だろ
0706デフォルトの名無しさん2007/02/25(日) 21:27:22
>>701
Wikipediaより

Firefox は FireFox, FireFOX, FIREFOX, Fire fox, Fire Fox
などと表記されることが多いが、これらはすべて誤表記である。
正式には最初の文字だけが大文字であり、分かち書きもしない。
また FF と略記されることも多いが、こちらも誤りである。
Fx あるいは fx が好ましい略称とされている。
0707デフォルトの名無しさん2007/02/25(日) 21:34:51
「好ましい」略称が示されているだけなのにその他の略称は誤りなのか
いやまあその部分書いた奴は /. で死刑とか言ってたようなのと同類なんだろうけど
0708デフォルトの名無しさん2007/02/25(日) 21:42:02
このスレ的には>>702だとオモタ
0709デフォルトの名無しさん2007/02/25(日) 21:53:13
スレの流れから判断できるだろ

ここも春が来たか・・・
0710デフォルトの名無しさん2007/02/25(日) 21:56:05
まあMozilla-Japanもそういう口調で出てるからいいんじゃね

Q. Firefox のスペルは? 短縮形は?

A. Firefox のスペルは F-i-r-e-f-o-x です。最初の文字だけが大文字になります (例えば、FireFox や FireFOX、FIRE FOX など、多くの人がそうだと思い込んでいるものはすべて間違いです)。好ましい短縮形は「Fx」か「fx」です。
0711デフォルトの名無しさん2007/02/25(日) 22:03:53
英文翻訳体だから原文で読まんとなんとも
0712デフォルトの名無しさん2007/02/25(日) 22:21:42
為替証拠金取引
0713デフォルトの名無しさん2007/02/25(日) 23:09:59
おまえら全員消えろガキ
0714デフォルトの名無しさん2007/02/25(日) 23:15:01
WebBrowserを使って、マウスがリンク上にあることを
伝えるイベントって何ですか?
0715デフォルトの名無しさん2007/02/25(日) 23:16:35
そんなものはない
0716デフォルトの名無しさん2007/02/25(日) 23:31:56
<a>のonmouseoverになんか設定しとけばいんじゃね?
0717デフォルトの名無しさん2007/02/25(日) 23:52:40
ファイヤーフォックス?

ファイアーフォックス?
0718デフォルトの名無しさん2007/02/25(日) 23:55:27
>>717
失せろクズ
0719デフォルトの名無しさん2007/02/26(月) 01:47:36
スレ違いというより板違いだな
まー 一人の基地外が暴れているだけだと思われるが
0720デフォルトの名無しさん2007/02/26(月) 23:45:35
AxWebBrowser で表示させたブラウザ内をマウスホイールで
スクロールするにはどうしたらいいですか?
0721デフォルトの名無しさん2007/02/26(月) 23:47:07
.Netのロギング機構って使い辛いと思いませんか?Trace.XXX TraceSwitch
皆さんはロギングには何を使用していますか?
ツリー構造なのと、書き込みメソッド呼び出しが簡単なので自分はlog4netを使っています。
標準のをしっかり使ってる人いますか?
0722デフォルトの名無しさん2007/02/26(月) 23:56:30
自作のライブラリに限るね。
不用意に第三者の書いたコードを混入させるわけにいかんし。
0723デフォルトの名無しさん2007/02/26(月) 23:58:59
>>722
車輪の(ry
0724デフォルトの名無しさん2007/02/27(火) 00:00:31
仕事だと再発明をせんとならん場合もあるだろう
0725デフォルトの名無しさん2007/02/27(火) 00:03:08
>>721
Enterprise Libraryのロギングは標準のの上に構築されているそうだから使ってみたら。
ttp://www.microsoft.com/downloads/details.aspx?FamilyID=5a14e870-406b-4f2a-b723-97ba84ae80b5&DisplayLang=en

なまで使うならここが参考になるかも。
ttp://www7a.biglobe.ne.jp/~fbsoft/denshoku/dntrace00.html
0726デフォルトの名無しさん2007/02/27(火) 00:15:40
C#のソースコードをJavaに変換したいのですが
どんなツールで出来るか、或いは出来ないのかを教えて頂きたいです
0727デフォルトの名無しさん2007/02/27(火) 00:32:16
出来ない。
0728デフォルトの名無しさん2007/02/27(火) 03:01:45
そんな魔法みたいなことが
0729デフォルトの名無しさん2007/02/27(火) 09:47:36
っJ#
0730デフォルトの名無しさん2007/02/27(火) 10:29:16
>>726 
つ【小人】
0731デフォルトの名無しさん2007/02/27(火) 15:59:03
Enterprise Libraryって周りでは使ってるひと居ないんだけど。
みなさんどうですか?
0732デフォルトの名無しさん2007/02/27(火) 17:54:49
使ったことありますが、二度と使いません。
0733デフォルトの名無しさん2007/02/27(火) 18:20:26
>>726
.NET FrameworkとJAVA SDKで互換性がないから無理。
VB.NET VC.NET VC#.NET 
この3つ間なら一部のAPI以外は互換性あるから可能だと思うけど。
0734デフォルトの名無しさん2007/02/27(火) 18:28:47
>726
文法だけならほとんど同じだから、
スクリプト組んで変換すれば動くかも。
ライブラリを一つでも使うと無理。
0735デフォルトの名無しさん2007/02/27(火) 19:05:59
C#でソフトウェアを作ろうと思っているんですが
C#はソースコードが丸見え、通信の反応からソースコードがばれるといいますが
どういうことなんでしょうか?詳しい方お教え下さいませ
また、それに対する対処法などもあればお教え願いたいです
ただし、逆アセンブリング解析でのソースコード判明は置いておいたとします
0736デフォルトの名無しさん2007/02/27(火) 19:09:00
ヘラブナ釣り思い出した
0737デフォルトの名無しさん2007/02/27(火) 19:11:01
>>735
http://uwa.potetihouse.com/soft/nandoku.html
ここを参考にすればいいかと。
というか、最新バージョンの作成日が「2007/12/05」になっている。w
誰も指摘していないのか・・。
0738デフォルトの名無しさん2007/02/27(火) 19:17:37
WindowsXP Embedded を採用したATM
http://pc10.2ch.net/test/read.cgi/pcnews/1172571379/
0739デフォルトの名無しさん2007/02/27(火) 20:14:11
>>737
あらゆるカテゴリのUnicode文字が識別子に使えたら面白いな。
繁体字、カンナダ文字、IPA、ハングル、アムハラ文字、罫線、アルメニア文字、etc.が入り乱れるソースコードに。
0740デフォルトの名無しさん2007/02/27(火) 20:20:07
それはすごい(棒)
0741デフォルトの名無しさん2007/02/27(火) 20:32:00
それはうまい(棒)
0742デフォルトの名無しさん2007/02/27(火) 20:32:34
それはエロい(棒)
0743デフォルトの名無しさん2007/02/27(火) 20:32:38
それは珍しい(棒)
07447352007/02/27(火) 20:50:24
>>737
私は難読化ツールを紹介して欲しかったのではなくて
逆アセンブリング解析と難読化の有無は置いておいた上で
C#はソースコードが丸見え、通信の反応からソースコードが分かるといわれる仕組みを知りたかったのです
どういう風にしてソースがばれるのかということで、クライアントサイドとサーバーサイドで動くもの
両方とも同じ仕組みでソースコードがばれてしまうのかということについても、不躾ですがお教え願いたいです
0745デフォルトの名無しさん2007/02/27(火) 20:52:35
>通信の反応からソースコードが分かる

イミワカラン
0746デフォルトの名無しさん2007/02/27(火) 20:55:32
むむ、この浮きの反応はスレアタリだな。あわせたらいかん。
0747デフォルトの名無しさん2007/02/27(火) 20:57:04
> C#はソースコードが丸見え、通信の反応からソースコードが分かるといわれる
> 両方とも同じ仕組みでソースコードがばれてしまう
そんなことはない。
0748デフォルトの名無しさん2007/02/27(火) 21:09:59
通信云々は知らんが、.net言語は全部ILに変換するはずだから、
ILさえ解析できれば動作がわかるのは当然。
それがソースコード丸見えっていうのならそうに違いないが、
アセンブリが読めるからソースコードがわかるってのとそんなに替わらん。

現実的にはILからC#のソースに逆変換するのは難しいんじゃないか?
おれが知らんだけかもしれんが。
0749デフォルトの名無しさん2007/02/27(火) 21:12:24
C#をコンパイルしたままのMSILは、ほど100%の精度でデコンパイルできるでしょ
07507372007/02/27(火) 21:17:23
リンク先にある「Reflector for .NET」を探しているのかと思ったけど
いったい何がしたいのやら・・
0751デフォルトの名無しさん2007/02/27(火) 21:20:24
CILは通常のネイティブアセンブリと違って、人間の読むことができる言語だがな
0752デフォルトの名無しさん2007/02/27(火) 21:41:51
>>749
ググったらほんとにそうだった。
MSILってもっとミクロな言語だと思ったんだが、クラス名や関数名まで再現できるのね。
こりゃセキュリティ関連で使うには問題あるわ。
0753デフォルトの名無しさん2007/02/27(火) 21:43:18
解析されても大丈夫なセキュリティにすればよいのだ
0754デフォルトの名無しさん2007/02/27(火) 21:44:26
> こりゃセキュリティ関連で使うには問題あるわ。

そんなプログラムを書くプログラマの方に問題がある。
0755デフォルトの名無しさん2007/02/27(火) 21:46:14
セキュリティじゃなくて、シェアウェアの解除コードとか埋め込んでる人たちは困るだろうな。
大体ネガってるのはシェアウェアの作者や業者だな。
0756デフォルトの名無しさん2007/02/27(火) 21:51:30
競合他社のアセンブリを、なぜか入手できちゃって、なんとなく解析しちゃってる
大手ベンダーの存在も見逃せないけどなw
0757デフォルトの名無しさん2007/02/27(火) 21:55:25
.NETの初期の頃なだまだしも、今更な話題で盛り上がれてもなぁ。
で、>>744はどこ行ったんだ?
オマエの知識の参考元のURLでも示してくれよ。
0758デフォルトの名無しさん2007/02/27(火) 22:01:27
初めのころはそういう話題で盛り上がったのを思い出した。
ソースに近い情報が見えたら盗用してるのがばれてしまうではないか。
おらのセキュリティの危機っす・・とかいうネタがあった。
0759デフォルトの名無しさん2007/02/27(火) 22:01:59
クライアント側で動くものについてはC#でもJavaでもC++でも
アセンブラでも(クラックは簡単という点で)大差ないんだけどね。
サーバ側で動くものについても(クラックは難しいという点で)
大差ないわけだが。
0760デフォルトの名無しさん2007/02/27(火) 22:06:00
>>759
>>774によればサーバー側のアプリも逆コンパイルできるようだが?
0761デフォルトの名無しさん2007/02/27(火) 22:08:14
そりゃサーバー側のプログラムが手に入れば逆コンパイルできるかもしれんが
それ以前にどうやってそのプログラムを手に入れるんだという問題が
0762デフォルトの名無しさん2007/02/27(火) 22:10:10
期待してるぞ>>774
0763デフォルトの名無しさん2007/02/27(火) 22:20:47
文句があるならP&Gは何の略か言ってみろ。
0764デフォルトの名無しさん2007/02/27(火) 22:34:35
大学翻訳センターです。
0765デフォルトの名無しさん2007/02/27(火) 22:39:16
何とかアンドギャンブル
0766デフォルトの名無しさん2007/02/27(火) 22:40:02
http://www.amiami.com/images/product/main/HOB-FIG-5150A.jpg
http://www.vipper.net/vip187747.jpg

キタ━━━━━(´Д`(○≡(゚∀゚)≡○)´Д`)━━━━━!!!!
10体予約したwwwww
0767デフォルトの名無しさん2007/02/27(火) 23:06:19
今回のスレは今まで以上に無駄な内容ばかり。
0768デフォルトの名無しさん2007/02/27(火) 23:13:27
>C#はソースコードが丸見え、通信の反応からソースコードが分かるといわれる
どこで言われてんのか教えろ
0769デフォルトの名無しさん2007/02/27(火) 23:16:48
(アニメ) マリア様がみてる 〜春〜 第13話 「パラソルをさして」 [23m40s 640x480 DivX502+MP3].avi
0770デフォルトの名無しさん2007/02/27(火) 23:18:04
ソース見える言うけど実際はあれくらい見えてもいいんじゃないかと思う。
見られてほんとに困るところは少数な気がする。
まあいやってのも分かるんだけどね。
0771デフォルトの名無しさん2007/02/27(火) 23:19:55
>シェアウェアの解除コードとか埋め込んでる人たち
んなの.NETでなくてもあるていどは似たようなもんだと思うが。

0772デフォルトの名無しさん2007/02/27(火) 23:21:44
>>752
リフレクションが使える時点で気づけよ・・・
0773デフォルトの名無しさん2007/02/27(火) 23:22:15
>>725
せめてTraceSourceの説明がまともにあるとこにしてやれ。
Enterprise Libraryはログだけのためには大げさなんだよな…
0774デフォルトの名無しさん2007/02/28(水) 00:20:12
解析する奴はドングルにしたって解析するだろ
0775デフォルトの名無しさん2007/02/28(水) 00:23:22
つうか普通はバイナリでも見られちゃ困るものはそのまま埋め込むようなことはしない。
0776デフォルトの名無しさん2007/02/28(水) 00:41:40
ソース
0777デフォルトの名無しさん2007/02/28(水) 00:44:36
ソースが見えるからセキュリティで使うのは問題って、典型的なSecurity by Obscurityですね
0778デフォルトの名無しさん2007/02/28(水) 01:03:12
>>744
あんまりお勧めじゃないけど、

『これからはじめる .NETFramework .NETリモーティング編』
にそこら辺の理由が書かれている。

実際には『C#はソースコードが丸見え…』でなく、作り方によっては丸見え(?)なってしまうこと。

もうちょっと書くと、C/S間でお互い通信するために、インターフェースのやりとりが必要で、
インターフェースのやりとりをするのに生のコード(DLL)を渡してしまうと>>752
が書いているようにMSILで簡単にコードが分かってしまうってこと。
インターフェースのやりとりに3種類あるらしく
 ・実装タイプ
 ・メタデータタイプ
 ・インターフェース
で、実装タイプにはソースコードの機密性の問題があるらしい。
その他はインターフェースのみだから、ソースコードの漏れの問題は無し
0779デフォルトの名無しさん2007/02/28(水) 01:22:49
ぶっちゃけfubsucatorとかで難読化した紋ってどの程度難読化になるのかね?
個人的にはあれで難読化したものおおうとは思わないが、気合入れてやる人にはあまり意味がない?でもそんな人にはあせんビルコードでも意味が内規がするが。
0780デフォルトの名無しさん2007/02/28(水) 02:07:27
ttp://madebits.com/netz/index.php
0781デフォルトの名無しさん2007/02/28(水) 03:35:23
難読化なんて文字通り意味ない。
ソースコード見られてマズいのはセキュリティ関連や特許技術なんかじゃねーの?

それか恥ずかしいとかw
0782デフォルトの名無しさん2007/02/28(水) 04:20:14
業務で実際に見られて困るのは、DBのレコードや通信データがほとんどだから、
DBはサーバ管理、通信データは暗号化で対応するから問題ない。
0783デフォルトの名無しさん2007/02/28(水) 05:14:40
あと契約上の問題とか。ソースを納品しない契約だから、バイナリからソースを復元できてはダメとかw
0784デフォルトの名無しさん2007/02/28(水) 10:09:23
>>778
通信内容からとか全然関係ないじゃん。
dll配ったらそら見れるつか当たり前。
配らなくても出来るのにわざわざ配って
ソースまる見えとかただのあほじゃん。
0785デフォルトの名無しさん2007/02/28(水) 10:13:05
ああちなみに、インターフェイスでやりとりするのが常識、俺の中では。
まあそもそもリモーティング使う場合の話だが。
0786デフォルトの名無しさん2007/02/28(水) 10:22:25
opensslなんかソース公開だがそれで危険なんて話は聞いたことがない
0787デフォルトの名無しさん2007/02/28(水) 11:33:37
あれは公開されてるから安心なパターン。
0788デフォルトの名無しさん2007/02/28(水) 11:35:41
大抵暗号キーを埋め込んでたり俺暗号もどきをおこなってたりっていう
馬鹿なことをしてる奴だろ。
0789デフォルトの名無しさん2007/02/28(水) 12:59:44
売り上げ3500万程度だと接待費はどれくらいまでなら落ちますか?
0790デフォルトの名無しさん2007/02/28(水) 13:24:34
はいはいスレ違い。
食費とバレナイ程度じゃねw
0791デフォルトの名無しさん2007/02/28(水) 13:29:54
@IT:.NET TIPS 実行ファイルのパスを取得するには? - C#
file:///D:/html/_entry/NET%20TIPS%20−%20@IT/www.atmarkit.co.jp/fdotnet/dotnettips/016exepath/exepath.html

ここを参考にして、実行してるプログラム自身のパスを取得したんですが、
あってるはずのパスと比較してもうまくいきません。
実際には以下のようなコードです。

String exePath = Application.ExecutablePath;
if (exePath == @"C:\p1\bin\Debug\p1.exe")
{
〜
}

パスはあってるはずなのに何度やってもfalseになるので、格納されてる文字列を出力してみたところ、

ExecutablePath で取得したパス:C:\p1\bin\Debug\p1.EXE
実際のパス:C:\p1\bin\Debug\p1.exe

のように、実際の拡張子が小文字にもかかわらず大文字で認識されることがわかりました。
そこで、文字列比較のところでToUpper()を使うことにより正常に動作するようになったのですが、
上のサイトでは、ExecutablePathで取得したパスの拡張子は小文字なのに、なぜ私の環境だけ大文字になるのか不可解です。
これは.netのバグでしょうか?それとも私が仕様を読み違えているんでしょうか?
ググっても、MSDNを参照してもそれらしいことは発見できませんでした。

0792デフォルトの名無しさん2007/02/28(水) 13:56:53
多分Win32APIの仕様だと思うが
とりあえずパス比較ではCaseを揃えるのは常識
0793デフォルトの名無しさん2007/02/28(水) 14:07:59
そんなことあるまいと思って見てみたけど、確かに拡張子は大文字になってら

ちなみに、自分の過去アプルもCaseは揃えるようにしてた。
大文字、小文字が混合している場合とか考えると、
その方が楽だからという理由だったんだけど
0794デフォルトの名無しさん2007/02/28(水) 15:10:24
>>792-793
パスの文字列比較はCaseをそろえる必要があるんですか、知りませんでした。

でも、もしこれがWin32APIの仕様だとすれば、Vistaでは通常通りのパスが取得できるんですかね。
OSによって取得する文字列が違うとかまずいと思うんですが、そこらへんMSはどう考えてるんでしょうか。
0795デフォルトの名無しさん2007/02/28(水) 15:16:31
Vista上のVC#2005 Express Edition で試してみたけど、

デバッグ時→.EXE
リリース時→.exe

になったよ
0796デフォルトの名無しさん2007/02/28(水) 15:22:11
プロジェクトのプロパティで[Visual Studio ホスティング プロセスを有効にする]
が有効になってると拡張子が大文字になる気がする
0797デフォルトの名無しさん2007/02/28(水) 15:35:30
>>794
>OSによって取得する文字列が違うとかまずいと思うんですが、そこらへんMSはどう考えてるんでしょうか。

FATとNTFSの仕様でパス名内の大文字小文字は区別しないことになってる。
文字列として違っていてもパスとしては等しいので問題なし。
0798デフォルトの名無しさん2007/02/28(水) 15:41:44
ntfsは区別できるけどな
あえてしないだけで
0799デフォルトの名無しさん2007/02/28(水) 21:15:39
ファイルシステムはいろいろ制限がある。
大文字小文字のほかに長いファイル名の問題もある。

http://support.microsoft.com/kb/436213/ja
0800デフォルトの名無しさん2007/02/28(水) 21:21:53
パス文字列の等価性を検証するのはかなり困難だろ
0801デフォルトの名無しさん2007/02/28(水) 21:54:54
\\?\
0802デフォルトの名無しさん2007/02/28(水) 22:27:29
それかって一部の変態的サービスが無効になるだけだからなあ
0803デフォルトの名無しさん2007/02/28(水) 23:02:29
UNIXのNTFSドライバで大文字小文字区別する設定があるな。
FATは元々同一ファイルになるからないが。
0804デフォルトの名無しさん2007/02/28(水) 23:04:39
クマー
0805デフォルトの名無しさん2007/02/28(水) 23:06:52
>>804
ttp://www.sixnine.net/cygwin/cygwin-doc/managed.html
NTFS では区別することが可能ですが、互換性維持のため、区別しないようになっています。
0806デフォルトの名無しさん2007/03/01(木) 02:10:23
おまいらある領域を透明なカラーで塗りつぶしたいときはどうしたらいいんですか?
やりたいことは半透明なカラーとかで描画する前にその領域をアルファ値が0のカラーで塗りつぶしてくことです。
そうしないと前回描画したものに上書きすることになってしまい残ってしまいます。
透明な色で塗りつぶしたいのはその描画した内容をUpdateLayeredWindowで半透明な描画として扱いたいためです。
0807デフォルトの名無しさん2007/03/01(木) 02:21:29
XOR
0808デフォルトの名無しさん2007/03/01(木) 02:45:22
System.Drawingでいいんだよな?
ClearメソッドかCompositingMode?だかそんな感じのプロパティ
0809デフォルトの名無しさん2007/03/01(木) 02:59:58
Graphicsのプロパティですかの?
明日調べてみます。もうおねむなので・・・(´・ω・`)
お舞らあり。
0810デフォルトの名無しさん2007/03/01(木) 06:02:01
あるDataSet内に関連性の無いDataTable1とDataTable2があって、それぞれのスレッドで書き込みがあるとしても、同期を取る必要はあるのでしょうか?
それとも、そもそも関連性の無いDataTableは違うDataSetに分けるべきでしょうか?
よろしくお願いします。
0811デフォルトの名無しさん2007/03/01(木) 08:16:27
普通にalpha値指定した「色」で描画するだけだと思うんだが。。
0812デフォルトの名無しさん2007/03/01(木) 09:27:56
>>809
そ、Graphics。
俺もおねむだったのではしょったけど、SourceCopyにしてFillRectangle
みたいな感じでいけない?
0813デフォルトの名無しさん2007/03/01(木) 11:57:13
>>811 普通に透明な色で描画してみなはれ。
>>812 いけますたありがと♪(´ー`* )))) ((((*´ー`)ありがと♪
0814デフォルトの名無しさん2007/03/01(木) 12:59:11
ベースクラスのコンストラクタで呼ばれるメソッドの挙動を変える何かいい方法ありませんか?
コンストラクタから呼ばれてしまうので内部メンバを変える暇がない。
オーバー可能なプロパティを読んでるものならそれをオーバーライドすればいいけどパラメータの組み合わせの数だけクラスを作らないといけない(´・ω・`)
なんかすごく醜いコードです・・・
0815デフォルトの名無しさん2007/03/01(木) 13:25:47
>>814
ベースクラスの挙動を制御しなきゃいけないような設計自体がまずいのでは。
0816デフォルトの名無しさん2007/03/01(木) 13:27:37
virtual
0817デフォルトの名無しさん2007/03/01(木) 14:40:18
>>815 Formみたいにベースクラスで勝手にウィンドウ作られてるのとかほかの人がくそな設計してることも多いと思われ。
0818デフォルトの名無しさん2007/03/01(木) 15:35:38
>>814
815の指摘通り設計がまずいと思う。
ベースクラスがきちんとデザインパターンに沿った設計をしていればそんなひどいことにならない。
0819デフォルトの名無しさん2007/03/01(木) 16:10:06
いやいやですからベースクラスの設計がうんこなのは承知の上で(自分じゃタッチできないし)それをコントロールする方法ないかということだったんですが・・・(´・ω・`)
0820デフォルトの名無しさん2007/03/01(木) 16:20:51
>自分じゃタッチできないし

それを先に書かないと、「設計しなおせ」の嵐になるのは当然
0821デフォルトの名無しさん2007/03/01(木) 16:23:26
>>819
メソッド宣言でvirtual使っていたら、挙動を変えれるが
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/csref/html/vclrfVirtualPG.asp

結局は、ベースクラスのメソッド宣言次第ということ。
0822デフォルトの名無しさん2007/03/01(木) 16:23:34
すまんですた(´・ω・`)
0823デフォルトの名無しさん2007/03/01(木) 16:24:32
ちなみにひとつでも仮想関数を使った場合にほかのメソッドをvirtualにしないりゆうってなんざんしょ。
0824デフォルトの名無しさん2007/03/01(木) 16:36:05
前も同じこと言ってる奴いなかったか
0825デフォルトの名無しさん2007/03/01(木) 16:44:57
とりあえず、デザインパターンも知らないやつに設計してもらいたくはないな
0826デフォルトの名無しさん2007/03/01(木) 16:58:26
デザインパターンとか持ち出す以前の問題ではある
ていうか、どうしてもその出来の悪いクラスを親にしないといかんの?
0827デフォルトの名無しさん2007/03/01(木) 17:04:52
>>814
まさかとは思うが>>379と同じ奴?
0828デフォルトの名無しさん2007/03/01(木) 17:28:52
>デザインパターンとか持ち出す以前の問題ではある
んだね

派生クラスで手に負えないってどういうケースなんだろ
コンストラクタって初期化するところだろ
派生クラスで上書きで初期化すれば通常済むだけだとおもうし、
場合によっては、基底クラスのコンストラクタ呼ばなければいいんじゃないと思ってしまったけど

複数の変数間でうまいこと整合性がとれないとかなのかな?
0829デフォルトの名無しさん2007/03/01(木) 18:57:30
規定クラスのコンストラクタは必ず呼ばれるだろ。
0830デフォルトの名無しさん2007/03/01(木) 21:59:07
α値 0で塗りつぶしても描画されないのでは???
50%ぐらいにしないと…
0831デフォルトの名無しさん2007/03/01(木) 22:07:27
透明度0だとでは
0832デフォルトの名無しさん2007/03/01(木) 22:19:57
>>830
というかお前はいまさらなにを
0833デフォルトの名無しさん2007/03/01(木) 22:26:09
アルファー値は不透明度なんだけどな。

ttp://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/cpguide/html/_gdiplus_drawing_opaque_and_semitransparent_lines_usecsharp.asp
0834デフォルトの名無しさん2007/03/02(金) 01:16:03
Reflectorの今度のアップデートで
ローカル変数の名前まで出るようになってない?!

と焦ったが、単にメソッドの仮引数から名前引っ張ってきてるだけだった
0835デフォルトの名無しさん2007/03/02(金) 01:34:31
チラシの裏にでも書いてろ
0836デフォルトの名無しさん2007/03/02(金) 01:39:34
いや、変数の意味をある程度推測して名前つけるようになってるよ。
0837デフォルトの名無しさん2007/03/02(金) 08:31:26
Add-Inが全滅したでよ!!!
0838デフォルトの名無しさん2007/03/02(金) 12:37:44
MSDNライブラリのRSACryptoServiceProviderの項を見ますと、次のように書かれています。

> Microsoft Enhanced Cryptographic Provider がインストールされている場合、
> RSACryptoServiceProvider は 384 ビットから 16384 ビットのキー長を 8 ビット単位でサポートします。
> Microsoft ベース暗号化プロバイダがインストールされている場合は、
> 384 ビットから 512 ビットのキー長を 8 ビット単位でサポートします。

これは要するに、Windows 2000以前のバージョンでは、RSAの鍵長は512bitまでだ、ってことなんでしょうか。
0839デフォルトの名無しさん2007/03/02(金) 13:44:17
>>838
そうじゃないの?
俺もそう受け取ってるんだけど

MSDNのどっかに、もっと直接的に書かれてなかったっけ?
08408392007/03/02(金) 14:00:31
たぶん、自分がそう思ったのは↓かな。 正確に理解出来てるわけではないので、判断はおまかせします
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/cpref/html/frlrfsystemsecuritycryptographyrsacryptoserviceproviderclassencrypttopic.asp
0841デフォルトの名無しさん2007/03/02(金) 23:14:39
お前らは、なぜC++/CLIを使わずに、C#を使うの?
0842デフォルトの名無しさん2007/03/02(金) 23:17:34
キモ過ぎる
C++でさえ変態的なのに、もはやC++ですらない
0843デフォルトの名無しさん2007/03/02(金) 23:23:29
キモいは言い過ぎだと思うけど、生理的に嫌。
0844デフォルトの名無しさん2007/03/02(金) 23:33:40
C#ってそんなにキモイの?
0845デフォルトの名無しさん2007/03/02(金) 23:34:22
というか*C++/CLIを使わずに*って決め付けられても。
適材適所としか。
0846デフォルトの名無しさん2007/03/02(金) 23:36:17
C#でできることって全部C++/CLIでできるじゃん。しかも簡単に。
なのに、なぜC#をわざわざ使うのかわからない。
0847デフォルトの名無しさん2007/03/02(金) 23:37:31
勝手にC++/CLIでも使ってろよ
0848デフォルトの名無しさん2007/03/02(金) 23:40:52
>>846
巣に帰れ
0849デフォルトの名無しさん2007/03/02(金) 23:49:12
>>846
・匿名メソッド
・イテレータ

IDEに広げればインテリセンス(さらにその他の支援機能)は劣るし、
「クラス」で機能分割しているからヘッダのシステムは糞めんどくさいだけだし
そもそもC++ってEffectiveC++とか「あんなレベル」の解説書が何冊も書ける
仕様なほど落とし穴だらけだし(EC++が糞本っていう意味じゃないぞ)、
まぁ、その、なんだ、C++は嫌い。もう。すごく。便利だけど。
C++/CLIなんてさらに複雑だし。つーか、あのデストラクタの実装超キモいよ。
0850デフォルトの名無しさん2007/03/02(金) 23:51:51
>>849
そういう論理的な理由が聞きたかった。ありがとう。
0851デフォルトの名無しさん2007/03/02(金) 23:57:59
.NET使うなら一番楽ができるのはC#なんだろうなあとは思うけど、
言語的にはけっこう窮屈な気がする。多重継承ありでmix-inとかやりたい。
0852デフォルトの名無しさん2007/03/03(土) 00:04:29
>>851
それは、partial class + Generatorで補えってことなんだと思う。
個人的にはこれはキモいのでいい手ないかなぁとも思うけど、
Extension Methodがあんな形で出てくるところを見ると、難しい
点でもあるのでしょう。

ヘジの統合屋としての才能は信用しているから余計に。
0853デフォルトの名無しさん2007/03/03(土) 00:10:15
dotcoeという.NETで書かれたPC管理ソフトがある。
難読化もされていない。
リモーティングも活用ですよ。
お前等もこれくらいノーガードを見習え。
0854デフォルトの名無しさん2007/03/03(土) 01:12:16
見習えって誰も難読化なんてしてませんが・・・
0855デフォルトの名無しさん2007/03/03(土) 01:14:19
なんて○○使わずに○○使うの?って質問の方がキモイ
世の中の車は全てヴィッツが正しいとでも言うのかよw
0856デフォルトの名無しさん2007/03/03(土) 01:35:28
>>855のてぃんこはポークヴィッツ
0857デフォルトの名無しさん2007/03/03(土) 01:37:28
>>855が一番キモイ
0858デフォルトの名無しさん2007/03/03(土) 06:12:54
おまえらなんでムキになってんの?
0859デフォルトの名無しさん2007/03/03(土) 09:47:03
男ならGT-R
0860デフォルトの名無しさん2007/03/03(土) 11:20:13
結論

1から始めるなら C# よりも C++/CLI の方がよい。
0861デフォルトの名無しさん2007/03/03(土) 11:21:29
そうだな。1から始めるような人がこのスレに来なくて済む
0862デフォルトの名無しさん2007/03/03(土) 11:22:31
そして路頭に迷うんだな
0863デフォルトの名無しさん2007/03/03(土) 11:34:55
C#不要論が大勢を占めてきたな
0864デフォルトの名無しさん2007/03/03(土) 12:05:23
ManagedからんだときはC++/CLIでできることもC#でできることもかわらんと?
0865デフォルトの名無しさん2007/03/03(土) 12:22:17
C#にしろC++に言語など所詮道具、使う人の技能次第だということがわからないとは。
0866デフォルトの名無しさん2007/03/03(土) 12:27:10
物事を始めるにあたり、先ずはじめに、どの道具を使うかを選ぶわけで、
道具としてC#よりC++/CLIの方が便利であるという結論が出た。
0867デフォルトの名無しさん2007/03/03(土) 12:35:31
>>865 そうだねー原子とかいじれればたいていのことできるもんねー。すごいねー。
08688652007/03/03(土) 12:50:20
C# WindowsOS上の開発(ASP.NET・スマートクライアント)
C++ UNIXおよびリソースの少ない組み込み開発
に使い分けられるだけだよ。
C++はライブラリ互換性に問題あるからWindowsアプリで使うには厳しいだけ
0869デフォルトの名無しさん2007/03/03(土) 14:11:58
漏れはWindows上なら、
1.仕事で作る物と使い捨てプログラムはC#が使えるなら使う。
2.個人使用目的、特に常用する物なんかはC++で古風に書く。

1は楽だから。
2は.NETでかいから。
0870デフォルトの名無しさん2007/03/03(土) 14:57:12
c++ のライブラリで ***a とかが出てくるだけでやる気が失せるんですけど。
0871デフォルトの名無しさん2007/03/03(土) 15:08:13
C++とC++/CLIはまったく別物だろうが…
0872デフォルトの名無しさん2007/03/03(土) 15:13:04
>>860-871
趣味グラマはチラシの裏に書いておけ
0873デフォルトの名無しさん2007/03/03(土) 15:27:37
C++/CLIはVBプログラマーをVB.NET開発に引き入れるために作られたのと同じように
C++プログラマーを.NET開発に引き入れるために作られたもの。
C++/CLIで実装したことはC#でも実装できる。
C#はJAVAと構文が近いからJAVAとまったく一緒と思い込んでる人が多いのしょうがないけど、
実際にはC++で必要と思える機能を書き直した言語だと理解していないだけ。
C++で実装できたことはほとんど実装できると見てよい。
0874デフォルトの名無しさん2007/03/03(土) 16:35:50
>>841
お前は、なぜC++0xを使わずに、C++/CLIを使うの?
0875デフォルトの名無しさん2007/03/03(土) 16:36:47
>>849
EffectiveC++がそうだからといって
EffectiveJavaまでそうだとはいわんよな
0876デフォルトの名無しさん2007/03/03(土) 17:32:41
>>874
C++0xはまだ出ていないから。

あと、C++0xにはGC無いんでしょ。
auto_ptrとかshared_ptrとかいちいち使い分けたくないし。
0877デフォルトの名無しさん2007/03/03(土) 18:27:56
>>849
Effective C++が書けて、Effective C#が書けない理由は何?
0878デフォルトの名無しさん2007/03/03(土) 18:52:56
これ全部 >>841 の自演だろ。
わざわざC#のスレに荒らしに来るなってw
0879デフォルトの名無しさん2007/03/03(土) 18:56:41
荒らしだとか言う人が一番の荒らしです。
0880デフォルトの名無しさん2007/03/03(土) 19:13:58
お前らくだらねぇから消えろ
0881デフォルトの名無しさん2007/03/03(土) 22:09:48
IDが出ないのも困るよね
0882デフォルトの名無しさん2007/03/04(日) 23:21:24
IDが出ないならfusianasanすればいいじゃない
0883デフォルトの名無しさん2007/03/04(日) 23:26:21
C++よりC#の方が開発、保守が楽になってるのに、C#に文句いってるC++プログラマーは変だな。
新言語覚えるのめんどくさいからいやだと一言ですませればいいのに。
0884デフォルトの名無しさん2007/03/05(月) 03:37:49
いい加減スレ違い
0885デフォルトの名無しさん2007/03/06(火) 04:40:24
>>838
亀レスですまないが、漏れのWin2K SP4環境では、LegalKeySizes[0].MaxSize は 16384 なんだよな。
環境によってどのCSPがインストールされているのか、ドキュメントはないもんかね。
0886デフォルトの名無しさん2007/03/06(火) 13:03:24
流れをぶった切ってスマソ

C#で上手に作られていると思われるソース公開している
アプリはなにかありますか?

今のところNunitとか知っているのですが、
綺麗かどうかは微妙と感じました。
0887デフォルトの名無しさん2007/03/06(火) 14:12:09
>>886
http://www.codeplex.com/
探せ
0888デフォルトの名無しさん2007/03/06(火) 16:16:20
画面の一部が透明なウィンドウを作りたいんですが
UpdateLayeredWindow以外でお勧めの方法はありますか?
ちなみに小さいウィンドウを透明表示させる場合にはUpdateLayeredWindowはよりパフォーマンスがよさそうなんですが、
大きいウィンドウの一部を更新したい場合は通常のダブルバッファーなどで更新したほうがパフォーマンスがよさそうなのですが。
ただこれはマシンのドライバなどにもよるかもしれませんが。
0889デフォルトの名無しさん2007/03/06(火) 20:06:02
>>887
�d�d
0890デフォルトの名無しさん2007/03/06(火) 20:15:05
>>887
http://www.codeproject.com/
もっと探せ
08918862007/03/06(火) 20:17:36
>>890
みんな優しいな。

�d�d�d�d。
0892デフォルトの名無しさん2007/03/07(水) 01:28:30
.netって上位互換はあるよな。
だけど、下位互換はまったくないのか?
具体的にはVS2005で.net 1.1のソフトウェアを作りたいんだけど、
2.0で加えられたクラスと機能さえ使わなければ1.1でも動く?
0893デフォルトの名無しさん2007/03/07(水) 01:39:42
.NET Framework のバージョン間のアセンブリ互換性は考えない方が良いよ
0894デフォルトの名無しさん2007/03/07(水) 09:50:23
>>892
ソースの互換性はあるとおもいます。ただプロジェクトかどこかに
バージョン番号が書いてあるのでそこを書き換えないと古いVSでは
開けません。コマンドラインからのビルドもできないかも。(未調)
ともかく、VS2005でソースを書いたあと、それぞれの.NET Frameworkで
ビルドすることになるとおもいます。
0895デフォルトの名無しさん2007/03/07(水) 09:54:56
>>892
上位/下位とも互換性はないよ。

CLR2.0はCLR1.1で書かれたアセンブリを無理やり動かそうとはするが、正しく動く保証はない。
08968922007/03/07(水) 11:02:03
>>893-895
まじすか。てっきり上位互換は完備してると思ったのに・・・。
それならソースだけ共通にして1.1と2.0でそれぞれコンパイルすることにします。
0897デフォルトの名無しさん2007/03/07(水) 12:39:31
関係ないけど、上位互換/下位互換って言葉の用法って混乱してるよな。

本当は上位バージョンのソフトで下位バージョンで作ったデータを読めるような場合に
下位互換って言うんだよね。
0898デフォルトの名無しさん2007/03/07(水) 14:41:16
根本的に干渉しないから
1.1を入れたら動く
下手に互換性とか言い出したらVBランタイムの二の舞だからね
0899デフォルトの名無しさん2007/03/07(水) 16:11:06
干渉しないと思いたいんだが今までのMSのことを思うと入れる気になれん('A`)
0900デフォルトの名無しさん2007/03/07(水) 16:17:50
.NETはこれまでのテクノロジに比べて、ライブラリのバージョン管理においては比較的良くできてるよ。
型がアセンブリのバージョンや署名キーで修飾されるから、VBのときのように('A`)ヴァーってなることはない。
0901デフォルトの名無しさん2007/03/07(水) 17:02:45
>>899
とりあえず干渉で明らかになってる問題はノータッチデブロイメントの件ぐらいかな。
ノータッチ用のCLRサーバー(IEEXEC)はSxS出来てるのだけれど、
IEからCLRサーバーを呼び出す部分が共通なので、1.1と2.0を両方入れると、
2.0の方に引っ張られてインターネットゾーンから証明なしの利用が事実上出来なくなってしまう。
マネージドの外のこととはいえ干渉は干渉だな。

2.0で旧バージョンのアセンブリを動かして問題が出たという報告は、
セキュリティがらみの件を除くと端末エミュレータPoderosaの旧バージョン(3.0)ぐらいだな。
極まれに応答なしになるそうだ。
0902デフォルトの名無しさん2007/03/08(木) 01:23:39
XmlSerializerってなんであんなに遅いの?
ちょっとした設定保存するのにBinaryFormatterの約10倍時間がかかるよ。
300ms : 30msくらい

でかいのだと差が少なくなるのかもしれないけど
0903デフォルトの名無しさん2007/03/08(木) 01:27:42
プリコンパイルしてる?
ちょっとはましになるけど。
0904デフォルトの名無しさん2007/03/08(木) 01:36:22
>>903
まじすか
試してみる。まずはぐぐってみるさ。プリコンパイルってなんだ……
0905デフォルトの名無しさん2007/03/08(木) 01:38:18
XmlSerializerは実行時にC#コードをコンパイルして動的アセンブリを作るんだよ。
0906デフォルトの名無しさん2007/03/08(木) 01:39:43
いいところでペニパン持ち出してくるお姉様くらいウザいな?
0907デフォルトの名無しさん2007/03/08(木) 09:12:28
sgen してもあんまりかわんない
0908デフォルトの名無しさん2007/03/08(木) 20:12:04
C#で今の時間のunixtimeを知りたいのですが、
どうすれば得られますか?
0909デフォルトの名無しさん2007/03/08(木) 20:21:42
static class DateTimeUtils
{
    private static readonly DateTime epoch
        = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
    static public long DateTimeToUnixTime(DateTime dt)
    {
        return (long)(dt - epoch).TotalSeconds;
    }
}
0910デフォルトの名無しさん2007/03/08(木) 21:13:30
どうも
0911デフォルトの名無しさん2007/03/09(金) 01:05:35
っていうか、明日上がったらお前ら売るのか?
売らねーんだろ?

じゃあここの株価が下がった方が、他所で儲けた金でここの株数増やせるから、
長期ホルダーとしては株価下がった方がいいじゃん



上がったら買い増しにくくなるからだめだよ
0912デフォルトの名無しさん2007/03/09(金) 01:17:41
誤。
0913デフォルトの名無しさん2007/03/09(金) 09:20:25
>>911
銘柄が気になるw
0914デフォルトの名無しさん2007/03/09(金) 10:52:12
MDAがらみのLoaderLockエラーというのがでるんですがこれは無視していいもんなんでしょうか・・・
ManagedDirectXがらみでよく出るみたいですが自分は使っていません。Win32API呼び出しはしています。
さくっとぐぐって見たけどメニューからDisableにする方法とかは出てたんですがほかに有用な情報を見つけられませんでした。
0915デフォルトの名無しさん2007/03/09(金) 11:47:40
>>911
何でか知らんがワロタ
0916デフォルトの名無しさん2007/03/09(金) 18:20:17
漢は株なんかちょこちょこ上がるの待ってないで
ワラントで一山当てよう
0917デフォルトの名無しさん2007/03/09(金) 20:05:03
>>923
SBI
0918デフォルトの名無しさん2007/03/09(金) 20:15:02
アンカーミスった
>>913
SBI タプの会社…
0919デフォルトの名無しさん2007/03/09(金) 22:34:31
FXで破産しようぜ
0920デフォルトの名無しさん2007/03/10(土) 12:51:54
前の「市況板」のスレはどこの板に引き継がれたの?
0921デフォルトの名無しさん2007/03/10(土) 16:57:10
金を現物渡しで買って押入れを満タンにしたい。
0922デフォルトの名無しさん2007/03/11(日) 16:25:50
ListViewのOwnerDrawを有効にすると、急激に遅くなるのってなんとかなりませんかね?
ViewはDetailでカラムは14個程度、行は1000程度
OwnerDrawプロパティをTrueにし、何も描画しないようにしてスクロールさせてみたんですが、遅いです。
仮想リストにしてもスクロールのもっさり感は直りませんでした。
0923デフォルトの名無しさん2007/03/11(日) 16:27:01
Formsの限界
0924デフォルトの名無しさん2007/03/11(日) 16:40:41
スクロールバーのコントロールあるんだし自分で作れ。
0925デフォルトの名無しさん2007/03/11(日) 16:59:01
Formsの限界だからあきらめろ。
いつまでもFormsに関わってると次世代Windowsアプリに乗り遅れる。
0926デフォルトの名無しさん2007/03/11(日) 17:40:03
何に関われば乗り遅れないんだ?
0927デフォルトの名無しさん2007/03/11(日) 17:51:26
WPFか?
0928デフォルトの名無しさん2007/03/11(日) 18:14:41
流行なんぞはコンサルやらオタやらが考えればいいこと。
技術屋は目的に応じて適当な道具を使えばいいんじゃ。
0929デフォルトの名無しさん2007/03/11(日) 18:22:38
いいんじゃ。
0930デフォルトの名無しさん2007/03/11(日) 18:48:29
>>928
コンサルって・・・全開で乗遅れだろ
0931デフォルトの名無しさん2007/03/11(日) 19:22:54
日本のコンサルって、ただの文系SEだよ。
0932デフォルトの名無しさん2007/03/11(日) 19:33:25
文系であって、SEですらない場合もあるけどな。
0933デフォルトの名無しさん2007/03/11(日) 20:08:24
だから流行はそういう連中にまかせておけばいいじゃん。
0934デフォルトの名無しさん2007/03/11(日) 20:41:22
「次世代」がいつも良いものとは限らない。
0935デフォルトの名無しさん2007/03/11(日) 21:04:09
Formsから失敗続きだと、.NETFrameworkのWindowsアプリは終わりだな。
いつまでもMFC使うことになるのは勘弁。
0936デフォルトの名無しさん2007/03/11(日) 21:13:39
しかし「次世代」が良いものであることが圧倒的に多い。
0937デフォルトの名無しさん2007/03/11(日) 22:14:15
Formsが何と比べて失敗だと言ってるの?
MFC,Swing,SWTとかと比べて普通に使いやすいし、開発効率もよいと思うんだけど?
(ちなみに自分の使用範囲は業務アプリ)
0938デフォルトの名無しさん2007/03/11(日) 22:33:00
>>937
失敗は言いすぎだったけど、GDIベースの描画では限界があるってことかな。
コントロールひとつ描画するたびにCPUリソース大量に使用する。
MFCのリプレースにするには進化しているところがそれほど見られない。
開発効率・描画速度・デザイン自由度すべてにおいてWPFが優れているのはすでに検証済み。
0939デフォルトの名無しさん2007/03/11(日) 22:36:32
WPFのせいでしばらく糞UIのフリーソフトが出続けるだろうな
0940デフォルトの名無しさん2007/03/11(日) 22:48:20
WPFは全てのコントロールがすべてイメージ描画でこれが大きな違い。
0941デフォルトの名無しさん2007/03/11(日) 22:53:49
>>940
その結果、具体的に何が違ってくるんだ?言ってみろよ。
0942デフォルトの名無しさん2007/03/11(日) 23:00:05
>>941
少しは考えろよ。
0943デフォルトの名無しさん2007/03/11(日) 23:04:37
柔軟になって
ゲームみたいなUIが作れる
0944デフォルトの名無しさん2007/03/11(日) 23:05:16
>>942
>>940がどの程度分って言ってるのか試してるんだ。
0945デフォルトの名無しさん2007/03/11(日) 23:06:46
てっとり早くいえばコントロールすべての描画をフォーム一つの描画で扱っている。
0946デフォルトの名無しさん2007/03/11(日) 23:13:59
>>943はウィジェットを全部自分で作ると言ってます。
0947デフォルトの名無しさん2007/03/11(日) 23:15:20
Formsのデメリットを全く語れていない件について
0948デフォルトの名無しさん2007/03/11(日) 23:16:50
あれこれうるさいのは自分じゃ何も作らんオタかコンサルだなw
0949デフォルトの名無しさん2007/03/11(日) 23:18:45
結論

GUIはFormsで十分
0950デフォルトの名無しさん2007/03/11(日) 23:21:32
>>947
つ >>938
>>948
普通にFormsもMFCもWPFも自分で作成していますが。
Formsは継承コントロール・カスタムコントロールも開発して業務で使用しておりますが。
0951デフォルトの名無しさん2007/03/11(日) 23:23:37
ずいぶん必死w
0952デフォルトの名無しさん2007/03/11(日) 23:26:40
>>951
では、スルーします。
0953デフォルトの名無しさん2007/03/11(日) 23:33:04
WPFは自分で動かしてみないとなかなかわからないな
Flashみたいで感動した
0954デフォルトの名無しさん2007/03/11(日) 23:38:24
WPFを使って効率のいい開発をしたいのですが、どうすればいいですか?
0955デフォルトの名無しさん2007/03/11(日) 23:51:06
自分はまだ触ったことがないけど、WPFって開発効率いいの?
デザイン自由度があがると難しくなるんじゃないかってイメージあるんだけど。
開発効率のよさではどの辺がキーポイントなんでしょうか?

チューニングしなくても描画スピードが速いならかなり魅力的なんだけどなぁ。
しかし、次世代って実際の業務じゃ、まだまだ使えなさげだし・・
0956デフォルトの名無しさん2007/03/11(日) 23:56:30
ランタイムがXP以降しか対応していないから。
0957デフォルトの名無しさん2007/03/11(日) 23:57:10
>>938のデタラメが明らかになったな。
0958デフォルトの名無しさん2007/03/12(月) 00:00:29
>>957
とりあえず、自分で検証してみたら?

http://www.codeproject.com/WPF/
0959デフォルトの名無しさん2007/03/12(月) 00:01:58
ギギギギギ・・・w
0960デフォルトの名無しさん2007/03/12(月) 00:04:39
どうみても現時点のWPFの開発効率は優れていません。
0961デフォルトの名無しさん2007/03/12(月) 00:09:05
codeprojectのリンクを張れば何かが解決するとでも思ってるのだろうか
ホントにアホだな
0962デフォルトの名無しさん2007/03/12(月) 00:13:30
スレ違い
0963デフォルトの名無しさん2007/03/12(月) 00:21:28
今やってるプロジェクトひと段落つけたらWPFいじるつもりだけど、いろいろ面白いことできそうだよね。
0964デフォルトの名無しさん2007/03/12(月) 00:23:00
>>955
XAML は GUI デザインと相性いいと思うけど。
アニメーションとか 3D オブジェクトとか、バインディングとか、
かなり簡単に書けるよ。
0965デフォルトの名無しさん2007/03/12(月) 00:23:46
最高の開発環境

   XAML PAD
0966デフォルトの名無しさん2007/03/12(月) 00:31:47
プログラマが検証すら拒んでるのはすでに終わってるな。
0967デフォルトの名無しさん2007/03/12(月) 00:34:34
ところでお前ら


  ス  レ  違  い
0968デフォルトの名無しさん2007/03/12(月) 02:04:22
14列*1000行なんてのがどうかと思う。
もうちょっと絞ったら?
0969デフォルトの名無しさん2007/03/12(月) 10:31:41
>>967
あー、自分は .NET 言語で C# しか使わないから、
イコールなつもりでいた。
よく考えたら、WPF の話題は↓に誘導すればいいのね。

【新GUI FW】WPF(XAML,AVALON,.NET3.0)【重い?】
ttp://pc11.2ch.net/test/read.cgi/tech/1162950198/
0970デフォルトの名無しさん2007/03/12(月) 16:33:13
現在.NET C#で開発しています。
cs側でSQL文を発行して取得したデータをaspx側で使用したいのですが、連携の仕方がわかりません。
具体的には、
----------------------------------------------------------------
*コンボボックス1,2,3使用
(1)SQL文実行(cs側)
(2)SQL文で取得したデータをjavascript(aspx側)で使用するために値引渡し
(3)コンボボックスにバインド(コンボボックス1のみ)
(4)コンボボックス1で選択した値により、コンボボックス2の内容をjavascriptで動的に変更
----------------------------------------------------------------
といったことがやりたいのです。
ちなみにコンボボックスの内容を変更する際にpostbackしたくないので、fristload時にコンボボックス1,2,3に表示する予定のデータを一度に全て取得したいと考えています。

コンボボックスの内容を動的に変更するにはデータが入った変数が必要だと考えているのですが、javascriptで宣言した変数にどうやってcs側からデータを格納すればいいのか、といったことがわかりません。

初歩的な質問で申し訳ないのですが、
ご助言お願いします。
0971デフォルトの名無しさん2007/03/12(月) 16:34:28
マルチやめれ
0972デフォルトの名無しさん2007/03/12(月) 19:55:17
>>971
死ね
0973デフォルトの名無しさん2007/03/12(月) 21:43:52
>>970
マルチポスト良くない。
0974デフォルトの名無しさん2007/03/12(月) 21:46:48
>>973
死ね
09759732007/03/12(月) 23:02:55
>>974
ごめんなさい・・・僕なりの精一杯の頑張りだったのに・・・

やっぱり死んだほうがいいのかな。

ごめんね・・。
0976デフォルトの名無しさん2007/03/12(月) 23:09:33
>>975
ツマランから他でやれ。
俺が本物のの973だ
0977デフォルトの名無しさん2007/03/12(月) 23:15:35
RectangleF rectとfloat marginが与えられて端からmarginの分内側に引かれる線でrectが9分割されるとします。
このときある点がrect内にあるとして9分割されるエリアのどこにあるかを調べるエレガントなコードを教えてください・・・
力技コードで醜いです・・・
0978デフォルトの名無しさん2007/03/12(月) 23:21:47
二次元である必要すらなくね?
0979デフォルトの名無しさん2007/03/12(月) 23:32:10
内部は2次元じゃなくてもかまいません。ただ本来の目的はrect上でpointがどこにあるかということなので・・・
0980デフォルトの名無しさん2007/03/12(月) 23:35:05
2Dベクトル構造体を定義して一通り演算子をオーバーロードしといたら綺麗かも
0981デフォルトの名無しさん2007/03/12(月) 23:35:07
>>977
線分のクリッピングの関連で昔からよくある処理だけど、エレガントな手法は見たことがない。
のでたぶん存在しないんだと思う。

9か所をどうコード化するかって話なら、後の処理の内容に合わせてアレコレする余地が
あるんだけど。
0982デフォルトの名無しさん2007/03/12(月) 23:35:20
すまん、まず977の日本語が理解できん。。。
0983デフォルトの名無しさん2007/03/12(月) 23:44:58
>>977
RectangleF rect; float margin; PointF p;
Point l = new Point(
    p.X < rect.Left + margin ? 0 : p.X < rect.Right - margin ? 1 : 2,
    p.Y < rect.Top + margin ? 0 : p.Y < rect.Bottom - margin ? 1 : 2
);

よく分からんが、こういうこと?
0984デフォルトの名無しさん2007/03/12(月) 23:48:01
ああ、977の言葉の意味がやっとわかった
酷い日本語だなw

っていうか、普遍的でもなんでもなく、かつ愚直にやったって数行のシンプルな
コードにしかならん処理をどうエレガントにやろうというのだ?
0985デフォルトの名無しさん2007/03/12(月) 23:49:02
そもそも、アウトプットとしてはどういう形式の値が欲しいんだろう
row, col?
0986デフォルトの名無しさん2007/03/13(火) 00:07:26
Windows.FormsでGUIを作っています
今フローティングツールバーを
(正式名称は分かりませんが、ドラッグするとウィンドウの外に出せるやつ)
ToolStripとToolStripContainerで作ろうとしているのですが、
ウィンドウの外に出てくれません。
ウィンドウ内でドラッグして移動させることはできるのですが。。。
どうやれば実現できるのでしょう。
0987デフォルトの名無しさん2007/03/13(火) 00:14:11
>>984 わからんのはお前だけだ。ひどいのは尾舞の日本語読解力。
0988デフォルトの名無しさん2007/03/13(火) 00:16:50
逆切れみっともないよ
0989デフォルトの名無しさん2007/03/13(火) 00:18:48
いや>>987の言うとおりだと思うぞw
09909222007/03/13(火) 01:00:58
>>923-925レスサンクスです。
ListViewでOwnerDrawしないで何とかすればよさそうです。

>>968 最大14カラムなのでレスポンスを確認しました。5カラム程度でも結構もっさりするので
OwnerDrawはいくないかも。
WPFは今度試してみます。
0991デフォルトの名無しさん2007/03/13(火) 12:56:05
>>984
井桁で分割される九つの領域のどこに点があるかを判定するのは
線分と矩形の当たり判定等で使われるわりと普遍的な処理だし、
漏れには>>977の日本語もごく当り前の分かりやすい表現と思える。
0992デフォルトの名無しさん2007/03/13(火) 13:15:04
ドロー系のソフトなんかでオブジェクトの掴みどころ判定に使うな。
漏れは力技でやってるけど・・・
0993デフォルトの名無しさん2007/03/13(火) 14:27:36
http://pc11.2ch.net/test/read.cgi/tech/1173763436/
次スレ
0994デフォルトの名無しさん2007/03/13(火) 19:21:44
まあ977、991的なセンスの人間が多いのは日本の言語教育の問題だと俺は思うけどね。
読み手にESP能力を期待してうるとしか思えない駄文のアホ質問をする奴が日本の掲示板には多すぎる。

そりゃ977の文面でも、類似の処理を実装したことがある人間なら、
その経験からの連想で「ピンとくる」だろうことは俺にも想像できるよ。

でもそれは977の文章が十分に可読的であることを意味しないだろ。
少なくとも同じ内容を人に伝えようとする場合、俺ならもっとマシな説明をするね。
0995デフォルトの名無しさん2007/03/13(火) 19:22:39
じゃあ、しろよ
0996デフォルトの名無しさん2007/03/13(火) 19:29:23
うめとこ
0997デフォルトの名無しさん2007/03/13(火) 19:33:59
.
0998デフォルトの名無しさん2007/03/13(火) 19:36:13
3
0999デフォルトの名無しさん2007/03/13(火) 19:36:28
>>944
類似の処理をしたことがない人にとって分かりやすい文章である必要は全くないだろ。
足し算についての質問を、足し算が出来ない人間に分かるように書く必要はない。
1000デフォルトの名無しさん2007/03/13(火) 19:36:44
*
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。