5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

ふらっとC#,C♯,C#(初心者用) Part63

1 :デフォルトの名無しさん:2010/09/21(火) 14:57:58
このスレッドは
「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。
ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からない場合など、勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。

なお、テンプレ2行目が読めない回答者は邪魔なので後述のC#相談室に移動して下さい。

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■前スレ
ふらっとC#,C♯,C#(初心者用) Part62
http://hibari.2ch.net/test/read.cgi/tech/1281236906/

■関連スレ
C#, C♯, C#相談室 Part62
http://hibari.2ch.net/test/read.cgi/tech/1284775031/
VB.NET質問スレ(Part35)
http://hibari.2ch.net/test/read.cgi/tech/1284423653/
くだすれC++/CLI(初心者用)part2
http://pc12.2ch.net/test/read.cgi/tech/1268613679/

■備考
コードの量が多い場合は下記サイトを使うなどしたほうがいいかも
http://ideone.com/
コードを貼り付けてRun codeのチェックをはずしてsubmitボタンを押すと
コードを鯖側にアップして専用のアドレスが発行されます。

直接貼る場合は下記サイトなどを利用してhtmlエンコードした方が
インデントも残って見やすいです
http://kawama.jp/php/encode_html.php

2 :デフォルトの名無しさん:2010/09/21(火) 15:24:34
「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です


ロクに回答もしない癖に態度だけデカイエセ回答者の出入り禁止
他人の人格を攻撃する荒らしの出入り禁止

3 :デフォルトの名無しさん:2010/09/21(火) 18:10:14
(-_-メ)

4 :デフォルトの名無しさん:2010/09/21(火) 18:12:43
(-_-メ)

5 :デフォルトの名無しさん:2010/09/21(火) 18:14:31
高スキルをお持ちの方で初心者を見るとイライラする方は下記のスレッドでご活躍ください

C++相談室 part84
http://hibari.2ch.net/test/read.cgi/tech/1284736187/

6 :デフォルトの名無しさん:2010/09/21(火) 18:20:19
(-_-メ)

7 :デフォルトの名無しさん:2010/09/21(火) 18:56:15
DelegateCommandでググるとサイトごとに微妙に違うコードが書いてあってどれ使えばいいのやら

8 :デフォルトの名無しさん:2010/09/21(火) 20:05:24
なにそれ

9 :デフォルトの名無しさん:2010/09/21(火) 21:00:33
GPLとか無視すりゃいいじゃん
なんか言ってきたら知るかバーカでおk

10 :デフォルトの名無しさん:2010/09/21(火) 21:02:11
RoutedCommand:visualツリー上の別の要素に処理を委ねられる
DelegateCommand:Viewの要素から、VMがもつModelに処理を委ねられる。MVVM用
こんな認識でええんかいな。解説してるサイト少なすぎて存在意義がわからんぞ

11 :デフォルトの名無しさん:2010/09/21(火) 21:04:18
>>9
解釈次第ってことは自分はこれで大丈夫だと解釈しています、って主張すりゃいいんだもんな。
グレーはなんでもホワイトだ。

12 :デフォルトの名無しさん:2010/09/21(火) 21:26:07
こんばんは

フォームの検索ボタンを押すとAccessで作ったデータベースのから一番多いものをtextBoxに表示させるプログラムを作りたいですのがわからないので教えてください。

例 検索ボタンを押すと管理のテーブルの商品フィールドの中から一番多い商品名をtextBoxに表示させる(大根が一番多い場合textBoxに[大根]と表示させる)

質問等あればよろしくお願いします。  


13 :デフォルトの名無しさん:2010/09/21(火) 21:29:11
そういうSQL書いて投げればいい。

14 :デフォルトの名無しさん:2010/09/21(火) 21:30:24
まず入門書一通り読んでから来い


15 :デフォルトの名無しさん:2010/09/21(火) 21:37:34
> 質問等あればよろしくお願いします。  
お前の質問がねぇよww

16 :デフォルトの名無しさん:2010/09/21(火) 21:42:24
>>12
前半の形容詞節までは分かったが主格と目的格が無くてさっぱり質問が分からないですぅ
例の内容からすると、検索ボタンの押し方か、管理テーブルの商品フィールドの中から一番多い商品名を得る方法か、
textBoxに商品名を表示させる方法か、[大根]と表示させる方法のいずれかだとは思いますが、

とりあえずボタンがクリックされたときにSQLでgroupしてcountしてtextBox.Text=〜すればいいのではないでしょうか

DBMSとのお話の仕方
http://msdn.microsoft.com/ja-jp/library/ms228366(VS.80).aspx

17 :デフォルトの名無しさん:2010/09/21(火) 21:45:49
またおまえか

18 :デフォルトの名無しさん:2010/09/21(火) 21:46:24
またおまえか

19 :デフォルトの名無しさん:2010/09/21(火) 21:49:06
童貞臭いなと思ってたらまたおまえらかよ・・・

20 :デフォルトの名無しさん:2010/09/21(火) 21:56:28
またおまえか

21 :デフォルトの名無しさん:2010/09/21(火) 21:58:58
>>10
後者は正しくは ICommand 直接実装だな。
DelegateCommand は ICommand の実装の仕方の1パターン。

22 :デフォルトの名無しさん:2010/09/21(火) 22:04:08
>>12
mixiとのマルチだな。
http://mixi.jp/show_friend.pl?id=18772746

23 :デフォルトの名無しさん:2010/09/21(火) 22:10:51
これはひどい

24 :デフォルトの名無しさん:2010/09/21(火) 22:17:43
なんていうか…なんだろうな

25 :デフォルトの名無しさん:2010/09/21(火) 22:19:00
ひどいな

26 :デフォルトの名無しさん:2010/09/21(火) 22:22:54
とりあえず単芝はvipにいこか

27 :デフォルトの名無しさん:2010/09/21(火) 22:34:04
>>16
お前この前ヘルプ見ろ連呼してた奴

28 :デフォルトの名無しさん:2010/09/21(火) 22:35:44
それは私なので違います

29 :デフォルトの名無しさん:2010/09/21(火) 22:40:33
>>21
RoutedCommandもICommand実装の1パターンでしょ。
何か特殊な実装になってるの?

30 :デフォルトの名無しさん:2010/09/21(火) 22:42:20
>>22
どこに書いてあるのか分からない

31 :デフォルトの名無しさん:2010/09/21(火) 22:45:57
ミクシィにC#のコミュがあってその中の質問スレにあった

32 :デフォルトの名無しさん:2010/09/21(火) 22:47:33
http://mixi.jp/view_bbs.pl?id=49495099&comment_count=129&comm_id=24497
ここ

33 :デフォルトの名無しさん:2010/09/21(火) 22:47:39
mixiで投稿された質問をこっちにコピペするバカがいたってことか

34 :デフォルトの名無しさん:2010/09/21(火) 22:58:26
>>29
システムが用意してる

ちなみに開発者が勝手に用意するICommandの独自実装にはRelayCommandってのも紹介されてる

35 :デフォルトの名無しさん:2010/09/21(火) 22:59:02
教えてください。

System.Security.Cryptography.RSACryptoServiceProvider を使うと、
RSA の公開/秘密鍵による暗号/復号を行えます。

このとき、使用する鍵は ToXmlString( true / false ) で取得できますが、
どちらかの鍵を任意に指定することは出来ないでしょうか?
つまり、公開鍵を人間に分かりやすいただの文字列、たとえば "abcdefg" などにして、
対応する秘密鍵を生成させる方法はないものかと。

36 :デフォルトの名無しさん:2010/09/21(火) 23:04:48
それができるなら凄く危ない気がする

37 :デフォルトの名無しさん:2010/09/21(火) 23:15:46
なんか公開鍵暗号ってものをわかってない気がする。

38 :デフォルトの名無しさん:2010/09/21(火) 23:23:07
なんかキーストアとかねーの?

39 :デフォルトの名無しさん:2010/09/21(火) 23:24:06
基本的に手入力しないでしょう
鍵何bitにするのか知らないけど

40 :デフォルトの名無しさん:2010/09/21(火) 23:26:43
RSACryptoServiceProviderは最低でも384ビットだったはず
base64で書かせると64文字か

41 :デフォルトの名無しさん:2010/09/21(火) 23:42:04
公開鍵は公開する物なのに
その公開する物から秘密鍵が作れちゃどうにもならんだろ
秘密鍵が全く秘密じゃなくなる

42 :デフォルトの名無しさん:2010/09/21(火) 23:59:52
>>34
なんか腑に落ちないんだけどDelegateCommandとかわざわざ
ICommand実装しなくてもデリゲートを単独で使えばいいんじゃないのって思っちゃうけど、
CanExecuteを利用した要素の有効無効切り替えを使いたいのかな。

43 :デフォルトの名無しさん:2010/09/22(水) 01:24:19
画像をドラッグアンドドロップして表示させるプログラムを作っているのですが、ドラッグアンドドロップできません。
普通ドラッグするとカーソルの横に+が表示されますが、作成したフォーム上ではそれが表示されないです。
どこが間違っているのでしょうか?フォームのプロパティでもAllowDropはtrueにしています。
環境はXPでVisual C# 2010です。


using System;
 〜略〜
using System.Windows.Forms;

namespace WindowsFormsApplication1{
public partial class Form1 : Form{
public Form1(){
InitializeComponent();
}
private void Form1_Load(object sender,EventArgs e){
panel1.AllowDrop=true;
}
private void panel1_DragEnter(object sender,DragEventArgs e){
if(e.Data.GetDataPresent(DataFormats.FileDrop))e.Effect=DragDropEffects.Copy;
else e.Effect=DragDropEffects.None;
}
private void panel1_DragDrop(object sender,DragEventArgs e){
string[] fileName=(string[])e.Data.GetData(DataFormats.FileDrop,false);
pictureBox1.Image=Image.FromFile(fileName[0]);
}
}
}


44 :デフォルトの名無しさん:2010/09/22(水) 01:30:07
> else e.Effect=DragDropEffects.None;

45 :デフォルトの名無しさん:2010/09/22(水) 01:32:41
超エスパーすると、
picturebox が panel の上に乗っかっていて
drag のイベントが picturebox に奪われている。

46 :デフォルトの名無しさん:2010/09/22(水) 01:45:45
>>44
すみません、自分にはそれが間違いなのかどうか判断できません。
どう書き直したら良いのでしょうか?

>>45
pictureboxとpanelは下のようになっていまして、重なってないです。
□□←panel

picturebox

47 :デフォルトの名無しさん:2010/09/22(水) 01:48:49
イベントハンドラに登録し忘れ?

48 :デフォルトの名無しさん:2010/09/22(水) 01:50:05
むしろどっからドロップしてこようとしてるの?

49 :デフォルトの名無しさん:2010/09/22(水) 01:56:33
>>43
パネルにドロップしたいの?フォームにドロップしたいの?
フォームのDragEnterイベント書かないとフォーム上ではカーソル変わんないよ

50 :デフォルトの名無しさん:2010/09/22(水) 02:04:55
>>47
よくわからないのでネットで調べてみます。

>>48
デスクトップに置いてあるjpegファイルです。

>>49
パネルにです。
あるサイトのプログラム落として調べたところpanelのイベントのみでうまく動いていたのですが・・・、
フォームのDragEnter書いて試してみます。

51 :デフォルトの名無しさん:2010/09/22(水) 02:23:47
Form1.Designer.cs の InitializeComponent に以下の記述があるか
なってるか確認して。なければ動かない。

this.panel1.AllowDrop = true;
this.panel1.DragEnter += new System.Windows.Forms.DragEventHandler(this.panel1_DragEnter);

panel1_DragEnter は質問元の関数をコピペした。
すくなくともこれだけでカーソルが変わるのだけは確認。


52 :デフォルトの名無しさん:2010/09/22(水) 02:36:31
>>51
this.panel1.DragEnter += new System.Windows.Forms.DragEventHandler(this.panel1_DragEnter);
こっちの方はありませんでした。
追加したところカーソルが変わることを確認いたしました。一応、画像の表示はなされませんでした。

53 :デフォルトの名無しさん:2010/09/22(水) 02:40:28
this.panel1.DragDrop += new System.Windows.Forms.DragEventHandler(this.panel1_DragDrop);
理由はよくわかりませんが、上記も追加したら画像が表示されるようになりました。
多くの方々ありがとうです。

54 :デフォルトの名無しさん:2010/09/22(水) 02:49:11
>>52>>53
>理由はよくわかりませんが
覚えるチャンスだろうw

DragEnterとDragDropでイベントが違うし>>43のコードにイベントを処理するコードも書いてあるじゃん

55 :デフォルトの名無しさん:2010/09/22(水) 02:51:46
そうやって覚えていかれると
その、なんだ、困る

56 :デフォルトの名無しさん:2010/09/22(水) 03:07:22
いわゆるポトペタの弊害

57 :デフォルトの名無しさん:2010/09/22(水) 03:10:49
たぶん、もう見てないぜ。

宿題とかもなにも理解せずに
コピペですませちゃうんだろうなぁ。

58 :デフォルトの名無しさん:2010/09/22(水) 03:13:02
>>56
いや、これはポトペタすらしてないだろ
web からソースをコピペしただけ。

ポトペタしてたら、イベントハンドラが登録されてない
なんてことはあまりおきない。

59 :デフォルトの名無しさん:2010/09/22(水) 03:14:31
>>58
いやいやw
イベントハンドラは抜け落ちるよ
デザイナーの挙動を考えると

60 :53:2010/09/22(水) 03:15:49
まだ見てますよー。
調べればすぐわかることだったら失礼になるかもと、とりあえずグーグル先生に尋ねてました。

61 :デフォルトの名無しさん:2010/09/22(水) 03:24:07
まあ初心者だったら引っかかるかもな
普通はハンドラ関連付けるコードがわかりやすい場所にないし
その分VB.NETは親切設計か

62 :デフォルトの名無しさん:2010/09/22(水) 03:27:14
>>61
VB.netはやったことないのでわからんがVC#の場合
イベントハンドラの登録部分はデザイナー使うとProgram.csにかかれちゃうし
ネットに転がってるサンプルの大半はProgram.csを貼らないしね

63 :デフォルトの名無しさん:2010/09/22(水) 03:32:50
デザイナがイベントハンドラ書くのは〜.designer.csな
とりあえず>>43のために訂正

64 :デフォルトの名無しさん:2010/09/22(水) 03:33:34
VB.NETはイベントハンドラになるメソッドに
Sub Button1_Click(...) Handles Button1.Click
End Sub
みたいに書くのが基本

65 :デフォルトの名無しさん:2010/09/22(水) 03:33:57
今日仕事して休みとは言え
そろそろ寝た方がいいぞ貴様ら

66 :デフォルトの名無しさん:2010/09/22(水) 03:39:17
>>63
ああw
そうだったミスったw
Program.csはFormのインスタンス作ってるだけか

67 :デフォルトの名無しさん:2010/09/22(水) 08:26:56
>>42
うん、そう。
CanExecute を使いたいってのが最大の動機だと思う。


68 :デフォルトの名無しさん:2010/09/22(水) 09:40:24
C#の勉強を始めたばかりで右も左もわからない状態ですが疑問があります。

自分でクラスを作ってFormと処理クラスを分けているのですが、Formの継承
クラス以外でSystem.Windows.Formsのメソッドを使うのは一般的なのでしょ
うか?
処理クラスの中でエラーが起きた場合に、MessageBox.Showを利用してエラー
表示を行っております。

また、開発中にデバッグ情報を出力したいと思うのですが、MessageBox.Show
で出力していると、OKを押すまで処理がとまるのですが、ほかにデバッグ情報
を出力するのに一般的な方法はありませんか?


69 :デフォルトの名無しさん:2010/09/22(水) 09:48:04
一般的かどうかは知らないけど俺は>>68みたく別のForm継承外クラスにまとめて書いてるな
ログとか残す時に簡単だし


70 :デフォルトの名無しさん:2010/09/22(水) 10:03:34
>>68
別にテストのことを考えないなら処理側で MessageBox.Show でもいいと思うけど、
テストのしやすさを考えると、その部分、インターフェイスか何かにしておいて外から挿せるようにした方がいい。

デバッグ情報は、Debug.Trace とかで Visual Studio のトレースウィンドウ辺りに情報出せたはず。

あるいは、一時的に値見たいだけなんだったら、ブレークポイント仕掛けて止めてみればいいし。

71 :デフォルトの名無しさん:2010/09/22(水) 10:27:07
C#で作られてるサイトなんですけどこういうの作るのってかなり技術いりますか?
ttp://www.tonamet.com

72 :デフォルトの名無しさん:2010/09/22(水) 10:31:44
>>71
あなたのレベル次第

73 :デフォルトの名無しさん:2010/09/22(水) 10:33:27
いうほど難しいことしてないような。

74 :デフォルトの名無しさん:2010/09/22(水) 10:35:32
ASP.netは

75 :デフォルトの名無しさん:2010/09/22(水) 10:36:03
かなりの技術は要らないと思う

76 :デフォルトの名無しさん:2010/09/22(水) 11:26:08
ニコ生でこれのプログラミング放送してたやん

77 :デフォルトの名無しさん:2010/09/22(水) 11:28:37
見た目の話ならスタイルシート外せば結構しょぼいことが分かる

78 :デフォルトの名無しさん:2010/09/22(水) 12:08:49
wpf すごいのな。

以前、挫折してたことが簡単に出来てびっくり。

79 :デフォルトの名無しさん:2010/09/22(水) 12:11:36
お邪魔します。質問をさせて頂きます。

既に存在する『aaa.txt』を開いて
その内容を一行ずつ読み込んで
『bbb』から始まる行を見つけて
その行の内容が『bbb:ccc:ddd』(最後に\r\n)の時
『ccc』部分を『eee』に上書きしたいと思っています。

この時、『ccc』の直前にファイルポインタを移動すれば
書き換えられると考えているのですが、

『bbb:ccc:ddd』の行を読み込み終えた時の
ファイルポインタの位置を調べる方法を教えて下さい。

また、この方法で位置を調べた時に返って来るのは『ddd』の
直後の位置だと考えているのですが
それが間違っていたら訂正をお願い致します。


80 :デフォルトの名無しさん:2010/09/22(水) 12:16:59
long pos = stream.Position;

81 :デフォルトの名無しさん:2010/09/22(水) 12:41:42
>>79
string[] array = System.IO.File.ReadAllLines(aaa.txt);
foreach(string s in array){
if (s.StartWith("bbb"){
if(s == "bbb:ccc:ddd"){
s.Replace("ccc", "eee");
}
}
}

てかStartWith要らないような

82 :デフォルトの名無しさん:2010/09/22(水) 12:42:42
>>71
これで金儲けを狙ってて営業するみたいな事を言ってたけど成功するのかな

83 :デフォルトの名無しさん:2010/09/22(水) 12:57:21
>>82 そういう技術と関係ない政治的なことはこのスレではどうでもよいから。

84 :デフォルトの名無しさん:2010/09/22(水) 13:00:47
>>82
ヲチ板でいいんじゃね

>>83
鼻息荒いぞ、少しおちつけよ

85 :デフォルトの名無しさん:2010/09/22(水) 13:04:48
>>82
なら銀光でこれより使い勝手も見栄えも上の作るわ

86 :デフォルトの名無しさん:2010/09/22(水) 13:30:19
>>85
素敵!抱いて!

87 :デフォルトの名無しさん:2010/09/22(水) 16:53:42
2.0で作ったプログラムをVS2010で開くときにダイアログに従って変換したんです。
で、VS2010で修正して、Windows7で実行したらコントロールの位置がずれるんです。
表示されたフォームのサイズもコントロールのロケーションもコードと違っています。
ためしに同じようなレイアウトをVS2010で作ったら、こっちは普通に表示します。(当たり前か)
何か原因に思い当たる事って有ります?

88 :デフォルトの名無しさん:2010/09/22(水) 17:16:03
あいまいな質問来たああああああああ

89 :デフォルトの名無しさん:2010/09/22(水) 17:24:23
うーん

>>63の書いてるところにイベントハンドラとかコントロールのデフォルト値じゃない
項目についてかかれてたりするのでそれを見比べてみれば?

90 :デフォルトの名無しさん:2010/09/22(水) 17:25:02
>変換したんです
これせずに実行したら普通に動くんだとしたら・・・

91 :デフォルトの名無しさん:2010/09/22(水) 17:28:27
あいなまに質問 にみえた

92 :68:2010/09/22(水) 18:13:48
あまり一般的な方法というのはなさそうですね。

>>69, 70
ありがとうございます。
皆さん各々でいろいろ工夫されてるんですね。
Debug.traceはじめて知りました。

使ってみます。

93 :デフォルトの名無しさん:2010/09/22(水) 18:39:00
>>87です。
Windows7のPCにVS2010入れてデバッグしてみました。
結果、何故かForm1.Designer.csのFormにコントロールの追加をし終わった後の
this.ResumeLayout(false);
ここでいきなりLocationが変更されてました。
その行をコメントアウトすればLocationは変更されず、デザイナで配置した通りのレイアウトで起動する。
何故?


94 :79:2010/09/22(水) 18:45:59
お教え下さりありがとうございます。解決しました。

>>80
Positionをキーワードに調べて何とか形にしました。助かりました。

>>81
Replace部は別の方法を取らせて頂きましたが、
『ccc』部分がcatだったりeggだったりと
文字数以外は決まっていないファイルを扱う予定だったので
StartsWithを使わせて頂きました。
尋ねる際に説明が不足していたのかもしれません、失礼致しました。


95 :デフォルトの名無しさん:2010/09/22(水) 19:45:12
this.SuspendLayout();
こっちをコメントアウトしてもレイアウトが崩れなかった
何故?

96 :デフォルトの名無しさん:2010/09/22(水) 19:49:23
Real PlayerまたはReal AlternativeががインストールされたPCでC#からReal Mediaの動画を流したいのですが無理ですか?

97 :デフォルトの名無しさん:2010/09/22(水) 19:51:52
ActiveXコントロール使えばできるだろ
今時Real Mediaなんて時代遅れなものを使う必要があるのかは疑問だけど

98 :デフォルトの名無しさん:2010/09/22(水) 19:56:14
C#はWMVしか再生出来ないから無理
CかC++で作るしかない

99 :デフォルトの名無しさん:2010/09/22(水) 19:57:41
>>87=95 ggr

100 :デフォルトの名無しさん:2010/09/22(水) 19:58:59
>>99
答えられないのならスルーしたらいいよ

101 :デフォルトの名無しさん:2010/09/22(水) 20:05:24
>>98
WMV再生する場合でもActiveXをホストすることになる
WPFなら一応MediaElementがあるけど実体はAXのWMP
Real Playerでも同じこと

102 :デフォルトの名無しさん:2010/09/22(水) 20:10:16
rmって主流じゃないの!?
えろ動画はrmだよ!?

103 :デフォルトの名無しさん:2010/09/22(水) 20:24:05
>>100
スルーするー。

104 :デフォルトの名無しさん:2010/09/22(水) 20:29:23
int n=1;


105 :デフォルトの名無しさん:2010/09/22(水) 21:21:08
質問です。
Datetime dt;と宣言した変数に
データベースから2010-09-22 0:00:00を取得して代入したとします。
このdtはプログラムを実行しているPCの日付設定のタイムゾーンの影響を受けますか?


106 :デフォルトの名無しさん:2010/09/22(水) 21:34:36
好きなようにしたらいい

107 :デフォルトの名無しさん:2010/09/22(水) 21:37:38
いつタイムゾーンが関わる余地があったのか本気で分からない

108 :デフォルトの名無しさん:2010/09/22(水) 21:37:45
分からないのならスルーしたらいいよ

109 :105:2010/09/22(水) 21:58:16
C/SアプリでS側でDBでSELECTしてC側でhttpで取得して
C側でDateTime dtに入れてる。
CはS側のタイムゾーンと一致してるとは限らない。
けどC側でdt.ToString()したときにS側のタイムゾーンで表示したい。

C側のタイムゾーンの影響を受けるならなにかしらしないといけない。
受けないなら無問題。

110 :デフォルトの名無しさん:2010/09/22(水) 22:02:11
受けるわけねえじゃん
頭悪いんじゃないの?

111 :デフォルトの名無しさん:2010/09/22(水) 22:11:31
      ※注意※


  ここは初心者用スレです


      ※注意※

112 :デフォルトの名無しさん:2010/09/22(水) 22:16:09
仮想環境用意して自分でやってみるのが一番納得出来ると思うよ

113 :デフォルトの名無しさん:2010/09/22(水) 22:18:12
HTTPで取って来てるってことは自分でParseか何か使って変換してるんだろうか。

114 :デフォルトの名無しさん:2010/09/22(水) 22:18:34
asia/tokyoがタイムゾーンから消えて中国かどっかになるみたいな事をどこかで聞いたんですけどまじですか?

115 :デフォルトの名無しさん:2010/09/22(水) 22:20:48
Visual Studio 2008のC#Webアプリです。
処理に時間がかかるので、マウスカーソルを砂時計に
しようと思い調べました。
System.Windows.Forms.Cursor.Current = Cursors.WaitCursor;
とやってもマウスカーソルは変わらず、
System.Windows.Forms.Application.UseWaitCursor = true;
としてもダメでした。
デバッグでブレークポイントを入れてみましたが、
カーソルが変わる気配すらありませんでした。
なにか方法があれば教えてください。

116 :デフォルトの名無しさん:2010/09/22(水) 22:24:17
America/Tokyoかもしれんよ

117 :デフォルトの名無しさん:2010/09/22(水) 22:24:22
>>114
中国とはタイムゾーンが異なるなあ。

118 :デフォルトの名無しさん:2010/09/22(水) 22:29:01
WebアプリでForms…

119 :デフォルトの名無しさん:2010/09/22(水) 23:00:00
>>115
this.Cursor = System.Windows.Forms.Cursors.WaitCursor;

120 :デフォルトの名無しさん:2010/09/22(水) 23:20:44
>>115
どうやってそれがうまくいくと思えるのか理屈が知りたい。


121 :デフォルトの名無しさん:2010/09/22(水) 23:26:31
理屈じゃねえんだ

122 :デフォルトの名無しさん:2010/09/22(水) 23:30:27
>>121
理屈じゃないプログラミング…ゴクリ…

123 :デフォルトの名無しさん:2010/09/22(水) 23:32:41
念力デバッグというのもありますので。

124 :105:2010/09/22(水) 23:34:40
取得したXMLの日付がタイムゾーン持っててもろに影響受けてました。

>>110が頭悪いのは分かった。

125 :デフォルトの名無しさん:2010/09/22(水) 23:56:04
で?

126 :デフォルトの名無しさん:2010/09/23(木) 00:19:19
腹減ったにゃ

127 :デフォルトの名無しさん:2010/09/23(木) 00:48:13
俺も

128 :デフォルトの名無しさん:2010/09/23(木) 00:59:18
カップラーメン用3分タイマー作ろうぜ

129 :デフォルトの名無しさん:2010/09/23(木) 01:07:31
そのためにPCに火いれるよりも
180数えたほうが楽。

130 :デフォルトの名無しさん:2010/09/23(木) 01:09:59
物騒ですね

131 :デフォルトの名無しさん:2010/09/23(木) 01:26:58
物理層ですね

132 :デフォルトの名無しさん:2010/09/23(木) 01:34:51
>>102
今はwmv/flv/mp4が3強じゃないか

133 :デフォルトの名無しさん:2010/09/23(木) 01:40:19
お湯を入れる直前から2分がちょうど食べごろ

134 :68:2010/09/23(木) 06:55:08
>>70
すみません。
Sys.Debug.Traceは.NET4からの機能なのですね。
.NET 3.5を利用しているのですが、にたようなことはできないでしょうか?

135 :デフォルトの名無しさん:2010/09/23(木) 07:04:36
パネルを2枚用意していて、そのパネルの上にボタンを配置しているのですが
パネルをVisible=Trueにしても、ボタンをVisible=Trueにしてもボタンが表示されません


どのような原因が考えられますか?

136 :135:2010/09/23(木) 07:13:25
すみません。パネルについて勘違いをしていたようです。
パネルが2枚重なっていると、上のパネルは下のパネル状に配置されたコントロールになるのですね・・。
すみません。

パネルを2枚独立させることってできますか?
やりたいことは、2枚のパネルを用意しておき条件によってその2枚のパネルのどちらを表示させるかを
決めたいです.

137 :デフォルトの名無しさん:2010/09/23(木) 07:18:58
>>136
もっとうまいやり方があるかもしれないが俺の知ってる範囲では

1)動的にコントロールを追加する方法
2)いじらない方のパネルの横と縦を一時的に小さくする
  (もしくは表示開始位置を極端な座標を与えて一時的にエリア外に出す)

たぶん親コントロールのクライアントエリア内でパネルをFillで表示して
切り替えしてる感じなんだろうけど・・・



138 :デフォルトの名無しさん:2010/09/23(木) 07:43:50
>>136
ドキュメントアウトラインから親子関係を修正

139 :デフォルトの名無しさん:2010/09/23(木) 07:53:00
>>134
出力ウインドウに吐き出すときはSystem.Diagnostics.Debug.Print 使ってる
System.Diagnostics.Traceはまだ使ったことないから違いがわからん
Debug.Traceは多分勘違い


140 :デフォルトの名無しさん:2010/09/23(木) 10:05:08
C#でトランスレータみたいなものを作りたいのですが、
簡単なサンプルみたいなものはありませんか?

141 :デフォルトの名無しさん:2010/09/23(木) 10:09:12
トランスレータって何?

142 :デフォルトの名無しさん:2010/09/23(木) 10:21:24
翻訳ソフトか一昔前のC++からCのソースに変換するような奴か

143 :デフォルトの名無しさん:2010/09/23(木) 10:37:35
つまりこうか
public string translator(string raw) {
  if (raw == "こんにちは世界!")
    return "Hello world!";
  else
    return null;
}


144 :デフォルトの名無しさん:2010/09/23(木) 10:37:36
C#のソースコードを訳すよりCLRを解釈して訳す方が簡単かもねw

145 :デフォルトの名無しさん:2010/09/23(木) 10:39:38
C# をプリプロセスなりなんなりで拡張するのは .NET 5 待った方がいいかも。

146 :デフォルトの名無しさん:2010/09/23(木) 10:40:28
自分で考えて作るのは最強に難しい部類だな
方法が確立されてて専門書がいくらでもあるからそういうの読むのが苦でなければ簡単なんだが
専門書読もうと思ったらアカデミックな基礎知識が少しは必要なので
コンパイラ作成の本とか眺めてみて無理だと思ったら諦めた方がいいよ

147 :デフォルトの名無しさん:2010/09/23(木) 10:57:23
コンパイラ作成の知識あっても、C# の文法全部対応するの結構しんどいけどね。
「亜種をあんまり作られたくない」って理由で、C# は文法定義とかをあんまり積極的に公開してなかった気が。
まあ、仕様書読めばある程度書かれてるけども。


148 :デフォルトの名無しさん:2010/09/23(木) 10:59:33
>>147
中間コードを解析するのが一番だけど中間コードの仕様って公開されてるのかな?

149 :デフォルトの名無しさん:2010/09/23(木) 10:59:38
また質問者を置き去りにして雑談大会か・・・。

150 :デフォルトの名無しさん:2010/09/23(木) 11:03:36
>>147
MSのC#の仕様書はかなり細かいところまで規定されているだろ。

151 :デフォルトの名無しさん:2010/09/23(木) 11:06:57
>>149
いやある程度は・・・
つまり見たこと無いけどxxを解析すればなんとかなんじゃね?
の延長でしょw

152 :デフォルトの名無しさん:2010/09/23(木) 11:08:05
トランスレータの定義も明確じゃないのに?

153 :デフォルトの名無しさん:2010/09/23(木) 11:08:50
>>152
話の中身と想定してるものが違えば割り込んで
追加説明すればいいんじゃないの?


154 :デフォルトの名無しさん:2010/09/23(木) 11:09:36
物すごい勢いで伸びてると思ったら
単芝だった

155 :デフォルトの名無しさん:2010/09/23(木) 11:10:43
>>153
いやその切り替えしはおかしい

156 :140:2010/09/23(木) 11:12:04
すみません。トランスレータと言ったのがよくなかったみたいですね。

私が作りたいのはもっと単純で、stringオブジェクトの中より記号を拾い
その記号から文字列を生成するだけのものです。

157 :デフォルトの名無しさん:2010/09/23(木) 11:13:50
>>155
いやあってるよ


158 :デフォルトの名無しさん:2010/09/23(木) 11:14:17
http://www.google.com/search?hl=ja&lr=&ie=UTF-8&oe=UTF-8&num=50&q=c%23+regex+replace

159 :デフォルトの名無しさん:2010/09/23(木) 11:22:42
記号から文字列ってのがよくわからん。
たとえば、元の文字列がどんなので、結果としてどんな文字列を生成するつもりなん?

160 :デフォルトの名無しさん:2010/09/23(木) 11:25:51
>>159
ゲームのメッセージの中でたまにバグって[名前]とか残ってるああいうのかな?




161 :デフォルトの名無しさん:2010/09/23(木) 11:33:11
>>156
プログラミング初心者なのはいいけど、説明能力初心者なのは反省して欲しいもんだな。
なんでちゃんと推敲しないの?

俺なんか質問する場合は自分の意図がちゃんと他人に伝わるか、何度も読み直してチェックするが
普通そういうものじゃないのか?

162 :デフォルトの名無しさん:2010/09/23(木) 11:34:20
>>161
あなたが何を言いたいのかわかりません。

ちゃんと読みなおしましたか?

163 :デフォルトの名無しさん:2010/09/23(木) 11:34:47
きっと140さんは158を一瞬開いて、プログラムが書かれてないから一瞬で閉じてしまったに違いないんやな

164 :デフォルトの名無しさん:2010/09/23(木) 11:36:03
>>162
しょっぱいよ

165 :デフォルトの名無しさん:2010/09/23(木) 11:40:38
>>164
すみません
どういう意味ですか?

166 :デフォルトの名無しさん:2010/09/23(木) 11:42:24
>>165
ggr

167 :デフォルトの名無しさん:2010/09/23(木) 11:43:33
>>165
死ねってことだよ
言わせんなはずかしい

168 :デフォルトの名無しさん:2010/09/23(木) 11:44:18
あの…初心者用スレなんで…

169 :デフォルトの名無しさん:2010/09/23(木) 11:44:28
>>162
ちょっとなにいってるのかわかんないです

170 :デフォルトの名無しさん:2010/09/23(木) 11:46:11
RichTextBoxを使った画面をデバッグしていると、急激に重くなりました。
タスクマネージャを見ると、どうも conime.exe と言うプロセスが10個近く増えていたのですが、
原因は何でしょうか?(VS2008です)

171 :デフォルトの名無しさん:2010/09/23(木) 11:47:37
分からないのならスルーして下さい

172 :デフォルトの名無しさん:2010/09/23(木) 11:48:10
>>167
しねっていうのが読み取れませんでした
すみません

あなたの文章わかりづらいですね

173 :デフォルトの名無しさん:2010/09/23(木) 11:55:13
>>99
http://www.google.com/search?hl=ja&source=hp&q=SuspendLayout%E3%80%80%E5%B4%A9%E3%82%8C%E3%82%8B

ここが出てきたw
てか有益な情報がない

174 :デフォルトの名無しさん:2010/09/23(木) 11:56:43
>>170
conimeはコンソールで漢字変換をやるためのプロセス。
使わないなら無効化しちゃえばいい。

http://support.microsoft.com/kb/903204/ja

175 :デフォルトの名無しさん:2010/09/23(木) 12:01:03
conimeでシリアライザが固まるとかフォルダ削除できなくなるとかいろいろあるよね

176 :170:2010/09/23(木) 12:08:04
>>174
コンソールは使わないので無効化して、起動しなくなりました。
ありがとうございます!

177 :96:2010/09/23(木) 12:24:49
ご教示いただきましたActiveXコントロールでReal Mediaの動画を流したいのですがどのように流すのでしょうか?
サンプルコードがあればと思い「c# activex real media」で検索してみたのですが見つからず・・・

178 :デフォルトの名無しさん:2010/09/23(木) 12:38:38
カスタムコントロールをデザイナで配置しようとすると

コンポーネント"xxx"を生成できませんでした。エラーメッセージ;
"System.IO.Path.TooLongException: 指定されたパス、ファイル名、またはその両方が長すぎます。
完全限定型名は 260 文字未満で指定し、ディレクトリ名は 248 未満で指定してください。

というようなエラーが出てきてしまいます。
このプロジェクトが置いてあるフォルダの階層はかなり浅く、
なぜこのエラーが出るのか分かりません。
何か他に原因があるのでしょうか?
どなたか教えて下さい。


179 :デフォルトの名無しさん:2010/09/23(木) 12:44:26
>>178
突っかかるような言い方で悪いけど、それってカスタムコントロールをデバッグしろ、
でもソースコードも何をやっているかも秘密です、って言ってるのと同じじゃないのか?

180 :デフォルトの名無しさん:2010/09/23(木) 12:47:52
つかカスタムコントロールのコンストラクタでパス開くような真似するなよ

181 :デフォルトの名無しさん:2010/09/23(木) 12:51:27
WPFだったりして。

182 :デフォルトの名無しさん:2010/09/23(木) 12:51:49
今はC#4.0でコンパイルしてプログラムを配布するのはやめたほうがいいいですか?
C#2.0の環境で動くものが多いのですが、やっぱりC#4.0環境が少ないって事だからでしょうか?

183 :デフォルトの名無しさん:2010/09/23(木) 12:54:22
C#のバージョンとターゲットフレームワークは分けて考えなさい

184 :デフォルトの名無しさん:2010/09/23(木) 12:56:09
Win7って3.5SP1がデフォで入ってるんだっけ?

185 :デフォルトの名無しさん:2010/09/23(木) 12:57:50
4.0がデフォで入ってる

186 :デフォルトの名無しさん:2010/09/23(木) 12:58:27
>>184
うん。

187 :デフォルトの名無しさん:2010/09/23(木) 14:03:28
>>177
http://service.jp.real.com/help/library/guides/realone/ScriptingGuide/HTML/realscript.htm
あとはWMPの埋め込みとか参考に。
ブラウザに埋め込むためのコントロールみたいだからフォームに直接埋め込めるのかどうかは知らん。
real playerのコア機能をC++から使うためのSDKもあるみたいだから、
ActiveXコントロールが使えなかったらC++でそのラッパーを書くことになると思う。

188 :デフォルトの名無しさん:2010/09/23(木) 14:16:47
>>185
嘘教えるなカス
http://www.atmarkit.co.jp/fwin2k/win2ktips/1128dnfwvr/dnfwvr.html
http://www.atmarkit.co.jp/fwin2k/win2ktips/246checkvdnfw/checkvdnfw.html

189 :デフォルトの名無しさん:2010/09/23(木) 15:13:05
フォームのプロパティを変更するときにForm1.csで「this.プロパティ = "";」と書いて変更しているのですが
他のクラスファイル(abc.cs)からプロパティを変更するのはできないのですか?
「Form1 obj = new Form1();obj.プロパティ ="";」変更しようとしてもエラーになってしまい出来ません。

190 :デフォルトの名無しさん:2010/09/23(木) 15:15:35
アクセス修飾子

191 :デフォルトの名無しさん:2010/09/23(木) 15:16:32
何てエラーになるの?

192 :デフォルトの名無しさん:2010/09/23(木) 15:20:26
new だと新しくインスタンス作っちゃうけど、それはいいの?

193 :189:2010/09/23(木) 15:42:31
エラーは「'ClassStadySample1.Form1.textBox1' はアクセスできない保護レベルになっています。」と出ました。
Form1.csに書かれているクラスForm1は「public partial class Form1 : Form」となっています
new新しく使わないほうがいいですか?

194 :デフォルトの名無しさん:2010/09/23(木) 15:48:06
Form1.cs を開いて、textBox1 のプロパティを表示する。
Modifiers を public にする、と一応望みはかなう。

195 :デフォルトの名無しさん:2010/09/23(木) 15:54:38
textBox1がprivateだから。

196 :デフォルトの名無しさん:2010/09/23(木) 15:55:30
いや新しいインスタンス作ってるからダメでしょ
前スレに出てた何重ものキャストが必要なんじゃない?

197 :デフォルトの名無しさん:2010/09/23(木) 16:00:36
まあ、一番の解決方法は文法を勉強することだろう。

198 :デフォルトの名無しさん:2010/09/23(木) 16:50:36
またリファレンス嫁すか

199 :デフォルトの名無しさん:2010/09/23(木) 16:55:31
リファレンスよりプログラミングガイドの方が…。
http://msdn.microsoft.com/ja-jp/library/67ef8sbd%28v=VS.90%29.aspx

200 :デフォルトの名無しさん:2010/09/23(木) 16:58:53
今度こそポトペタの弊害ナリ(どや顔)

201 :デフォルトの名無しさん:2010/09/23(木) 19:43:22
クラスに複数のメソッドを作っているのですが、
コンストラクタからすべてのメソッドを実行させることはできませんか?

202 :デフォルトの名無しさん:2010/09/23(木) 19:45:58
どこまでできたら初心者脱出できるのかわかんないや
WPFでメモ帳作ろう。

203 :デフォルトの名無しさん:2010/09/23(木) 19:46:07
実行すればいいじゃないとしか言えない。

204 :デフォルトの名無しさん:2010/09/23(木) 19:54:36
最低でも書いてみてから質問してるんだろうか…?

205 :201:2010/09/23(木) 19:58:13
手作業で全部書いていけばできるのは分かっているのですが、
一括で呼び出す方法はありませんか?

206 :デフォルトの名無しさん:2010/09/23(木) 20:00:03
あるわけねえだろ

207 :201:2010/09/23(木) 20:00:37
やっぱいいです。

208 :デフォルトの名無しさん:2010/09/23(木) 20:02:07
なんでそんなことをしたいのかわからんが
リフレンションでググれ
コンストラクタ内で呼べるかどうかは知らない

209 :201:2010/09/23(木) 20:02:47
>>206
すみません。
ないのはわかったのですが、なぜあるわけないのでしょうか?
呼び出せない理由はないと思うのですが。

>>207は私ではありません。

210 :デフォルトの名無しさん:2010/09/23(木) 20:02:49
×リフレンション
○リフレクション

211 :デフォルトの名無しさん:2010/09/23(木) 20:10:28
ニッチ需要過ぎて無いだろう。

作れないことはないが、作られていないものなんてこの世には沢山あると思うんだ。

212 :デフォルトの名無しさん:2010/09/23(木) 20:10:33
普通、そんな必要性ないし。

213 :デフォルトの名無しさん:2010/09/23(木) 20:13:25
自分の求めてる機能はあるはずと思い込める頭の構造が気になる

214 :デフォルトの名無しさん:2010/09/23(木) 20:14:07
それがゆとり脳

215 :デフォルトの名無しさん:2010/09/23(木) 20:14:14
初・心・者・ス・レ

ですよ

216 :デフォルトの名無しさん:2010/09/23(木) 20:15:29
だから何?

217 :デフォルトの名無しさん:2010/09/23(木) 20:16:13
>>215
いい加減うぜーんだよ死ねよ

218 :201:2010/09/23(木) 20:17:38
>>208
調べてみます。ありがとうございます。

>>211,213
ないことはわかりましたって・・。
ですが、>>206
> あるわけねえだろ
といっているので、技術的な問題があるのかと思っただけです。
とくに問題があるわけがあるわけでもなく、単にないだけなんですよね?
なら、そう言っていただければよかったのですが。

219 :デフォルトの名無しさん:2010/09/23(木) 20:18:28
技術的な問題がない、わけではない。

220 :デフォルトの名無しさん:2010/09/23(木) 20:21:53
どう考えたってクラス設計間違えてるとしか。。。

221 :デフォルトの名無しさん:2010/09/23(木) 20:25:36
意味と理由を求めるのが悪い癖だよなあ
インターフェイスの存在意義ってなんですか?abstract classで十分じゃないですかとか
あるものはあるし、ないものはないんだよ
とりあえず従っておけ

222 :201:2010/09/23(木) 20:34:08
>>219
まだ勉強を始めたばかりで言語仕様について理解できていない点が多いですが、
勉強のためにどういう問題があるか教えていただけませんか?

>>221
自分の知識のためにも、理由があるのであれば知っておきたいです。
たとえば、なぜC言語があるのにC++ができたか、VC++があるのにC#ができたのかと
いう意味を知っておいたほうが、私は乗り出しはスムーズになります。

223 :デフォルトの名無しさん:2010/09/23(木) 20:34:13
>>221
なんか日本人的な発想だな。
流石にそれは賛成できない。
むしろ意味や理由を考えない人の方がプログラマ向いてないだろう

224 :デフォルトの名無しさん:2010/09/23(木) 20:35:43
いや、最後の行の「とりあえず従っておけ」が趣旨なら、そこについては同意。

225 :デフォルトの名無しさん:2010/09/23(木) 20:36:07
意味なんか考えた所で開発者の胸中の推測にしかならんだろ
「本当ですか?」って聞き返されて「本当だよ」と答えられるの?

大事なのは仕様の理解であって存在する意味でも理由でもねえ

226 :デフォルトの名無しさん:2010/09/23(木) 20:38:47
何で怒ってるんだか。

227 :デフォルトの名無しさん:2010/09/23(木) 20:40:52
いつもの奴だからスルーするんだ

228 :201:2010/09/23(木) 20:41:36
すみません。
私の日本語の記述が悪いのか、あなた方の日本語の理解能力が悪いのかはわかりませんが、
「ない」ではなく「あるわけがない」というからには、なんらかの理由やら技術的な問題が
あるかと思ったのですが、そういうことではなく単に「ない」だけなのでしょうか?



229 :デフォルトの名無しさん:2010/09/23(木) 20:41:57
多重継承はいろいろ問題があるから、最近設計された言語では避けられている。

230 :デフォルトの名無しさん:2010/09/23(木) 20:42:23
便利かどうか、需要があるかどうか、
この2つしか理由なんてないと思うけどね。

231 :デフォルトの名無しさん:2010/09/23(木) 20:43:36
君の日本語能力に難があるだけ。

232 :デフォルトの名無しさん:2010/09/23(木) 20:43:57
便利かどうかって軸は、
実際には便利ってのと、副作用として他に悪影響ださないかのトレードオフだけどね。

233 :デフォルトの名無しさん:2010/09/23(木) 20:54:22
>>228
普通の人はコンストラクタでクラスのメソッドを全部呼ぶなんてことはしない。
だから言語設計者がそんなものを作るはずがない。だから「あるわけがない」というわけだ。

234 :201:2010/09/23(木) 20:57:23
>>231
すみません。では、もう一度書きなおしますね。
ご迷惑かとは思いますが、わかりづらい点があれば何度でもご指摘いただければと思います。

私が質問した、「コンストラクタよりクラス内の全てのメソッドを呼び出す方法はないか」という質問に対してですが、
解答として「ない。できない。」ということはわかりました。
ですが>>206さんにいただいた「あるわけねえだろ」という回答について、「ない」という回答ではなく、「あるわけが
ない」というご回答をいただいたので、私はそれに「なぜ、あるわけがないのか」という疑問がわきました。

「ない」というのであれば「機能が用意されていない」というように認識はできるのですが、「あるわけがない」とい
うのは、「○○の問題があるのだから、あるわけがない。」や「そんなことが言語的にできるわけがない」というように
感じ取れたため、その理由についてお教えいただけないかとご質問させていただいております。


どうか、よろしくお願いいたします。


235 :デフォルトの名無しさん:2010/09/23(木) 20:59:43
RSS1.0, 2.0 Atom1.0 の3つを同じ様に処理する方法を教えてください

236 :201:2010/09/23(木) 21:02:44
>>233
そういう意味ですね。わかりました。
ありがとうございました。

237 :デフォルトの名無しさん:2010/09/23(木) 21:05:50
>>235
クラスでラップしとけばいいだけじゃね?

238 :デフォルトの名無しさん:2010/09/23(木) 21:22:15
Regex.Replaceについてですが、<は< >は> &は&に一括で置き換えることはできないですかね?


239 :デフォルトの名無しさん:2010/09/23(木) 21:23:28
エスケープされずにそのまま出るんですね・・。

<は&lt; >は&gt; &は&amp;です

240 :デフォルトの名無しさん:2010/09/23(木) 21:23:44
エスパーレスだが、HtmlEncode/Decode 使えばいいんじゃね?

241 :デフォルトの名無しさん:2010/09/23(木) 21:30:23
Regexを使ってすることはできませんか?

242 :デフォルトの名無しさん:2010/09/23(木) 21:33:07
>>241
C#(というか.net?)の正規表現はperl5互換らしいので
勉強してくればいいよ

その辺はC#とは別の話だし

243 :デフォルトの名無しさん:2010/09/23(木) 21:33:20
MatchEvaluatorとか使えばいいんじゃね?

244 :デフォルトの名無しさん:2010/09/23(木) 23:50:05
<と>と&だけなら
普通に頭から1文字づつチェックしていけばいいような気がする…

245 :デフォルトの名無しさん:2010/09/24(金) 00:04:53
md5ハッシュ計算プログラムです
半角英数字なら問題ないのですが、日本語で「あ」が「8f03c3a6dbec1d0f1a5af60947b7b052」と本来なるはずなんですが、まったく違うものが出てきます
日本語でも正しく処理して「あ」の場合は「8f03c3a6dbec1d0f1a5af60947b7b052」となるようにするためにどなたかご教示お願い致します
using System;
namespace crypt
{
class Program
{
static void Main(string[] args)
{
string s = "あ";
byte[] data = System.Text.Encoding.ASCII.GetBytes(s);
System.Security.Cryptography.MD5CryptoServiceProvider md5 =
new System.Security.Cryptography.MD5CryptoServiceProvider();
byte[] bs = md5.ComputeHash(data);
System.Text.StringBuilder result = new System.Text.StringBuilder();
foreach (byte b in bs)
{
result.Append(b.ToString("x2"));
}
Console.WriteLine(result);
Console.ReadKey();
}

}
}

246 :デフォルトの名無しさん:2010/09/24(金) 00:06:51
ASCIIにしちゃだめだろ。

247 :デフォルトの名無しさん:2010/09/24(金) 00:16:19
>>245
http://ideone.com/rpgZ2
8f03c3a6dbec1d0f1a5af60947b7b052なんて出てこなかったわ。

248 :デフォルトの名無しさん:2010/09/24(金) 01:38:09
>>247
ideoneが非対応なんだろうけど、たぶん正しくエンコードされてない

Unicode (UTF-8): 8c0c3027e3cfc3d644caab3847a505b0
日本語 (シフト JIS): 8f03c3a6dbec1d0f1a5af60947b7b052
日本語 (EUC): 5e92a0d76f4fe012cbc02e351a78e519

249 :デフォルトの名無しさん:2010/09/24(金) 11:16:41
参照のコンポーネント群の概略説明の一覧ってないですか?
いっぱいありすぎて現状把握すら出来ません

250 :デフォルトの名無しさん:2010/09/24(金) 12:03:45
.NET Framework2.0の環境でも動くプログラムを作る場合に
vc#で「プロジェクト」->○○のプロパティのアプリケーションの対象のフレームワークってところを2.0のものに設定しないとダメですか?
初期の設定ではここが.NET Framework 4.0になってました

251 :デフォルトの名無しさん:2010/09/24(金) 12:08:31
設定しないとダメ

252 :デフォルトの名無しさん:2010/09/24(金) 12:08:48
そりゃそうだ

253 :デフォルトの名無しさん:2010/09/24(金) 12:27:43
.netのバージョン別普及率を調べる方法ってありませんか?

254 :デフォルトの名無しさん:2010/09/24(金) 12:32:34
調べる方法ならアンケートしかないだろうが
とりあえずOS毎に基本インストールされてるのってどこだっけかな

255 :デフォルトの名無しさん:2010/09/24(金) 12:36:35
http://www.atmarkit.co.jp/fwin2k/win2ktips/246checkvdnfw/dnfwvr02_s.gif

256 :デフォルトの名無しさん:2010/09/24(金) 12:38:07
windowsの次期バージョンで2.0も切り落とされそうだな

257 :デフォルトの名無しさん:2010/09/24(金) 13:57:05
コンソールプログラムを任意の場所で終了させるときにEnvironment.Exit(0);を使うのとApplication.Exit()を使うのではどちらがいいでしょうか?

258 :デフォルトの名無しさん:2010/09/24(金) 14:10:35
Applicationはコンソールアプリには無関係だな

259 :デフォルトの名無しさん:2010/09/24(金) 14:19:05
>>256
2.0を切り落とすってことは3.0/3.5を切り落とすということ。
そんな事はあり得ないけど、仮にそうなっても4.0で動くから問題は無い。

>>257
プロセスを終了させるならEnvironment.Exit

Application.ExitはWindows アプリケーション用で、
Program.cs内のRunで開始されたメッセージループから抜け出してRunに制御を返すだけ。
次の行で新しいウィンドウを開いたりもできる。(普通やんないけど)

260 :デフォルトの名無しさん:2010/09/24(金) 14:23:26
>>259
温かい思いやりに感謝する

261 :デフォルトの名無しさん:2010/09/24(金) 14:34:29
Windowsアプリケーションでは、this.Close()とApplication.Exit()のどっちを使った方がいいの?

262 :デフォルトの名無しさん:2010/09/24(金) 14:38:23
どういう目的かしらんが
どういう目的にしても
その二つは比べられるような動きにはならんぞ

263 :250:2010/09/24(金) 14:39:34
助言を元に2.0に設定しました
コンパイルしてリリースしたら出来上がったプログラムと同じフォルダに「プログラム名.config」ってconfigファイルが出来たのですが
このconfigファイルもプログラムと一緒に配布しないとダメなんでしょうか?

264 :デフォルトの名無しさん:2010/09/24(金) 14:43:30
心配せんでもお前が作ったソフトは誰も使わん

265 :デフォルトの名無しさん:2010/09/24(金) 14:47:17
そんな、ひどい…



*使いますか?

ィァ はい
   いいえ

266 :デフォルトの名無しさん:2010/09/24(金) 14:47:59
>>262
ヒント:アプリケーションの終了

267 :デフォルトの名無しさん:2010/09/24(金) 14:48:31
>>261
Form.Close()は呼び出したウィンドウだけが閉じる。
Application.Exit()は開いてる全部のウィンドウを閉じようとする。

268 :デフォルトの名無しさん:2010/09/24(金) 14:50:11
Form.Closeを呼んでも終了するとは限らないような
それはWPFの話だったか?

269 :デフォルトの名無しさん:2010/09/24(金) 14:50:25
FormClosingのCloseReasonとかにも影響するな

270 :267:2010/09/24(金) 15:03:08
スマン。完全に誤解させる書き方だった。

Form.Close()は呼び出したウィンドウだけを閉じようとする。
Application.Exit()は開いてる全部のウィンドウを閉じようとする。

どっちもFormClosingイベントが呼ばれて、実際に閉じるかどうかはFormClosingの結果次第。

271 :デフォルトの名無しさん:2010/09/24(金) 15:16:48
VC#でコンパイラのバージョンを選択したいのですがどこで設定できますか?

272 :デフォルトの名無しさん:2010/09/24(金) 15:20:06
VSを古い奴に入れ替えればよい

273 :デフォルトの名無しさん:2010/09/24(金) 15:21:01
バージョンが選択できたところで何の意味もねえような

274 :デフォルトの名無しさん:2010/09/24(金) 15:27:12
古いVSでもコンパイルできるようにC#3.0/3.5/4.0の新機能を使わないように制限したいんじゃないか?
コンパイラは無料で入手できるんで新しいのを入れてもらうのが一番簡単。それでダメならアセンブリを同梱しとけばいいんじゃないか。

275 :デフォルトの名無しさん:2010/09/24(金) 15:29:48
開発してるPCのコンパイラがC#4.0なんですが、C#2.0の環境でも動かせるの用に作りたいです

276 :デフォルトの名無しさん:2010/09/24(金) 15:31:46
> C#2.0の環境
直接csc.exe使うんでもない限り関係ないだろう
単に実行するだけならターゲットを.NET 2.0にすればいいぞ?
あっちとこっちで並行開発したいのならVSのバージョン合わすしかないな

277 :デフォルトの名無しさん:2010/09/24(金) 15:39:10
コンパイル自体をユーザーにさせるのでなければC#のバージョンなんて関係ないよね。
オープンソースにすんの?

278 :デフォルトの名無しさん:2010/09/24(金) 17:11:12
CSSで使う16進数カラーコードで選択した色をcd.Color.ToString()で表示すると
Color [Red]と表示されたり、Color [A=255, R=95, G=226, B=115]と表示されます

赤ならFF0000と表示したいので
Convert.ToString(cd.Color.R, 16) + Convert.ToString(cd.Color.G, 16) + Convert.ToString(cd.Color.B, 16)
と書いたのですが、そうするとFF00となってしまいます

どなたか良い解決方法をご教示お願いします

279 :デフォルトの名無しさん:2010/09/24(金) 17:21:51
ToArgb() ただしアルファが頭に付くので取り除くなら0xFFFFFFとの論理積
あとはToStringの書式指定で16進に変換

280 :278:2010/09/24(金) 17:21:54
すいません解決できました
桁をそろえる処理を入れて解決しました

281 :デフォルトの名無しさん:2010/09/24(金) 17:27:06
(cb.Color.ToArgb() & 0xFFFFFF).ToString("X")

282 :デフォルトの名無しさん:2010/09/24(金) 17:31:10
>>278
http://www.atmarkit.co.jp/fdotnet/dotnettips/239colorconv/colorconv.html
String htmlColor = String.Format("#{0:X2}{1:X2}{2:X2}", c.R, c.G, c.B);

283 :278:2010/09/24(金) 17:40:18
このように書きました
cd.Color.R.ToString("X2") + cd.Color.G.ToString("X2") + cd.Color.B.ToString("X2");
X2の部分をXと書くと桁が削れました

>>279さんと>>281さんの方法で
(cb.Color.ToArgb() & 0xFFFFFF).ToString("X")
と書いたらうまくいきましたが、Xの部分はX2と書かなくてもちゃんと表示できるのは何故なのでしょうか?

>>282さんのご紹介くださったコードも素晴らしいですね

284 :デフォルトの名無しさん:2010/09/24(金) 17:45:04
ToArgb使うとアルファ値も含まれるからおかしくならねえの?

285 :デフォルトの名無しさん:2010/09/24(金) 17:49:53
"X"じゃなくて"X6"だった死にたい

286 :デフォルトの名無しさん:2010/09/24(金) 18:02:58
デフォルトでTextBoxに文字列が挿入されていて、
そこにカーソルをいれるとデフォルトの文字列が消えるものがよくありますが、
あれはどうやって作っているのでしょうか?

287 :デフォルトの名無しさん:2010/09/24(金) 18:31:08
SendMessageでEM_SETCUEBANNERを送る

288 :デフォルトの名無しさん:2010/09/24(金) 19:34:53
>>286
自分で試してみたところまで書くとかして、
>>278みたいな質問文の構成にすると解答が得られやすい

289 :デフォルトの名無しさん:2010/09/24(金) 20:47:25
ふぅ

290 :デフォルトの名無しさん:2010/09/24(金) 21:51:06
>>248
エンコードの違いで変わったのですね
勉強になりました

291 :デフォルトの名無しさん:2010/09/24(金) 22:13:17
ASCIIとUnicodeとかの区別がつかないのはまずいと思う

292 :デフォルトの名無しさん:2010/09/24(金) 22:15:07
GetEncoding(932)staticプロパティにしてくれよ

293 :デフォルトの名無しさん:2010/09/24(金) 22:22:06
GetEncoding(932)staticプロパティにしてくれよってば!

294 :293:2010/09/24(金) 22:23:42
>>292
誰だ!

295 :デフォルトの名無しさん:2010/09/24(金) 22:26:25
同じ事じゃん

296 :デフォルトの名無しさん:2010/09/24(金) 22:26:28
何者だ

297 :デフォルトの名無しさん:2010/09/24(金) 22:26:44
GetEncoding(293)staticプロパティにしてくれよ

298 :デフォルトの名無しさん:2010/09/24(金) 22:31:14
それぐらい自分で定義して使えよな

299 :デフォルトの名無しさん:2010/09/24(金) 22:35:14
面倒臭いス
もうshift_jisなんてWebから消え去ればいいス

300 :デフォルトの名無しさん:2010/09/24(金) 22:37:56
えーマジShiftJIS?キモーイ
ShiftJISが許されるのはWin98までだよね!キャハハハハハハハ

301 :デフォルトの名無しさん:2010/09/24(金) 22:54:24
きもいっス

302 :デフォルトの名無しさん:2010/09/24(金) 23:07:31
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<base href="http://hibari.2ch.net/tech/">
<title>ふらっとC#,C♯,C#(初心者用) Part63</title>

>>300
2ch に喧嘩売ったな


303 :デフォルトの名無しさん:2010/09/24(金) 23:09:45
新しい鬼道ッス

304 :デフォルトの名無しさん:2010/09/24(金) 23:39:07
string型の変数の文字コードを変換する方法をどなたかご教示おねがいします
検索するとbyte配列に入れて文字コードを変換する方法が見当たるのですがこれしか無理でしょうか?

305 :デフォルトの名無しさん:2010/09/24(金) 23:42:55
>>304
だから、ちったあ文章推敲しろって本当。
文字コードを変換って、そんな漠然とした質問があるかよ。

306 :デフォルトの名無しさん:2010/09/24(金) 23:44:21
>>305
ttp://ja.wikipedia.org/wiki/%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89

307 :デフォルトの名無しさん:2010/09/24(金) 23:46:41
やっぱりコピペなんて馬鹿な奴の所業だよな。
何が言いたいのかさっぱりわからん。
コピペ君って馬鹿だな

308 :デフォルトの名無しさん:2010/09/24(金) 23:51:17
>>304
C# は string に格納されてる間は UTF16 よ、必ず。
C# で文字コードが問題になるのは、ファイルとかの IO 関連と、バイト配列化するときくらい。


309 :デフォルトの名無しさん:2010/09/24(金) 23:51:26
意味は分かるがちょっとなー

string型は常にUTF-16で文字コードの情報は持っていない
だから「string型の変数の文字コードを変換する」ということ自体成り立たない
持ってないんだから

310 :デフォルトの名無しさん:2010/09/24(金) 23:51:30
>>306
?ッス

311 :デフォルトの名無しさん:2010/09/24(金) 23:51:53
9秒遅れたorz
ファック

312 :デフォルトの名無しさん:2010/09/25(土) 00:01:33
シット

313 :デフォルトの名無しさん:2010/09/25(土) 00:16:15
これからはbyte[]型に直して文字コードを変換するようにします
308さん309さんありがとうございました

314 :デフォルトの名無しさん:2010/09/25(土) 00:27:39
いえいえどういたしまして

315 :デフォルトの名無しさん:2010/09/25(土) 00:33:13
いえいえどういたしまして

316 :デフォルトの名無しさん:2010/09/25(土) 00:42:37
PHP・Java畑でC#デスマに突っ込まれたけど、腐った言語だねwww

この業界で15年以上働いてるけど、ソース管理が出来ない仕様の言語ってのはわかった
LINQ使ってるが、バージョン管理出来ない。7拠点でやってるけどコミットするたびに
コンパイルが通らないwww
SQLスクリプトも管理してるけど、ALTERやCREATEが混ざってたり、使用しないSQLが残ってたりで
LINQとDBが一致しない。
おまけに画面にSQL式を書く仕様になってるからWebサービス使ってる意味がない。
1〜2年前に買った比較的新しいマシンだが、10年前のJava(Swing)並に重過ぎるww

本当にC#ってクソだね。話にならない。

未だにMVCすら実装できない糞仕様言語なんて、IT初心者コースのド素人向けだろ?

317 :デフォルトの名無しさん:2010/09/25(土) 00:44:25
PHPはなぁ…言語仕様が糞だから逆に周辺が充実してるよねフレームワーク類とか

318 :デフォルトの名無しさん:2010/09/25(土) 01:37:01
>>316
底辺最下層の不幸自慢かw
お前が無能だからそんな現場に一山幾らで放り込まれたんだろ。

ご愁傷様。でも、自業自得だね。

319 :デフォルトの名無しさん:2010/09/25(土) 01:37:19
統合開発環境のツールボックスみたくタブと▽画鋲×の付いたメニューってどうやって作ってあるんだろう?

320 :デフォルトの名無しさん:2010/09/25(土) 01:51:55
Magic DockingとかDockPanel Suiteとか
みんなVS使ってる影響もあって、有料・無料・オープンソース、WinForms・WPFを選べるぐらい多い。

321 :デフォルトの名無しさん:2010/09/25(土) 12:11:55
C#4.0で実装された機能を使わなければC#2.0ランタイムしか入ってないPCでも動きますか?

322 :デフォルトの名無しさん:2010/09/25(土) 12:12:49
おまえ プログラミング言語を何だと思ってるんだ

323 :デフォルトの名無しさん:2010/09/25(土) 12:15:43
>>321
C#2.0でビルドすればね。

324 :デフォルトの名無しさん:2010/09/25(土) 12:17:07
>>323は間違い
>>276-277を100000000回読め

325 :デフォルトの名無しさん:2010/09/25(土) 12:24:10
なんも間違ってないわけだが。

326 :デフォルトの名無しさん:2010/09/25(土) 12:24:19
.NET2.0 でも C#4.0 の機能の多くが利用できる。

327 :デフォルトの名無しさん:2010/09/25(土) 12:27:23
>>325
C#2.0でビルドってなんだよ?
ターゲットフレームワークを.NET2.0にしてビルドする だろ?

普段は気にしないが、言語とランタイムのバージョンの話をしてる時にこの間違いは致命的。完全に間違ってる。

328 :デフォルトの名無しさん:2010/09/25(土) 12:28:17
禅問答になってきたな。

329 :デフォルトの名無しさん:2010/09/25(土) 12:39:18
言語バージョンと.NETバージョンを勘違いしてる人結構多いのは確かだな
記憶が曖昧だが、ターゲットバージョンを指定できるようになったのも
確かVS2008からだよな

330 :デフォルトの名無しさん:2010/09/25(土) 12:40:38
C#のバージョンと.NETランタイムのバージョンは対応づけられるんだから、
どっちだっていいんだよ。

331 :デフォルトの名無しさん:2010/09/25(土) 12:43:49
>>330
お前、まだ理解できてないのか

332 :デフォルトの名無しさん:2010/09/25(土) 12:45:04
>>331
ほっとけ

333 :デフォルトの名無しさん:2010/09/25(土) 12:47:58
byte型の変数に格納されてる文字列を大文字にしたいのですがToUpper()使うとエラーがでます
string型にしないとToUpperは使えないのでしょうか?

334 :デフォルトの名無しさん:2010/09/25(土) 12:47:59
ターゲットバージョン指定は2008からだね。
2005は2.0専用、って感じで、それまでは特定バージョンのみだった。

335 :デフォルトの名無しさん:2010/09/25(土) 12:48:21
>>329
そりゃVS2005の頃は.NET2.0しかなかったからだろ。後に.NET3.0を使えるようにする拡張が出た。
VS2008の方は.NET3.5と一緒にリリースされたので.NET2.0/3.0/3.5に対応してた。

336 :デフォルトの名無しさん:2010/09/25(土) 12:48:30
byte型の変数に文字列は入らないだろよ・・・

337 :デフォルトの名無しさん:2010/09/25(土) 12:49:45
未だに3.0、3.5が独立バージョンだと思ってるやつがいるくらいだしな。

338 :デフォルトの名無しさん:2010/09/25(土) 12:49:57
>>330
分からないなら黙ってればいいのに。w

339 :デフォルトの名無しさん:2010/09/25(土) 12:52:58
ポインタで入れてんじゃねえの?

そんな人は質問しないか・・・

340 :デフォルトの名無しさん:2010/09/25(土) 13:55:28
Hello Worldのメッセージダイアログを出すだけのプログラムでも
C#4.0でコンパイルしたらC#2.0で動かないとかカス言語だな

341 :デフォルトの名無しさん:2010/09/25(土) 13:56:59
組み込み用途では使えないな。

342 :デフォルトの名無しさん:2010/09/25(土) 13:59:54
>>340
> C#4.0でコンパイルしたらC#2.0で動かないとかカス言語だな
お前アホだな。

343 :デフォルトの名無しさん:2010/09/25(土) 14:01:23
ほっとけよ

344 :デフォルトの名無しさん:2010/09/25(土) 14:14:40
いやだ。

345 :デフォルトの名無しさん:2010/09/25(土) 14:41:41
落ち着けよ

346 :デフォルトの名無しさん:2010/09/25(土) 14:45:19
で、オチは?

347 :デフォルトの名無しさん:2010/09/25(土) 14:52:39
メニューの子要素に項目をプログラムから追加するにはどうしたらいいですか?

ファイル
一覧 子要素
子要素
子要素

みたいな感じに、一覧をクリックかマウスオーバーするとその時の状態によって
子要素を追加するようにしたいのですが。

348 :デフォルトの名無しさん:2010/09/25(土) 15:02:44
想定後のを一旦デザイナで作ってみて、
.designer.csの#regionで隠されてるところを覗いてみると良いよ

349 :デフォルトの名無しさん:2010/09/25(土) 15:04:18
>>340
動いたよ

逆にC#4.0でもC#2.0でコンパイルして動いた。
試しにC#1.0でLinq動かしたけど、普通に動いたよ

350 :デフォルトの名無しさん:2010/09/25(土) 15:21:25
初心わすれれるるるべからず
あれ?
初心わすれるべからず?
初心わするべからず?

もういいや、 初心者座るべからず!


351 :デフォルトの名無しさん:2010/09/25(土) 16:11:51
キヤノンの関連会社はイスがないことを自慢してましたね

352 :デフォルトの名無しさん:2010/09/25(土) 16:20:47
すげー初歩的な質問で申し訳ないんだけど、分かる人いたら教えてくれ。

WindowsFormのイベントに関して、

FormにClickイベントを設定
FormにLabelを設置
LabelをクリックしてもFormに設定したイベントを発生させたい

こういう場合どうすればいいんだっけ。
LabelにFormと同じClickイベント設定する方法は思いついたんだが
これだとコントロール増えた時めんどうだし、
なんか別の方法があったような気がするんだよなぁ。


353 :デフォルトの名無しさん:2010/09/25(土) 16:26:48
LabelのClickイベントからFormのClickイベントを呼べばいいじゃん

354 :デフォルトの名無しさん:2010/09/25(土) 16:26:55
>>352
別の方法はない

355 :デフォルトの名無しさん:2010/09/25(土) 16:29:35
>>353
それをやるとオブジェクトが増えたときが大変だって話だろWindowForm自体にイベント持たせて
その都度、マウスポイントのX,Yを取得してその座標がどのオブジェクト上にカーソル乗ってるかで
判断するのが一般的なやり方

356 :デフォルトの名無しさん:2010/09/25(土) 16:31:47
今はWindowFormで作るのとWPFで作るのはどちらがいいのでしょうか?

357 :デフォルトの名無しさん:2010/09/25(土) 16:32:32
>>353,354
素早い回答ありがとう。その方法しかないのか。
幸い今のところはコントロールが3つしかないから
それぞれに同じイベントを設定しときます。

>>355
問題はLabelクリックするとWidnowsForm自体に設定してあるイベントが発生しないことなんだ


358 :デフォルトの名無しさん:2010/09/25(土) 16:36:54
FormのControlAddedイベントで子コントロールにClickイベントを設定するするコードを書けばいい

359 :デフォルトの名無しさん:2010/09/25(土) 16:39:24
>>358
なるほど、その方法があったか。


360 :デフォルトの名無しさん:2010/09/25(土) 16:40:56
>>357
そういう問題じゃなくてWindowsForrmsのイベントで渡されるEventの引数で
どのオブジェクトがselectednなってるか判断する方法じゃないと実装はできない。

なんでWinddowsFormsに定義するイベントインターフェースを見直す事が早道だ

361 :デフォルトの名無しさん:2010/09/25(土) 16:43:03
>>358
それをやると、コントロール→コントロールのネストがあった場合は、バグが起きやすいよ。
あくまでオブジェクト思考で設計しないと解決しない問題

362 :デフォルトの名無しさん:2010/09/25(土) 16:46:42
>>360
Clickイベントなんて使わずにWndProcをoverrideして新しいイベント作ったほうがいいってこと?
理解が及んでいなかったらすまん

363 :デフォルトの名無しさん:2010/09/25(土) 16:54:57
>>362
そういう事でおk
できるだけMFCで実装してポリモーフィズム化して
WindowOSから発するMessageを拾って処理するのが定石。
.NETはそういう複雑な処理が出来ない(向かない)んで
出来るなら、whileで無限ループしてMessageを元にマウスの座標で
処理を分岐させるのが一般的なやり方

364 :デフォルトの名無しさん:2010/09/25(土) 16:59:33
そこでRoutedEventのあるWPFが颯爽と登場するわけです
颯爽といいながら遅いんだけど

365 :デフォルトの名無しさん:2010/09/25(土) 17:01:34
Clickイベントでおk


366 :デフォルトの名無しさん:2010/09/25(土) 17:04:31
WPFを使うくらいならしこしこイベントハンドラを書いた方がいいんじゃないかと、
僕は思うわけです。

367 :デフォルトの名無しさん:2010/09/25(土) 17:11:12
>>363
まさかC#初心者板でC++やれって言われるとは思いもしなかったよ
試しに.netだけで書いてみたけどやっぱりLabelの上だと反応しなかった

protected override void WndProc(ref Message m) {
switch (m.Msg) {
case 0x201:
// 処理
break;

}

base.WndProc(ref m);
}

>>364
はじめてWPFに魅力を感じた瞬間であった

368 :デフォルトの名無しさん:2010/09/25(土) 17:12:47
子コントロールのメッセージはnotifyでくるんじゃなかったっけ

369 :デフォルトの名無しさん:2010/09/25(土) 17:14:30
>>368
kwsk

370 :デフォルトの名無しさん:2010/09/25(土) 17:17:01
WPFはツリーのイベントが糞

371 :デフォルトの名無しさん:2010/09/25(土) 17:22:13
>>369
http://www.nitoyon.com/vc/reference/gui/static.htm

372 :デフォルトの名無しさん:2010/09/25(土) 17:25:46
WindowsフォームよりWPFの方が簡単ですか?

373 :デフォルトの名無しさん:2010/09/25(土) 17:26:49
Enabled=falseで親コントロールにメッセージが渡った気が

374 :デフォルトの名無しさん:2010/09/25(土) 17:27:39
慣れるとバインディングが楽なんだが
大体の人はWinFormの方が簡単だと感じるだろう

375 :デフォルトの名無しさん:2010/09/25(土) 17:30:00
>>371
ありがとう
なんかいまさら>>360の言いたかったことが分かってきた気がした
MFC勉強して出直してきます。

>>372
簡単さで行ったらWindowsフォームじゃない?

376 :デフォルトの名無しさん:2010/09/25(土) 17:34:46
>>375

結局はイベントなぞに頼らずにOSから発するMessageを拾ってやれって事だ

377 :デフォルトの名無しさん:2010/09/25(土) 17:34:59
>>373
灰色にならなければ完璧だった

>>374
初学者にとって慣れるまでがイバラの道すぎる気がする
まあ、俺の頭が悪いせいかもしれんが

378 :デフォルトの名無しさん:2010/09/25(土) 17:36:07
>>374
バインディングとテンプレートの素晴らしさは体感して欲しいと思う。

>>375
WinFormsの範囲でやれるなら簡単だけど
今回みたいにちょっと踏み込むと…ね。

379 :デフォルトの名無しさん:2010/09/25(土) 17:41:45
C#でアクションゲームが作りたいんですけど何のライブラリが一番簡単ですか?

380 :デフォルトの名無しさん:2010/09/25(土) 17:42:24
XNA

381 :デフォルトの名無しさん:2010/09/25(土) 17:44:36
>>379
DXライブラリ一択

382 :デフォルトの名無しさん:2010/09/25(土) 17:46:55
TextBoxをマルチラインにしてテキスト入力領域にしているのですが、
C-aをしても全選択にならなかったり、メモ帳レベルの編集機能がありません。

何か別のコントロールがあるのでしょうか?

383 :デフォルトの名無しさん:2010/09/25(土) 17:48:43
>>382
RichTextBox

384 :デフォルトの名無しさん:2010/09/25(土) 17:49:09
>>382
有償だけど、
オリエント文化社のInputMAN使えばおk

これで多くの.NET技術者が救われた。

ついでに同社のSpreadSheetもオススメ

385 :382:2010/09/25(土) 17:54:58
>>383
ありがとうございます。
目の前にあったのに気付けませんでした・・。

ですが、TextBoxをRichTextBoxに置き換えると今まで作っていた
コードが動かなくなりました。
単に.Textを取得してそれを加工して置き換えるというだけで、
改行コードなどで判別してるのですが、改行コードなどの扱いが
変わるのでしょうか?

386 :デフォルトの名無しさん:2010/09/25(土) 18:06:29
>>385
試してみたけどTextBoxの改行文字は\r\n、RichTextBoxの改行文字は\nになってるね

なんかRichTextBoxの仕様で\r\nが\nに変換されるらしいよ

387 :382:2010/09/25(土) 18:13:31
>>386
ありがとうございます。
書き込んでから私も試していたのですが、改行コードが変わってますね。
TextBoxの仕様がおかしいんじゃないかと思っていたら、やはり変だったんですね。

TextBoxのために正規表現に小細工を一杯入れたので、取っ払わなければ・・。

388 :デフォルトの名無しさん:2010/09/25(土) 18:15:38
>>384
昔の社名を教えるなよ
今はグレープシティな

389 :デフォルトの名無しさん:2010/09/25(土) 18:16:30
>>387
string text = richTextBox1.Text.Replace("\n", "\r\n");
とりあえずこうすれば変更しなくていいんじゃね?

390 :189:2010/09/25(土) 19:37:14
Modifiersをpublicにして解決しました
初期設定でprivateという事ですが、ここをpublicにして利用するのはあまりよくない事でしょうか?
form部品のプロパティの変更はForm1.csから行うべきですか?

391 :デフォルトの名無しさん:2010/09/25(土) 19:50:56
あまりよくないというか、やってる人はいない
普通は変更したいプロパティだけを公開するか
設定を行うクラスを内部クラスにしてしまう

392 :デフォルトの名無しさん:2010/09/25(土) 19:57:36
IEコンポーネントを使ってブラウザを作る場合、セキュリティ対策はコンポーネントにまかせる形でいいのでしょうか?

393 :デフォルトの名無しさん:2010/09/25(土) 20:00:53
貴方がどの程度のセキュリティを求めてるのか知らないので答えようがないです

394 :デフォルトの名無しさん:2010/09/25(土) 20:06:17
namespace、クラス、メソットって頭文字は大文字から始めるべきですか?

395 :392:2010/09/25(土) 20:09:03
インストールされているIEと同じセキュリティにしたいのですが、そうなってますかね?
プログラムを実行したらwebBrowser1.Navigate("http://example.com");を実行するだけのプログラムです



396 :デフォルトの名無しさん:2010/09/25(土) 20:13:40
>>394
ここ読んでください
http://msdn.microsoft.com/ja-jp/library/ms229002%28v=VS.100%29.aspx

上記のルールはクラスライブラリ(=外から見える部分)の話なので
見えない部分の命名規則は自分ルールを決めるか職場ルールに従ってください

397 :デフォルトの名無しさん:2010/09/25(土) 20:17:16
俺がルールだ

398 :デフォルトの名無しさん:2010/09/25(土) 20:24:47
俺クラスのインスタンスなどそこら中におるわい

399 :デフォルトの名無しさん:2010/09/25(土) 21:49:36
そうかい

400 :デフォルトの名無しさん:2010/09/25(土) 21:53:37
>>396
参考になります。ありがとうございます

401 :デフォルトの名無しさん:2010/09/25(土) 21:59:00
>>397
参考になります。ありがとうございます

402 :デフォルトの名無しさん:2010/09/25(土) 22:04:19
俺がルールだを参考にして何をどうする気だよ

403 :デフォルトの名無しさん:2010/09/25(土) 22:35:02
WPFのルーティングイベントってFormsには無いの?
あれないと不便じゃない?WPFから入ったし想像できんわ。

404 :デフォルトの名無しさん:2010/09/25(土) 23:47:28
フォーム3にコンボボックスを6つ貼り付けて
form3.ShowDialog();
form3_loadのところにコンボボックス1つあたり50個ほどの項目を追加(Beginupdate使用)すると
フォームが表示されるのが3秒ほどかかり遅いのですが
コンボボックスはこんなに遅いんでしょうか?


405 :デフォルトの名無しさん:2010/09/25(土) 23:49:32
不便だからできたんだろ。

でも、Click とかのバブル アップは Fomrs のイベントでもあったような。
トンネル ダウン(PreviewClick とか)はなかったんじゃないかと。

というか、WPF でもあんまり生のユーザー入力イベント拾うことないけどね。
たいてい、Command を通すし。

406 :デフォルトの名無しさん:2010/09/25(土) 23:50:41
>>404
1個何か追加するたびに再描画かかるようなコード組んでせいじゃない?


407 :デフォルトの名無しさん:2010/09/25(土) 23:51:39
WM_NOTIFY介してFormにも伝わるけど不便

408 :デフォルトの名無しさん:2010/09/26(日) 00:04:09
C#を高速化する裏技ありませんか?
PHPならprintは使うなechoを使え見たいなやつです

409 :デフォルトの名無しさん:2010/09/26(日) 00:14:15
C# のって言われると、こまごまとあるにはあるけども、
それよりは、GUI フレームワークの再描画減らすとか、そういうのの方が効果高いしなぁ。
実測しながら色々試すのが一番いいよ。

410 :デフォルトの名無しさん:2010/09/26(日) 00:16:23
>>408
Stringをあまり使わないで StringBuilder使えぐらい…

411 :デフォルトの名無しさん:2010/09/26(日) 00:17:08
「foreachは遅いから使うな、forを使え!」とか先輩に言われたな。
1万回やったって体感できねーっての

412 :デフォルトの名無しさん:2010/09/26(日) 00:20:57
ナノ秒の世界に生きてるのかも知れんじゃあないか
その先輩は

413 :デフォルトの名無しさん:2010/09/26(日) 00:25:26
string[] s = 100個の文字
for(100回ループ)


}

414 :デフォルトの名無しさん:2010/09/26(日) 00:26:28
途中カキコごめん

ループ内は
comboBox1.Items.Add(s[i]);

415 :デフォルトの名無しさん:2010/09/26(日) 00:26:36
居もしないボトルネックと戦ってるうちは初心者だってじいさまが言ってただ

416 :デフォルトの名無しさん:2010/09/26(日) 00:27:13
PHPだとforeachのほうが効率よくて早い

417 :デフォルトの名無しさん:2010/09/26(日) 00:27:42
配列のforeachは最速。


418 :デフォルトの名無しさん:2010/09/26(日) 00:28:32
>Stringをあまり使わないで StringBuilder使えぐらい…
多分正しく活用されることはないアドバイス。


419 :デフォルトの名無しさん:2010/09/26(日) 00:29:27
ソース中のprintやechoを全部どうのこうのするよりも
1回のSQL実行減らした方が効果があるよ

420 :デフォルトの名無しさん:2010/09/26(日) 00:34:31
>>413
string[] s = 100個の文字

SuspendLayout();

for(100回ループ)

comboBox1.Items.Add(s[i]);
}
ResumeLayout();

こうすれば少しはよくなるんじゃね?

421 :デフォルトの名無しさん:2010/09/26(日) 00:38:56
comboBox1.Items.AddRange(s);
の方がいいかも

422 :デフォルトの名無しさん:2010/09/26(日) 00:58:43
C#に速度を求めるなっていう
Win32APIとかCとかアセンブリとかを勉強すると、内部の構造がより分かるようになって高速化の仕方がわかるようになるかも
まあ、高速化のためだけにそんなことするやつはいないと思うけど

423 :デフォルトの名無しさん:2010/09/26(日) 01:06:01
高速化の仕方ってプロファイラでループ減らしたりメモ化したり、
逆に省メモリにしたりっていうアルゴリズム的なものだよね

元々C#を選んだ時点で中間コードに落として運用楽にしようぜ!ってゆーのが前提だとおもうんじゃ


そこでjavaですよ

424 :デフォルトの名無しさん:2010/09/26(日) 01:06:21
たぶん体感できるぐらい遅いならC#が遅いんじゃなく他に原因があるんだろうけど
気づかないんだろうな

425 :デフォルトの名無しさん:2010/09/26(日) 01:08:11
木を見て森を見ないから

426 :デフォルトの名無しさん:2010/09/26(日) 01:17:04
>>421
だな
せっかく配列作ったのに繰り返したら意味が無い
Itemの内部的には新しいstring作ることに替わりがないだろうし
気にするほど早くなるとは思えないけど

427 :デフォルトの名無しさん:2010/09/26(日) 01:18:01
コンボボックスがあると異様に遅いなあと思ってさ。
リストボックスとかリストビューとかは遅く感じないんだけど。

428 :デフォルトの名無しさん:2010/09/26(日) 01:20:45
まあ、大抵の場合はアルゴリズム的に無駄があったり、とくに描画周りはシビアだから、ネットとかで勉強するべきだよね
ところで、だれかプロファイラの使い方教えて

429 :デフォルトの名無しさん:2010/09/26(日) 01:22:57
>>423
どゆこと?


430 :デフォルトの名無しさん:2010/09/26(日) 01:24:40
Stopwatchはためしてないけど
startTime = Environment.TickCountとかで計ると
Beginupdateしたitem.Addと
item.Adddrangeでは前者の方が早かったもんで。

431 :デフォルトの名無しさん:2010/09/26(日) 01:31:50
実際にComboBoxにItem100個とか持たせるアプリって無いだろうけど
あったら使い方間違えてるとしか言えない

432 :デフォルトの名無しさん:2010/09/26(日) 01:36:22
BeginUpdateなんてあったのか。
試してみたけど3倍くらい効率いいのな。

433 :デフォルトの名無しさん:2010/09/26(日) 01:54:08
>>431
一概に否定はできないでしょ。
VSのエディタの上部についてる奴を見れば納得すると思うけど。

434 :デフォルトの名無しさん:2010/09/26(日) 08:07:21
>>431
業務アプリじゃ普通だと思うけど?

435 :デフォルトの名無しさん:2010/09/26(日) 08:49:21
よくあるところで都道府県選択でも47項目だもんな
それにしたって100個だと探すの大変そうだな

436 :デフォルトの名無しさん:2010/09/26(日) 09:43:23
プログラミングC#というオライリーの本を読んでいるのですが、
インデクサ、リフレクション、デリゲートの意味がよくわかりません。

簡単な説明はないでしょうか?
Wikipediaを読んでみたのですが、よくわかりませんでした。

437 :デフォルトの名無しさん:2010/09/26(日) 09:54:27
>>410
それは明確に差が出るね。

というか、ループの奥であんまり new するな(string の + は新しいインスタンス作る)というのが基本。

>>411
そりゃそうよ、配列に対する foreach って最適化の結果、for と同じコードになるもの。

438 :デフォルトの名無しさん:2010/09/26(日) 09:55:58
インデクサはわかるでしょ

自前のクラスで[ ]使って見た目が配列っぽい機能を提供する仕組み

439 :デフォルトの名無しさん:2010/09/26(日) 09:58:06
>>437
ienumerableの実装がタコだったらforのほうが早いかなw

440 :デフォルトの名無しさん:2010/09/26(日) 09:58:51
>>436
インデクサー … 配列の a[i] みたいな [] を自前実装。C++ の operator[]
リフレクション … 自己反映的という意味。実行時にプログラムのメタデータ読み出したり、動的にコード生成すること。
デリゲート … メソッドを格納するための型。Cの関数ポインターを OOP に適合(インスタンスメソッドも代入可能)させたもの。

Wikipedia、概要しか書かれてないじゃん。
最初にそれ見て学ぶとか無理だろ。
↓この辺りじゃダメ?

http://ufcpp.net/study/csharp/oo_indexer.html
http://ufcpp.net/study/csharp/sp_delegate.html
http://ufcpp.net/study/csharp/sp_reflection.html

441 :デフォルトの名無しさん:2010/09/26(日) 10:00:25
>>439
それはでも、foreach の代わりに for が使える時点で、大した列挙じゃないんでは。
IList 実装クラスみたいに a[i] でアクセスできるような。

442 :デフォルトの名無しさん:2010/09/26(日) 10:03:11
>>441
next内部で大量にエラーチェックしてたり、新規オブジェクト作ってたり、同期待ちしたり…

本来はNGなんだけどw

443 :デフォルトの名無しさん:2010/09/26(日) 10:25:59
>>420
それやっても変わらなくね?
Layoutは使ってないんだから

444 :デフォルトの名無しさん:2010/09/26(日) 10:26:19
>>442
参考までに
簡単にforeachからforに書き換えられる、
かつIEnumerableの実装が腐ってる
っていう例を教えてもらえまいか

445 :デフォルトの名無しさん:2010/09/26(日) 10:46:05
ToolStripMenuItemをループを使って増やしているのですが、そのメニューをクリックすると
メニュー項目に応じたIDを特定のメソッドに渡したいのですが、そういうことはできませんか?
局面によってToolStripMenuItemが違うので、onclickイベントで取得したところで、どのアイテム
がクリックされたのか判断することができません

446 :デフォルトの名無しさん:2010/09/26(日) 10:52:09
Tagにでも突っ込んでおけ

447 :デフォルトの名無しさん:2010/09/26(日) 10:54:01
あるプログラムの起動時間を計測したいんですけどどうやるのでしょうか?

448 :デフォルトの名無しさん:2010/09/26(日) 10:55:58
起動時間ってなんだい?

449 :デフォルトの名無しさん:2010/09/26(日) 10:59:13
>>445
匿名メソッド使えばいいんじゃね

for (int i = 0; i < 10; i++) {
ToolStripButton b = new ToolStripButton();
int id = i;
b.Click += (sender, e) => {
SomeMethod(id);
};
toolStrip1.Items.Add(b);
}


450 :デフォルトの名無しさん:2010/09/26(日) 11:03:04
>>444
いえいえ実例はあげられないですけど
自作クラスなどでIEnumerableの実装が腐ってる場合は
for使えってのもあながちまちがっていないかなと思ったまででw

451 :デフォルトの名無しさん:2010/09/26(日) 11:07:42
匿名メソッドじゃなくてラムダ式だった。
まあどっちもおんなじか

452 :デフォルトの名無しさん:2010/09/26(日) 11:11:09
遅延…

453 :デフォルトの名無しさん:2010/09/26(日) 12:30:39
>>448
12:30分にメモ帳を起動して、13:03分に終了したら33分起動してたということです

454 :デフォルトの名無しさん:2010/09/26(日) 12:45:53
Process.StartTime(とExitTime)
「かつて実行されていた」のは無理だからな

455 :デフォルトの名無しさん:2010/09/26(日) 13:23:45
遅延実行…

456 :デフォルトの名無しさん:2010/09/26(日) 13:24:36
初心者向けにお題をください
夕方までに作ってcodepadに貼り付けるのでご指摘おねがいします

457 :デフォルトの名無しさん:2010/09/26(日) 13:33:10
64*64マスの迷路を乱数で生成して表示しろ
通路と壁の幅をともに1とする
入り口と出口は対面の壁に作ること

458 :デフォルトの名無しさん:2010/09/26(日) 14:29:16
C#で作ったDLLはC#でしか使えないって聞いたのですが
ラッパーDLLみたいなのってありませんか?

459 :デフォルトの名無しさん:2010/09/26(日) 14:30:24
何がしたいのか言語名を出して具体的に書いてください

460 :デフォルトの名無しさん:2010/09/26(日) 14:30:27
>>458
>C#で作ったDLLはC#
C#で作ったDLLは.net関連の言語ならどれでもいけるはず・・・

461 :デフォルトの名無しさん:2010/09/26(日) 14:49:10
COM公開すれば、VB6だとかExcelとかからも使えるよ。

462 :デフォルトの名無しさん:2010/09/26(日) 15:20:34
>>457
乱数は生成できたのですがどうやって道を作るのかわかりません


463 :デフォルトの名無しさん:2010/09/26(日) 15:22:27
道は自分で作るものだ

464 :デフォルトの名無しさん:2010/09/26(日) 15:23:43
>>462
ぐぐればネットになんぼでもころがってるぞ
http://www.hi-ho.ne.jp/i-soft/programming/oprg001.htm

465 :デフォルトの名無しさん:2010/09/26(日) 15:25:05
一応あれか
アップを考える上ではドラクエタイプとウィズタイプがあるのか
マスが壁や床など全部をかねるタイプと
マスは基本床なタイプ

466 :デフォルトの名無しさん:2010/09/26(日) 15:26:43
>>464
ちょwwww無理wwwww

467 :デフォルトの名無しさん:2010/09/26(日) 15:35:03
>>466
この辺のことから逃げるようなら向いてないよw

468 :デフォルトの名無しさん:2010/09/26(日) 15:42:38
お題をくださいとか調子に乗るからだよ
入門書よんでなさい

469 :デフォルトの名無しさん:2010/09/26(日) 15:51:02
もっと初心者向けお願いします


470 :デフォルトの名無しさん:2010/09/26(日) 16:07:52
宿題スレでも行ったら?

471 :デフォルトの名無しさん:2010/09/26(日) 16:23:05
>>461
COM化するのめんどくさいしなかなか上手くいかないんだよね

472 :デフォルトの名無しさん:2010/09/26(日) 16:26:18
>>471
C++/CLIに間を取り持ってもらうとか

473 :445:2010/09/26(日) 16:57:50
>>449
ありがとうございます。そんな書き方ができるんですね。

まだうまく動いていないのですが、
(sender, e)
の個所で、
ローカルの変数 'sender' をこのスコープで宣言することはできません。これは、'親またはカレント' スコープで別の意味を持つ 'sender' の意味が変更されるのを避けるためです。
というエラーがeにも出てしまいます。
これは何の変数を表しているのでしょうか?
ラムダ式でしらべてみたのですが、この場合何を表しているのかがわかりませんでした。


474 :デフォルトの名無しさん:2010/09/26(日) 16:59:42
OnClickの引数と名前が被ってるだけ

475 :デフォルトの名無しさん:2010/09/26(日) 17:05:25
ClickされたボタンなりラベルのTextプロパティの内容を取りたいのですが、
どのようにすればよいのでしょうか?

476 :デフォルトの名無しさん:2010/09/26(日) 17:07:15
>>473
おい。>>446を無視してわざわざそんなコードにしたのか?
ToolStripMenuItem.Tagに入れておいて
OnClickで senderをToolStripMenuItemにキャストして読むだけだぞ

477 :デフォルトの名無しさん:2010/09/26(日) 17:07:57
(sender as Button).プロパティ名

478 :デフォルトの名無しさん:2010/09/26(日) 17:08:54
>>475
>>476の最後でキャストする型を変えるだけ

479 :デフォルトの名無しさん:2010/09/26(日) 17:27:46
Tag便利だね、今まで知らなかったよ

480 :デフォルトの名無しさん:2010/09/26(日) 17:40:50
WPFやSilverlightのBindがあればもっと何でも出来るけどな

481 :デフォルトの名無しさん:2010/09/26(日) 17:53:45
>>468
上から目線乙

482 :デフォルトの名無しさん:2010/09/26(日) 17:55:27
>>472
GDI+をCOM化してOfficeから使えるラッパー作ろうとしたことがあるんだけど
なかなか上手くいかなかった
それは思いつかなかった

483 :デフォルトの名無しさん:2010/09/26(日) 18:09:57
vectorのカテゴリの中で簡単な技術でできそうなカテゴリはどれですか?
ttp://www.vector.co.jp/vpack/filearea/win/

484 :デフォルトの名無しさん:2010/09/26(日) 18:21:13
ユーティリティ

485 :デフォルトの名無しさん:2010/09/26(日) 18:23:28
484=神様
ユーティリティで何か作ります

486 :デフォルトの名無しさん:2010/09/26(日) 18:30:20
VC#2010でターゲットフレームワークを.NET Framework4.0 Cliant Profileのままなんですが
Messagebox.Show("test")を表示するコードであってもこのままコンパイルしたプログラムはC#2.0では動かないんですか?

487 :デフォルトの名無しさん:2010/09/26(日) 18:45:13
うん

488 :デフォルトの名無しさん:2010/09/26(日) 18:46:56
TextBoxに入力された文字列がComboBoxやCheckedListBoxの中にあれば、チェック(選択)をしたいのですが、
どのように記述すればいいでしょうか?
foreachで回せばいいと考えているのですが、何をどう回せばいいのかがまだ想像できません。

489 :デフォルトの名無しさん:2010/09/26(日) 18:49:41
C#2.0で動かすにはどうコンパイルしたらいいでしょうか?

490 :デフォルトの名無しさん:2010/09/26(日) 18:56:42
>>489
もう作っちゃったやつならソリューションエクスプローラーでプロジェクトのプロパティ出して
アプリケーションの対象のフレームワークを変更すればいい。

491 :デフォルトの名無しさん:2010/09/26(日) 18:58:10
>>490
ありがとうございます

492 :デフォルトの名無しさん:2010/09/26(日) 19:13:09
>>491
デフォルトでLINQとか余分なものがImportしてあったり
意外とめんどくさいけどがんばれ

493 :デフォルトの名無しさん:2010/09/26(日) 19:16:41
XNAとDXライブラリはどっちが簡単ですか?
ゲーム作る場合、RPGとアクションとシューティングはどれが簡単ですか?もっと簡単なゲームってありますか?

494 :デフォルトの名無しさん:2010/09/26(日) 19:17:57
>>488
FindStringExact使えばいいんでね?

495 :デフォルトの名無しさん:2010/09/26(日) 19:21:47
>>493
楽なのは XNA だと思うけど。
Managed な DX なら別にそれほど XNA と変わらない気もする。
C++ で native な DX ならやめとけ。

シューティングが楽かな、たぶん。

496 :デフォルトの名無しさん:2010/09/26(日) 19:47:00
>>494
そんな便利なものがあるのですね・・

ありがとうございました

497 :デフォルトの名無しさん:2010/09/26(日) 20:03:52
フォームに非可視の値を置いておくことはできますか?

498 :デフォルトの名無しさん:2010/09/26(日) 20:10:48
>>497
それ、HTML脳過ぎるだろ。
ウェブアプリでhiddenタグ使うのは、サーバーに状態持ちにくいからよ。

499 :デフォルトの名無しさん:2010/09/26(日) 20:12:26
Form継承したクラスにprivateフィールド持っとけばいいだけじゃねえか

500 :デフォルトの名無しさん:2010/09/26(日) 20:21:35
見えないラベルでええやん

501 :デフォルトの名無しさん:2010/09/26(日) 20:52:52
非可視の値って単に使わない変数に値を持っておけば良いだけだろう・・・
それとも他のクラスやプロセスから見えないって意味なのか?

502 :デフォルトの名無しさん:2010/09/26(日) 21:43:58
普通、不可視じゃないの?

503 :デフォルトの名無しさん:2010/09/26(日) 21:47:21
>>502
普通は変数に保持します。
値一つ保持するためにコントロール使うとか馬鹿げてる。

504 :デフォルトの名無しさん:2010/09/26(日) 21:50:58
デバッグ時は見えるようにしておいて・・・ なんてのをやったことがあるな。

505 :デフォルトの名無しさん:2010/09/26(日) 21:52:49
>>504
そんなものはMessageBoxでも使えば良いだろう

506 :デフォルトの名無しさん:2010/09/26(日) 21:54:47
>>503
いや非可視って言葉がおかしいと思って。

507 :デフォルトの名無しさん:2010/09/26(日) 21:58:15
普通、「不可視」だな。

508 :デフォルトの名無しさん:2010/09/26(日) 22:00:25
>>505
Debug.Assertじゃなくて?

509 :デフォルトの名無しさん:2010/09/26(日) 22:45:07
あるexeから
A.exeを呼び出す →戻り値に応じて処理
B.exeを呼び出す →戻り値に応じて処理

これを交互に規定回数行います

A.exeでは
〜いろいろな処理〜
return A;

B.exeでは
〜いろいろな処理〜
return B;

こんな感じで戻り値で実行結果を返すようになっています
C#内でプロセスを起動することはできるのですが、その戻り値を取得することってできますか?
一応Win32APIのGetExitCodeProcessでできることは分かったのですが、敷居が高くC#のみでできたらそうしたいと思っています

510 :デフォルトの名無しさん:2010/09/26(日) 22:47:20
その.exeがAPIを公開していればできるんじゃないでしょうか

511 :デフォルトの名無しさん:2010/09/26(日) 22:49:22
Process.ExitCode

512 :デフォルトの名無しさん:2010/09/26(日) 22:49:25
http://www.google.com/search?num=50&hl=ja&lr=&safe=off&q=.net+process+exit+code

513 :デフォルトの名無しさん:2010/09/26(日) 22:50:35

ttp://jeanne.wankuma.com/tips/csharp/process/exitcode.html

514 :デフォルトの名無しさん:2010/09/26(日) 22:53:23
こちらのスレの先生方はgithubとかcodepadなどでコードを公開してたりしませんか?

515 :デフォルトの名無しさん:2010/09/26(日) 22:55:07
俺はしてない

516 :デフォルトの名無しさん:2010/09/26(日) 23:12:08
MIDIで音を鳴らしたいのですが何ていう名前空間を使うのでしょうか?
MIDIを鳴らすというのはMIDIファイルを再生するという意味ではなく、直接MIDIで音を鳴らすってことです

517 :デフォルトの名無しさん:2010/09/26(日) 23:30:33
>>516
Beep



518 :デフォルトの名無しさん:2010/09/26(日) 23:36:07
>>511-513
ありがとうございました

519 :デフォルトの名無しさん:2010/09/26(日) 23:39:04
>>517
BeepはMIDIではないので遠慮しますすいません
↓みたいな事がやりたいのですがそういうライブラリはないのでしょうか・・・
ttp://www.ne.jp/asahi/nagoya/ahomaro/builder/cpb-062.html

520 :デフォルトの名無しさん:2010/09/26(日) 23:44:17
>>519
現時点では無いと思います
win32APIやDirectXを使うか、公開されているラッパーを使用して下さい

521 :デフォルトの名無しさん:2010/09/26(日) 23:46:32
そうでしたか・・・
win32APIでやってみます
ありがとうございます

522 :デフォルトの名無しさん:2010/09/26(日) 23:51:40
midiOutOpen C#あたりでググると同じ事やってる人が居るから参考にするといいよ

523 :デフォルトの名無しさん:2010/09/27(月) 00:21:37
そういえばmidiって最近聞かなくなったな

524 :デフォルトの名無しさん:2010/09/27(月) 00:54:10
テンポラリーファイルを使用しながら動くリストに512kbぐらいのギャップバッファーをぶち込んでテキストエディタを作ってみた
ためしに80MBぐらいのファイルを読み込んでみたら、こういう結果になった

サイズ無制限のギャップバッファー プライベートワーキングセット:238MB
ディスクベースのリスト プライベートワーキングセット:228MB

なんで不要な奴はディスクに書き出してるのにメモリー使用量が大差ないの?すごく不思議なんだが

【ディスクベースリスト実装方法】
・不要なエントリーはディスクに書き出す(選ぶ基準はFIFO)
・書き出す際はbinaryfomartterを使う

【ソースコード】
http://sourceforge.jp/projects/fooeditor/svn/view/trunk/FooEditEngine/Buffer/?root=fooeditor


525 :デフォルトの名無しさん:2010/09/27(月) 01:11:14
ガベコレについて勉強しろ。

526 :デフォルトの名無しさん:2010/09/27(月) 01:38:15
>>524
GCについて勉強してきた
・使用されなくなったオブジェクトは予約領域へ移動する
・使用されなくなったオブジェクトかどうかはマークアンドスイープ、コピーGCなどで判別する
・メモリー不足にならないと予約領域は解放されない

であってる?


527 :デフォルトの名無しさん:2010/09/27(月) 02:00:04
メモリ不足にならなくてもGC.Collect()すれば解放される

528 :デフォルトの名無しさん:2010/09/27(月) 02:03:28
>>523
JASRACが個人が耳コピで自作したMIDIサイトにも課金→MIDIサイト絶滅

529 :デフォルトの名無しさん:2010/09/27(月) 02:20:41
>>527
読み込んだ直後にやってみたんだが、たいして解放されなかった
オブジェクトをつかんで離さない奴でもいるのかね…


530 :デフォルトの名無しさん:2010/09/27(月) 02:30:43
>>529
tempFileがオープンのままだとファイルがメモリに展開されたままとかっていう可能性はないかな

531 :デフォルトの名無しさん:2010/09/27(月) 02:48:46
>>539
tempFileは開きっぱなしだが、開いたままだとずっとメモリーに残るのか?

532 :デフォルトの名無しさん:2010/09/27(月) 02:52:48
>>531
すまん適当なこと言ってしまった。
試してみたけどちゃんとメモリに残らないようになってた。

533 :デフォルトの名無しさん:2010/09/27(月) 03:13:05
プロファイラ使えばどこで何がメモリ消費してるのかすぐ分かるのに
そのくらいならCLR Profiler(MS製・無償)あたりで十分。

534 :デフォルトの名無しさん:2010/09/27(月) 05:15:21
>>533
さっそく試してみたんだが、なぜか、使えなかった
.net 4.0だとダメなのか…

535 :デフォルトの名無しさん:2010/09/27(月) 08:45:41
>>526
そんな感じ。
で、常に GC 用の領域は確保されっぱなし。
OS 上、確保しっぱなしの領域の中で、GC 対象のメモリを .NET Framework が管理してる。

GC してメモリを解放したところで、それは .NET 上の話であって、OS から見ると確保されっぱなし。
メモリに余裕のあるデスクトップ機器の場合はその方がパフォーマンスいい。

536 :デフォルトの名無しさん:2010/09/27(月) 09:04:27
ToolStripMenuItemの項目にウスオーバーしたというイベントはどのように取得するんですか?

537 :デフォルトの名無しさん:2010/09/27(月) 12:21:57
>>534
フリーで.NET4対応だとXteProfilerぐらい?

538 :デフォルトの名無しさん:2010/09/27(月) 12:24:43
C#4.0でコンパイルしたらメモリとか速度とか向上しますか?

539 :デフォルトの名無しさん:2010/09/27(月) 12:52:53
家のDDR2がDDR3に向上しちゃうなら4.0やるわ

540 :デフォルトの名無しさん:2010/09/27(月) 13:45:32
>>538
.NET4使うだけで
起動パフォーマンスが向上して、バックグラウンドGCでStop the Worldが軽減されたりする。
NGenも4.0になってマルチコア/プロセッサを活用するようになった。

WPF/WF/WCFあたりはかなり手が加えられてパフォーマンスとスケーラビリティが改善されたってさ

541 :デフォルトの名無しさん:2010/09/27(月) 14:06:50
俺のスロット版PentiumIIもC#4.0さえあれば・・

542 :デフォルトの名無しさん:2010/09/27(月) 14:12:16
骨董品じゃねぇかw

543 :デフォルトの名無しさん:2010/09/27(月) 14:16:47
C#4.0の次バージョンはC#5.0か4.5になりますか?
今開発してたりベータ版が出てたりしませんか?

544 :デフォルトの名無しさん:2010/09/27(月) 14:17:50
動作環境.NET Framework 4.0でぼくの家のパソコンが3.0なんですけど
4.0をインストールする方法を教えてください

545 :デフォルトの名無しさん:2010/09/27(月) 14:20:19
>>543
出るのは当分先の話
>>544
Windows Update

546 :デフォルトの名無しさん:2010/09/27(月) 14:43:38
C#でデザインパターンは覚えたほうがいいですか?

547 :デフォルトの名無しさん:2010/09/27(月) 14:44:41
C#でダウンローダーを作るとき、あるファイルのダウンロードが済んだかどうか知ることってできますか?

548 :デフォルトの名無しさん:2010/09/27(月) 14:47:10
>>547
知れなダウンローダは作れないだろ。

549 :デフォルトの名無しさん:2010/09/27(月) 15:12:46
初心者コードですがリファクタリングお願いします

using System;

namespace Hello
{
class Test()
{
public void Main()
{
Console.Write("Hellow World!!");
}
}
}

550 :デフォルトの名無しさん:2010/09/27(月) 15:15:50
>>549
そういうネタをやるときには、スペルミスはわざとでも入れてはいけない。

551 :デフォルトの名無しさん:2010/09/27(月) 15:17:01
>>549
出力文字列を定数化、もしくはリソース化すべき

552 :デフォルトの名無しさん:2010/09/27(月) 15:53:38
Console.Write("Helloween");

553 :デフォルトの名無しさん:2010/09/27(月) 16:42:32
これがパースできて
DateTime.ParseExact("Nov 16 20:49:37 1994", "MMM dd HH':'mm':'ss yyyy", DateTimeFormatInfo.InvariantInfo, DateTimeStyles.None);
曜日を入れるとFormatException吐くんだけどなんでだろ
DateTime.ParseExact("Sun Nov 16 20:49:37 1994", "ddd MMM dd HH':'mm':'ss yyyy", DateTimeFormatInfo.InvariantInfo, DateTimeStyles.None);


554 :デフォルトの名無しさん:2010/09/27(月) 16:53:50
そりゃー、1996/10/16が日曜日じゃないからだろう

555 :デフォルトの名無しさん:2010/09/27(月) 17:10:23
!!
DateTime.ParseExact("Wed Nov 16 20:49:37 1994", "ddd MMM dd HH':'mm':'ss yyyy", DateTimeFormatInfo.InvariantInfo, DateTimeStyles.None);
これでパースしてくれました

DateTimeはそこまで見てたのかorz
>>554 ありがとう!

556 :デフォルトの名無しさん:2010/09/27(月) 17:28:35
Mainはstaticじゃないのか

557 :デフォルトの名無しさん:2010/09/27(月) 17:51:27
>>546
知っといて損はないけどそっくりそのままC#に持ってくるのはダメ
特にオブザーバやイテレータはC#ではもともと完全に言語に組み込まれてるので使用禁止

558 :デフォルトの名無しさん:2010/09/27(月) 17:53:54
partial class のおかげで、
visitor パターンが書きやすくて濡れる

559 :デフォルトの名無しさん:2010/09/27(月) 18:06:16
VC#でProgram.csとForm1.csのコード量って最小限に収めたほうがいいですか?
目安として何行ぐらいまでに収めたほうがいいってのありませんか?

560 :デフォルトの名無しさん:2010/09/27(月) 18:13:08
宗教論の予感

561 :デフォルトの名無しさん:2010/09/27(月) 18:22:19
C#でZIPを解凍したいのですが何の名前空間を書けばいいか教えてください
ZIPだけ解凍できればいいんです

562 :デフォルトの名無しさん:2010/09/27(月) 18:23:46
標準ライブラリにはない

563 :デフォルトの名無しさん:2010/09/27(月) 18:26:21
>>561
zipだけなら外部のライブラリがあったな

564 :デフォルトの名無しさん:2010/09/27(月) 18:26:25
C#には出来ない分野ってなんですか?

565 :デフォルトの名無しさん:2010/09/27(月) 18:30:44
自分でzip解釈して圧縮形式がdeflateならSystem.IO.Compression.DeflateStreamで展開できると思うよ

566 :デフォルトの名無しさん:2010/09/27(月) 18:35:07
>>564
LowLevelじゃないグローバルフック

567 :デフォルトの名無しさん:2010/09/27(月) 18:37:23
C#4.0が入ってない環境に再配布ランタイム?最分布ランタイム?っていうのを自動的にインストールさせてあげるのって実現できますか?


568 :デフォルトの名無しさん:2010/09/27(月) 18:48:14
ちょっと前から湧いてる質問者さん4.0にこだわり過ぎじゃあないすかぁ?

569 :デフォルトの名無しさん:2010/09/27(月) 19:21:19
>>565
有難う御座います

570 :デフォルトの名無しさん:2010/09/27(月) 19:35:32
>>546
貧乳よりは巨乳のほうがいいだろ?
C#のデザインパターンの本が出てたはずだから参考程度でも読んでみ

571 :デフォルトの名無しさん:2010/09/27(月) 19:40:42
今時2.0にしがみ付いてる人は時代遅れだから3.0以上で作ればおk

572 :デフォルトの名無しさん:2010/09/27(月) 19:45:02
貧乳も巨乳もいいもんだ。まんべんなく楽しみたいな

573 :デフォルトの名無しさん:2010/09/27(月) 19:50:21
↓みたいなの最近流行ってますよね、初ねミクとかも
ttp://www.geocities.co.jp/SiliconValley-Sunnyvale/1411/
こういうの作りたいんですがTransparencyKeyで作るのが通ですか?

574 :デフォルトの名無しさん:2010/09/27(月) 19:53:16
巨乳の方がいいとか言い切る男の人って…

575 :デフォルトの名無しさん:2010/09/27(月) 19:53:49
画像をドラッグアンドドロップして表示させるプログラムを作っているのですが、ドラッグアンドドロップできません。
普通ドラッグするとカーソルの横に+が表示されますが、作成したフォーム上ではそれが表示されないです。
どこが間違っているのでしょうか?フォームのプロパティでもAllowDropはtrueにしています。
環境はXPでVisual C# 2010です。


using System;
 〜略〜
using System.Windows.Forms;

namespace WindowsFormsApplication1{
public partial class Form1 : Form{
public Form1(){
InitializeComponent();
}
private void Form1_Load(object sender,EventArgs e){
panel1.AllowDrop=true;
}
private void panel1_DragEnter(object sender,DragEventArgs e){
if(e.Data.GetDataPresent(DataFormats.FileDrop))e.Effect=DragDropEffects.Copy;
else e.Effect=DragDropEffects.None;
}
private void panel1_DragDrop(object sender,DragEventArgs e){
string[] fileName=(string[])e.Data.GetData(DataFormats.FileDrop,false);
pictureBox1.Image=Image.FromFile(fileName[0]);
}
}
}

576 :デフォルトの名無しさん:2010/09/27(月) 19:54:39
Visual Studio 2008のC#Webアプリです。
処理に時間がかかるので、マウスカーソルを砂時計に
しようと思い調べました。
System.Windows.Forms.Cursor.Current = Cursors.WaitCursor;
とやってもマウスカーソルは変わらず、
System.Windows.Forms.Application.UseWaitCursor = true;
としてもダメでした。
デバッグでブレークポイントを入れてみましたが、
カーソルが変わる気配すらありませんでした。
なにか方法があれば教えてください。

577 :デフォルトの名無しさん:2010/09/27(月) 19:55:05
>>573
http://cs2ch.blog123.fc2.com/blog-entry-81.html
これの画像差し替えればできるんじゃね?

578 :デフォルトの名無しさん:2010/09/27(月) 20:02:04
デジャヴが酷い

579 :デフォルトの名無しさん:2010/09/27(月) 20:08:59
マウスをクリックじゃなくて マウスオーバーした時のイベントってとれますか?
メニューに使いたいのですが

580 :デフォルトの名無しさん:2010/09/27(月) 20:12:05
ゲーム作るならC#とHSPどっちが早いですか?

581 :デフォルトの名無しさん:2010/09/27(月) 20:13:32
ダントツでHSPに決まってる

582 :デフォルトの名無しさん:2010/09/27(月) 20:16:21
MouseEnterってありませんでしたっけ

583 :デフォルトの名無しさん:2010/09/27(月) 20:35:11
このスレ、平日昼間に賑わってるなw
プログラマって暇なのか?仕事無いのか?
てかC#使いって結構多いのな

584 :デフォルトの名無しさん:2010/09/27(月) 20:35:27
このスレはいつから新人と教育係が隣で話ししてるような状況になったんだ?
報酬ももらってないし業務命令も受けてないけど

585 :デフォルトの名無しさん:2010/09/27(月) 20:43:51
C#好感度アップキャンペーンでMS社員が動員されてるとかwww

586 :デフォルトの名無しさん:2010/09/27(月) 20:43:53
>>584
だれもお前に聞いてないから答えなくていいよ

587 :デフォルトの名無しさん:2010/09/27(月) 20:45:17
>>584
隔離スレにお戻り下さい

588 :デフォルトの名無しさん:2010/09/27(月) 21:02:24
>>584
隔離スレにお戻り下さいね

589 :デフォルトの名無しさん:2010/09/27(月) 21:03:21
     カタカタ
  || ̄ Λ_Λ
  ||_(Д`; ) 「なに?この流れ・・・」
  \⊂´   )
    (  ┳'

590 :デフォルトの名無しさん:2010/09/27(月) 21:33:06
>>589
隔離スレにお戻り下さい

591 :デフォルトの名無しさん:2010/09/27(月) 21:37:08
>>584
スレタイ見ましょうね

592 :デフォルトの名無しさん:2010/09/27(月) 23:29:03
コンボボックスで質問したものです。
addされる前は表示したい文字列1つだけをaddして
combobox_Enterイベントでコンボボックスからなにか登録したいときは直前に全項目addすることにより
劇的に改善されたますた。

アドバイスくれた人、ありがとうな。
考えが煮詰まったときって他人の意見ってリフレッシュになるね。


593 :プロ初心者:2010/09/27(月) 23:29:20
>>584
ぼくの学習の邪魔なのでやめて

594 :デフォルトの名無しさん:2010/09/28(火) 00:19:12
まわりをみたらみんなC#で、Win32APIが大好きって言ったら「おまえきもいwww」って笑われた

595 :デフォルトの名無しさん:2010/09/28(火) 00:35:01
C#にはWin32APIは鬼門
次世代Win32APIのWinFXに期待していたのに…。

596 :デフォルトの名無しさん:2010/09/28(火) 00:50:48
あなたの為だから・・・

597 :デフォルトの名無しさん:2010/09/28(火) 01:09:34
534で使えないといったものだが、「COMPLUS_ProfAPI_ProfilerCompatibilitySetting=EnableV2Profiler」を環境変数に突っ込んで管理者権限で突っ込んだら動いた

プロファイル結果
LineToIndexオブジェクト(行テーブルを管理する):20MB
StringBufferオブジェクト:50MB
(実態はDiskbasedList)
その他もろもろ:6MB

プライベートワーキングセット:150MB


598 :デフォルトの名無しさん:2010/09/28(火) 01:49:21
フィールドやメソッド、プロパティを書く順番ってどうしてる?
俺のソース見たらクラスによってバラバラなので統一しようと思うんだが
どれでもいい気がして悩む。とりあえず
クラス
フィールド
コンストラクタ
プロパティ
メソッド
の順番でいこうかな。

599 :デフォルトの名無しさん:2010/09/28(火) 01:52:12
>>594
ドMかよ っていうwww

600 :デフォルトの名無しさん:2010/09/28(火) 02:00:54
>>598
種類別にregionで囲ってるやつとか結構よく見るな。
小さいクラスだと見なくていいprivate fieldsを囲うぐらいしかやんないけど

601 :デフォルトの名無しさん:2010/09/28(火) 02:13:33
>>598
最近、フィールドとプロパティ分けない。

private int _backField;
public int Property { get { return _backField; } }

みたいにくっつけてる。

あるメソッド内でしか使わない static readonly メンバーは
そのメソッドの直前に書くし。

602 :デフォルトの名無しさん:2010/09/28(火) 02:13:37
Windowsアプリケーションで、画面遷移・切替などの
フレームワークなどありますでしょうか?
参考になる

603 :602:2010/09/28(火) 02:14:54
途中で送信してしまいました。

Windowsアプリケーションで、画面遷移・切替などの
フレームワークなどありますでしょうか?
参考になるサイトなど教えてください。

604 :デフォルトの名無しさん:2010/09/28(火) 02:22:05
作るの楽なのでいうと、Silverlight の Navigation かなぁ。
Silverlight 3 以降の SDK 入れると Navigation アプリ用のテンプレート入ってる。

一応、WPF にも NavigationWindow ってのがある。

605 :デフォルトの名無しさん:2010/09/28(火) 09:30:21
PHPからきたのかな?

TABコントロール…

606 :デフォルトの名無しさん:2010/09/28(火) 09:43:41
>>598
俺もそんな感じ
場合によってはメソッドを
Form用にイベントハンドリングメソッド
継承用にオーバーライドメソッド
イベント発生用にトリガーメソッド(Onなんちゃらで始まるメソッド)
なんかに分けてregionでくくる時があるけどさすがにやり過ぎな気がしてきた


607 :デフォルトの名無しさん:2010/09/28(火) 10:28:24
2週間くらいかけてC#でアプリケーションのプログラミングをしていたのですが、
先ほど、.NET 3.5で製作してしまっていることを気付きました。
.NET 3.5の機能は利用しないため.NET 2.0でいいのですが、途中からダウングレード
することはできませんか?

608 :デフォルトの名無しさん:2010/09/28(火) 10:43:20
本当に使ってないならそのまま動くんじゃね

609 :デフォルトの名無しさん:2010/09/28(火) 10:45:13
>>607
プロジェクトのプロパティで
対象のフレームワークを 2.0 にすればいいよ。
LINQとかusingでエラーが出たり
足りないusingが出たら削除や追加していけばいい

610 :デフォルトの名無しさん:2010/09/28(火) 10:51:21
>>609
ありがとうございます。
using System.Linq;
を削除するだけでビルドできました。

611 :デフォルトの名無しさん:2010/09/28(火) 10:53:33
すみません。
他にも一応参照設定でいくつか削除もしました。

一応書き込んでおきます。

612 :デフォルトの名無しさん:2010/09/28(火) 10:58:49
http://hibari.2ch.net/test/read.cgi/tech/1200796178/
↑これまじすっか?

613 :デフォルトの名無しさん:2010/09/28(火) 11:04:41
はい

614 :デフォルトの名無しさん:2010/09/28(火) 11:05:20
>>612
何を今さら


615 :デフォルトの名無しさん:2010/09/28(火) 11:08:12
プログラムを公開してソースを公開したくない場合はどう対処したらいいですか?

616 :デフォルトの名無しさん:2010/09/28(火) 11:17:55
どういう理由で公開したくないの?
業務上公開できないデータがあるから?
コードが汚いから?

617 :デフォルトの名無しさん:2010/09/28(火) 11:23:40
公開したくないの意味がわからない
したくないならしなければいいだけじゃないの?

逆コンパイルされて読まれるのが嫌って話なら諦めるしかない

618 :デフォルトの名無しさん:2010/09/28(火) 11:24:14
>>612
ggってもそれらしい記事見当たらないんだがこれマジ?

619 :デフォルトの名無しさん:2010/09/28(火) 11:33:30
そこはたまに釣られてくるキチガイを叩いて遊ぶための隔離スレ

>>615
難読化。読まれて困るのならクライアントに渡すな。

620 :デフォルトの名無しさん:2010/09/28(火) 11:36:19
>>618
一応言っとくけど、自分の書いたソースコードがそのまま一緒に公開されるって意味じゃないからね。
C#のソースコードをコンパイルしてできたバイナリから、ソースコードを推測できるってだけ。まあほとんど元に戻るけどね。

621 :デフォルトの名無しさん:2010/09/28(火) 11:39:36
ほんとにゴミ言語だなw

622 :デフォルトの名無しさん:2010/09/28(火) 11:42:10
ちなみに.net系は全部逆コンパイルできる。
てかjavaもだいたいおんなじ仕組みで逆コンパイルできる。

623 :デフォルトの名無しさん:2010/09/28(火) 12:03:16
しかも復元する言語まで変えられるw

624 :デフォルトの名無しさん:2010/09/28(火) 12:14:39
これ.netの標準ライブラリのコードも読めるんだよな。


625 :デフォルトの名無しさん:2010/09/28(火) 12:16:08
ILからC#へ変換できるっちゅーことは
だいたい対応付けられてて最適化もされてないってことかな

つまりILの時代が始まる

626 :デフォルトの名無しさん:2010/09/28(火) 12:20:56
ソースを難読化か暗号化ってできないから困る

627 :デフォルトの名無しさん:2010/09/28(火) 12:36:08
>>625
それってC言語があるのにわざわざアセンブリでプログラム組むようなもんだよ。
まあ悪くはないかもしれないけど。



628 :デフォルトの名無しさん:2010/09/28(火) 13:31:13
>>626
人力難読化だ!
読みにくい無駄で冗長なコードを書け!
バグコードも仕込んでおけw

629 :デフォルトの名無しさん:2010/09/28(火) 13:42:31
>>628
最適化の予感

630 :デフォルトの名無しさん:2010/09/28(火) 13:47:28
通常処理の一部をわざわざネイティブのDLLで置いておくってのはどうか

631 :デフォルトの名無しさん:2010/09/28(火) 13:48:15
そんな心配しないでも

お前らのコードなんてだれも見ないから安心しろ


632 :デフォルトの名無しさん:2010/09/28(火) 13:51:27
>officeやvisual studioは何を使って書かれているの?
>これをオープンソースで出してくる日がくると思ってんの?
>.NET系はサーバーサイドプログラミング環境でしょ?どう考えたって。
彼らの頭の中ではVisual Studioで.NETは使われていないらしい。

633 :デフォルトの名無しさん:2010/09/28(火) 13:51:43
うん

634 :デフォルトの名無しさん:2010/09/28(火) 14:00:48
FlashDevelopはC#で書かれている

635 :デフォルトの名無しさん:2010/09/28(火) 14:05:16
バージョン経るごとに.NETの割合が増えて
今ではユーザが目にするとこの殆どが.NETになってるのになw

636 :デフォルトの名無しさん:2010/09/28(火) 14:17:45
アンチMSって馬鹿だな

637 :デフォルトの名無しさん:2010/09/28(火) 14:27:35
普段windows使ってるくせに「俺はMSが嫌いなんだよ」とか言ってるやつはバカだよね

638 :デフォルトの名無しさん:2010/09/28(火) 14:29:32
本人に自覚がないのが一番恐ろしい

639 :デフォルトの名無しさん:2010/09/28(火) 14:30:51
本当に見せたくないロジックはサーバーに置いとくのがこれからのトレンドか

640 :デフォルトの名無しさん:2010/09/28(火) 14:31:47
Javaのパクリ言語なんだからソース丸見え機能もパクったんだよ

641 :デフォルトの名無しさん:2010/09/28(火) 14:56:28
はい、話題のすり替えきましたよー

642 :デフォルトの名無しさん:2010/09/28(火) 14:58:56
C#はDelphiのぱくりな
JavaのパクリはJ#っていう黒歴史がちゃんとあるじゃないか

643 :デフォルトの名無しさん:2010/09/28(火) 15:03:58
兄弟関係にあるものはパクリじゃないだろう

644 :デフォルトの名無しさん:2010/09/28(火) 15:04:57
>>643
彼らの頭の中ではそうなんだろう。

>officeやvisual studioは何を使って書かれているの?
>これをオープンソースで出してくる日がくると思ってんの?
>.NET系はサーバーサイドプログラミング環境でしょ?どう考えたって。
こんな事を平気で言い出すような頭のおかしい連中だぜ

645 :デフォルトの名無しさん:2010/09/28(火) 15:15:39
頭がおかしくなかったら
他言語のスレまでわざわざ出張してこないだろ

646 :デフォルトの名無しさん:2010/09/28(火) 15:23:05
Ruby 最強

647 :デフォルトの名無しさん:2010/09/28(火) 15:23:55
同意

648 :デフォルトの名無しさん:2010/09/28(火) 15:28:37
仕事で仕方なく使ってる可能性もあるだろ
phpとか好き好んで使ってる奴いるの?

649 :デフォルトの名無しさん:2010/09/28(火) 15:29:37
同意

650 :デフォルトの名無しさん:2010/09/28(火) 15:30:54
ソース見えるのを叩いてると思ったら次はRubyかよ
忙しない奴等だなw

651 :デフォルトの名無しさん:2010/09/28(火) 15:31:41
>>639
ネットに繋がってないとアプリケーションが動かないっていうのは若干不便そうだな。
実際にそう言うの作ろうとした場合はやっぱWCFとか使って実装するんかな


652 :デフォルトの名無しさん:2010/09/28(火) 15:34:00
>>648
もしそうだったら>>644みたいな馬鹿げたことは言わないだろ。
馬鹿なアンチMSが使えもしない言語を叩いて、周りから馬鹿にされてるだけ。

技術面の話には全く絡んでこないのが何よりの証拠。

653 :デフォルトの名無しさん:2010/09/28(火) 15:53:24
>officeやvisual studioは何を使って書かれているの?
>これをオープンソースで出してくる日がくると思ってんの?
>.NET系はサーバーサイドプログラミング環境でしょ?どう考えたって。

これ何を言おうとしてるのか全くわからんのだが
誰か解説してくれないか、いやまじで

654 :デフォルトの名無しさん:2010/09/28(火) 15:58:04
Visual StudioはC#で作られてます。

655 :デフォルトの名無しさん:2010/09/28(火) 16:03:13
>>653
C#で作るとソースが見える→オープンソース→OfficeやVSはオープンソースじゃない→C#使ってるわけがない
って理屈らしい。ねーよ

656 :デフォルトの名無しさん:2010/09/28(火) 16:07:16
VS2010を構成するDLLのほとんどはReflectorでソース見えるよ
エントリポイントだけはネイティブコードで作られててCLRをホストしてる

657 :デフォルトの名無しさん:2010/09/28(火) 16:58:26
ソースが見える→オープンソースと同義
っていう認識がかなりヤバイと思う


658 :デフォルトの名無しさん:2010/09/28(火) 17:16:11
この話題自体が初心者御用達だからヤバイとは思わない

知識がついてきたら自然と認識が改まるよ

659 :デフォルトの名無しさん:2010/09/28(火) 17:18:45
プログラミングにおけるこの手の暗号化と最適化の話題は
htmlのblinkタグとmaqueeタグみたいなものだと思ってる

660 :デフォルトの名無しさん:2010/09/28(火) 17:29:38
中国人の思想だな

661 :デフォルトの名無しさん:2010/09/28(火) 17:34:34
中国は国を挙げてソース出せって言ってただろ
発想が根本から違う

662 :デフォルトの名無しさん:2010/09/28(火) 19:04:03
そもそも.NETの標準ライブラリのソースは公開されている。難読化もされていない。ちなみに、暗号化以外の難読化をすると若干実行速度も早くなる。

663 :デフォルトの名無しさん:2010/09/28(火) 19:13:02
アセンブラ読めるならソースなんか要らん

664 :デフォルトの名無しさん:2010/09/28(火) 19:16:15
まあ、読める人は読めるわけだからねえ…。

665 :デフォルトの名無しさん:2010/09/28(火) 19:51:18
アセンブラ読めたとしてもそれなりの規模のプログラムだと意図を読み取るのは相当難しいだろ
できたとしても相当時間かかるんじゃないか?

666 :デフォルトの名無しさん:2010/09/28(火) 20:03:12
webbrowzer1っていうIEコンポーネントでホームページを開くとき、
javascriptとcssを無効有効を切り替える方法ってありませんか?


667 :デフォルトの名無しさん:2010/09/28(火) 20:04:23
>>665
お前といっしょにするなよ

668 :デフォルトの名無しさん:2010/09/28(火) 21:58:08
コンストラクタで処理した値を、同一クラスの別コンストラクタに渡したいのですが。
:thisだと、順番が逆で、privateメソッドにすればできるのですが、コンストラクタ内でうまく処理する書き方ってあるのでしょうか?

669 :デフォルトの名無しさん:2010/09/28(火) 22:05:46
>>668
処理をメソッド化してコンストラクタの外に出すだけでしょ

670 :668:2010/09/28(火) 22:19:33
<<669
そういうことなんですが。
コンストラクタ内で処理できる方法はないのかと、思ったので
質問してみたのですがなさそうですね。
ありがとうございました。

671 :デフォルトの名無しさん:2010/09/28(火) 23:48:07
staticメンバでいいやん

672 :デフォルトの名無しさん:2010/09/29(水) 03:32:01
>>561
System.IO.Packaging.ZipPackageクラス

673 :デフォルトの名無しさん:2010/09/29(水) 03:35:41
>>672
それは別物

674 :デフォルトの名無しさん:2010/09/29(水) 12:09:08
TextBox を拡張した UserControl を作成しました。
この UserControl を Form に貼り付けた時に、
Form側で TextBox のイベントを拾うにはどうしたら良いでしょうか?

検討した方法
その1. UserControl に TextBox のアクセサを用意して、イベント登録。
その2. UserControl で新しいイベントを定義して連鎖させる。 TextBox --> UserControl --> Form
その3. コールバック

675 :デフォルトの名無しさん:2010/09/29(水) 12:23:07
>>674
2だろうけど、
もしUserControlに貼ってあるのがTextBoxだけなら、
基底クラスをUserControlじゃなくてTextBoxにする

676 :デフォルトの名無しさん:2010/09/29(水) 12:56:59
今はC#4.0でコンパイルしてプログラムを配布するのはやめたほうがいいいですか?
C#2.0の環境で動くものが多いのですが、やっぱりC#4.0環境が少ないって事だからでしょうか?

677 :デフォルトの名無しさん:2010/09/29(水) 13:02:08
まあ、単純に何か1個の理由があるわけじゃないけども。

想定顧客がクリーンインストール状態の XP 利用者だから 2.0 にしたい
単にC# 4.0についていけてない
2.0 時代からの継続開発で、単にアップグレードめんどくさい
VS 2008/2010 買えずにいる

等々。
自分が 4.0 使える身なら、後は顧客として何を想定するかで決めりゃいいんじゃない。
利用者に .NET のバージョンアップを強要することで減る需要と、
自分が 4.0 使えることで楽になるってのの利点のバランス計って。

678 :デフォルトの名無しさん:2010/09/29(水) 13:03:57
使いたいライブラリの中で 4.0 化が進んでないとかいうものもある
(以前知り合いが2005/8じゃないとツールが使えないとか言ってたぐらいのソースです。)
し、環境が少ないという点ではそもそも .NET じたいが XP では標準ではないから
.NET は使わないほうが良いともいえる。

679 :デフォルトの名無しさん:2010/09/29(水) 13:09:02
.netで作ったものならサポートするバージョンの.net flameworkを入れてあればOS問わず動きますか?
例えば32bitとか64bitとかも意識しなくてもOKですか?

680 :デフォルトの名無しさん:2010/09/29(水) 13:11:33
動くよ。
x86/x64 意識しないといけないのは P/Invoke とかでネイティブに触れてる時くらい。

681 :674:2010/09/29(水) 13:25:47
>>675
2番ですね。ありがとうございます。

682 :デフォルトの名無しさん:2010/09/29(水) 13:45:36
ドラクエみたくフィールドをキャラクターが歩くだけのプログラムが作りたいんですけど
そういうライブラリってありませんか?

683 :デフォルトの名無しさん:2010/09/29(水) 14:18:14
>>682
RPGツクール

684 :デフォルトの名無しさん:2010/09/29(水) 14:37:21
>>682
ttp://www.urso.jp/silverlight3/

685 :デフォルトの名無しさん:2010/09/29(水) 15:48:28
>>682
ここに来るなwww

686 :デフォルトの名無しさん:2010/09/29(水) 15:49:54
>>684
わざわざソースコードまで用意していただきありがとうございます

687 :デフォルトの名無しさん:2010/09/29(水) 16:23:27
台湾のSilverlightキャラクターについておまいらの意見を聞かせてくれ

http://getnews.jp/img/archives/001576.jpg
http://getnews.jp/img/archives/002221.jpg
http://getnews.jp/img/archives/00384.jpg

688 :デフォルトの名無しさん:2010/09/29(水) 16:26:24
イルカのカイル君よりは良いんじゃないかと思う

689 :デフォルトの名無しさん:2010/09/29(水) 16:34:29
>>687
俺の彼女を勝手に晒すな

690 :デフォルトの名無しさん:2010/09/29(水) 16:42:14
どこ狙ってるのか(日本人名だし…)とか、どうやって企画通したかの方が気になる。

691 :デフォルトの名無しさん:2010/09/29(水) 16:59:17
>>687
負けた・・・

692 :デフォルトの名無しさん:2010/09/29(水) 17:04:48
>>687
丹陽 (雪風)のほうがかわいい

693 :デフォルトの名無しさん:2010/09/29(水) 17:08:25
>>690
プレゼンにて
日本「萌えキャラ路線で行きます。」
MS「ボーカロイドのパクリかよ。クリプトンに訴えられても知らんぞ。」
台湾「じゃあ私がもらうアル(`ハ´  )」

694 :デフォルトの名無しさん:2010/09/29(水) 17:32:16
ななみちゃんってのもあったけどあれは非公式だっけ

695 :デフォルトの名無しさん:2010/09/29(水) 17:44:23
これか
http://twitter.com/windows7_nanami

696 :デフォルトの名無しさん:2010/09/29(水) 18:39:29
勉強で↓みたいな感じのゲームを作ろうと思うのですが
xnaとかDXライブラリ?とかGDI?みたいなの利用しなくても作れるものですかね?

ttp://flash-game-ziina.com/game/rpg_quest/

697 :デフォルトの名無しさん:2010/09/29(水) 18:52:28
XNAとDXライブラリの質問最近多いけど
何なの流行ってるの?

698 :デフォルトの名無しさん:2010/09/29(水) 18:54:46
流行ってたらなんなの?w

699 :デフォルトの名無しさん:2010/09/29(水) 18:58:58
GDI/GDI+使わずにっていうことはWindows.Formsは使用禁止か

選択肢としてはManagedDirectXかWPF
WPFならそれぐらいのゲームは作れる
ManagedDirectX使うなら素直にxnaかDXライブラリ使ったほうが楽



700 :デフォルトの名無しさん:2010/09/29(水) 19:20:12
DirectX10で良いなら
Windows API Code Pack for Microsoft .NET Framework を使えば良いじゃん
SlimDXでもいいけど

701 :デフォルトの名無しさん:2010/09/29(水) 19:31:19
>>698
うれしいんじゃね?

702 :デフォルトの名無しさん:2010/09/29(水) 20:26:34
http://www.microsoft.com/taiwan/silverlight/collection.htm
壁紙まであるのかよ
エロゲみたいだな

703 :デフォルトの名無しさん:2010/09/29(水) 21:32:29
Hikaru
ってどういうことだよ


704 :デフォルトの名無しさん:2010/09/29(水) 21:52:37
>>703
おい、おまえ、俺に謝れて


705 :デフォルトの名無しさん:2010/09/29(水) 22:17:08
>>696
ブラウザで動かしたいということならSilverlight
実は描画もものすごく速くて、GPUアクセラレーションを有効にすればXNAと比べても遜色ないパフォーマンス

706 :デフォルトの名無しさん:2010/09/29(水) 22:22:39
(´・ω・`)…

707 :デフォルトの名無しさん:2010/09/29(水) 22:34:41
ニュー即にスレがたってるぞ

【IT】台湾のマイクロソフトのサイトが激萌えで凄い! 日本がまさかの敗北
http://kamome.2ch.net/test/read.cgi/newsplus/1285742248/

708 :デフォルトの名無しさん:2010/09/29(水) 22:50:59
それが何だよ。
そういう君みたいな気色の悪い趣味の奴が世の中の多数派だとか思ってるのなら
勘違いもいい加減にしとけよ。

真面目に吐き気がするわ

709 :デフォルトの名無しさん:2010/09/29(水) 22:57:34
DataGridViewで特定のセルを操作不可にはできないのでしょうか?
ReadOnlyでは編集は制御できるのですが、選択ができてしまうので
理想としてはEnabledの様なものがあればいいのですが

710 :デフォルトの名無しさん:2010/09/29(水) 23:04:02
CellBeginEditイベントでキャンセルするとか

711 :デフォルトの名無しさん:2010/09/29(水) 23:29:26
>>709
選択くらい出来てもいいじゃん

712 :デフォルトの名無しさん:2010/09/30(木) 00:29:13
(´・ω・`)…

713 :デフォルトの名無しさん:2010/09/30(木) 00:44:22
(`・ω・´)

714 :デフォルトの名無しさん:2010/09/30(木) 01:11:33
(´・ω・)σ)`・ω・´)

715 :デフォルトの名無しさん:2010/09/30(木) 07:28:13
(´・ω・`)

716 :デフォルトの名無しさん:2010/09/30(木) 07:51:06
SilverLightってWPFのサブセットなの?



717 :デフォルトの名無しさん:2010/09/30(木) 08:25:42
設計方針的にはそう<WPFのサブセット。

実際には、微妙に構造から変わってるクラスもあるし、
Silverlightの方で先に実装されちゃうものも多少はある。

718 :デフォルトの名無しさん:2010/09/30(木) 09:05:15
(´・ω・`)

719 :デフォルトの名無しさん:2010/09/30(木) 11:46:37
>>716
正確には「SilverlightのGUIフレームワークはWPFのサブセット」な
Silverlight自体は小型版の.NET Framework全体を含んでるから
「Silverlightは.NET Frameworkのサブセット」というべき

720 :デフォルトの名無しさん:2010/09/30(木) 11:54:01
DataGridView で、行選択と列選択の両方に対応させるにはどうすれば良いでしょうか?
もしくは、セルを複数選択するにはどうすれば良いでしょうか?
クリックイベントで行または列の全てのセルを選択する方法を考えています。

721 :デフォルトの名無しさん:2010/09/30(木) 13:01:38
>>720
ttp://dobon.net/vb/dotnet/#datagridview
このあたり見て解決しない?
無理ならカスタムのGirdView探したほうがいいよ

722 :デフォルトの名無しさん:2010/09/30(木) 13:20:04
C#をwebで使うにはWindowsサーバでaspを使わないと動かせないことを知りました
windowsサーバを持ちいらないケースでwebで利用するものを作る場合、sliverlightやwpfの勉強をこれから始めるのは無駄になりますでしょうか?

723 :デフォルトの名無しさん:2010/09/30(木) 13:31:40
用いない

724 :720:2010/09/30(木) 13:37:08
>>721
ちょっと見つけられなかったのですが、
クリックされた際に、SelectionModeを変更する方法で解決できました。
ありがとうございました。

725 :デフォルトの名無しさん:2010/09/30(木) 13:54:34
>>722
> C#をwebで使うにはWindowsサーバでaspを使わないと動かせないことを知りました
Linuxサーバ+Monoで動かす手もある

> windowsサーバを持ちいらないケースでwebで利用するものを作る場合、sliverlightやwpfの勉強をこれから始めるのは無駄になりますでしょうか?
WPFで作るのはクライアントアプリだから関係ないが
無駄になるってどういう意味で?

726 :デフォルトの名無しさん:2010/09/30(木) 13:55:32
>>725
Monoは動かねえよwwww

727 :デフォルトの名無しさん:2010/09/30(木) 14:01:18
>>722
silverlightはapacheでも動くっぽいけど?

Mono触ったこと無いけどSocketがあればLinuxサーバでもC#でWebアプリ書けちゃうよ


728 :デフォルトの名無しさん:2010/09/30(木) 14:21:59
C#でCGI作ればいいよ

729 :デフォルトの名無しさん:2010/09/30(木) 15:28:54
726が無知というのは分かった

730 :デフォルトの名無しさん:2010/09/30(木) 15:32:13
Apacheにmod_monoモジュール組み込んでASP.NET動かせる。
http://mono-project.com/Mod_mono
実行環境全部をオープンソースで構築できるわけだが何を言っとるんだ。

731 :デフォルトの名無しさん:2010/09/30(木) 15:42:08
Silverlightも100%クライアントサイドだから関係ないぞ
MIMEさえ設定されてればHTMLに画像貼るのと一緒

732 :デフォルトの名無しさん:2010/09/30(木) 15:44:25
じゃあ何でland.toでSilverlightが動かせないんだ?え?あ?

733 :デフォルトの名無しさん:2010/09/30(木) 15:49:06
Web初心者スレにいけ

734 :デフォルトの名無しさん:2010/09/30(木) 16:02:07
>>732
お前馬鹿ってよく言われるだろ?え?あ?

735 :デフォルトの名無しさん:2010/09/30(木) 16:37:45
ttp://d.hatena.ne.jp/doublefree/20100607/1275866205
land.toとやらで普通に動いてるみたいだけど

736 :デフォルトの名無しさん:2010/09/30(木) 19:45:58
>>732
ださ

737 :デフォルトの名無しさん:2010/10/02(土) 14:29:53
(´・ω・`)…

738 :デフォルトの名無しさん:2010/10/02(土) 23:39:40
>>713-715

739 :デフォルトの名無しさん:2010/10/03(日) 11:47:31
>>736
日本語よめる?

740 :デフォルトの名無しさん:2010/10/03(日) 11:54:35
ヨメマセーン!

741 :デフォルトの名無しさん:2010/10/03(日) 12:09:35
(´・ω・`)



742 :デフォルトの名無しさん:2010/10/03(日) 21:58:12
>>739
え?

743 :デフォルトの名無しさん:2010/10/03(日) 23:20:46
日本人は喰える。喰い物である。 byチャイナ

744 :デフォルトの名無しさん:2010/10/04(月) 18:24:16
フォームアプリケーションで質問です。

プロジェクト新規作成で自動で作られるフォーム処理のスレッドとは別に、
通信を行うスレッドを作り、そこで受信したデータをフォームのテキストボックスに表示したいのですが、
クラスの階層的には
Formクラス→スレッドを含む通信クラス
になっています。
どうやって親であるFormクラスのテキストボックスに相当する変数にアクセスすればいいのでしょうか?
c++とかだとポインタを渡したりとか色々やれますが、C#だとどうするのが一般的なのか分かりません。


745 :デフォルトの名無しさん:2010/10/04(月) 18:37:58
C++でポインタが理解できるなら全く同じように参照を渡すだけでもできるが
行儀よく作るならイベント駆動になるな
通信クラスはデータを受信したらイベント起動
フォームはイベントにハンドラを登録しておいてハンドラでテキストボックスなりに出力

あとISynchronizeInvoke

746 :デフォルトの名無しさん:2010/10/04(月) 18:43:13
>>745
ありがとうございます。
調べながらやってみます。

747 :デフォルトの名無しさん:2010/10/04(月) 18:44:20
>>744
ゲリデートでスレッド間をやりとりする

748 :デフォルトの名無しさん:2010/10/04(月) 21:32:22
下痢のときにデートは勘弁してほしい・・・

749 :デフォルトの名無しさん:2010/10/04(月) 21:34:48
素で気づかんかった

750 :デフォルトの名無しさん:2010/10/04(月) 21:42:04
笑ったwww

751 :744:2010/10/04(月) 22:34:42
結果、最初イベント駆動で検索してデリゲートの理解から深めようとするうちに、
>>747
のやり方でいんじゃね?と思ってやってみたところ
アクセシビリティに一貫性がありません。戻り値の型 '型' のアクセシビリティはメソッド 'メソッド' よりも低く設定されています。
のエラーが出て、InvokeRequiredを確認してinvokeを使う形で上手くいきました。

助言ありがとうございました。

752 :デフォルトの名無しさん:2010/10/04(月) 22:56:47
アクセシビリティのエラーは全く別問題だろ
アクセスレベルがpublicでない型(クラスやデリゲート)をpublicメンバの戻り値として使ってる

753 :デフォルトの名無しさん:2010/10/05(火) 13:27:00
サクラエディタでC#書いてるんですけど
クラスファイルが複数ある場合ってコンパイル面倒くさいですね
楽する方法ありませんか?

754 :デフォルトの名無しさん:2010/10/05(火) 13:31:52
Visual Studioの使い方を覚える

755 :デフォルトの名無しさん:2010/10/05(火) 13:48:59
copy using.cs+a.cs+b.cs+c.cs compiletarget.cs

756 :デフォルトの名無しさん:2010/10/05(火) 14:28:08
>>753
こいう輩って何が目的でこんな事をやってるの?
インドの苦行で針を1000本飲む以上に理解出来ない

757 :デフォルトの名無しさん:2010/10/05(火) 14:30:21
タダだからVC#Express使え
C#や.NETはIDEで使うのを前提にして設計されてるので
テキストエディタで書くのはただの苦行で何の意味もない

758 :デフォルトの名無しさん:2010/10/05(火) 14:31:35
>>756

>>754さん>>755さん>>757さんお三方ありがとうございます
VC#試してみます


759 :デフォルトの名無しさん:2010/10/05(火) 14:37:31
>>756
ハッカー()ワラに憧れた時がおまえにもあっただろ?
それだよ
中に病的なアレだよ

760 :デフォルトの名無しさん:2010/10/05(火) 14:46:47
デリゲートはデリケートなので、慎重に><;

はたまた、ゲリデートで困っちゃうんです><;

761 :デフォルトの名無しさん:2010/10/05(火) 14:48:34
今時のハッカーはサクラエディタを使うのか

762 :デフォルトの名無しさん:2010/10/05(火) 15:49:13
IDE立ち上げるまでもないちょっとした作業に使う事はあっても、メインで使う物じゃないよなぁ

763 :デフォルトの名無しさん:2010/10/05(火) 15:50:42
(´・ω・`)…

764 :デフォルトの名無しさん:2010/10/05(火) 16:21:33
テキストエディタを作ろうと思うんですけど、参考図書や参考になるWebページはありませんか?

765 :デフォルトの名無しさん:2010/10/05(火) 16:58:25
sourceforgeにさくらエディタのソースがある

766 :デフォルトの名無しさん:2010/10/05(火) 17:24:19
Azukiのソース

767 :デフォルトの名無しさん:2010/10/05(火) 17:41:56
>>765
さくらはC++ですよね?

Azuki調べてみます

768 :デフォルトの名無しさん:2010/10/05(火) 18:00:49
10 PRINT "バカ";
20 GOTO 10

俺はこのプログラムからPC始めた

今は覚えることがいっぱいあって大変だなw


769 :デフォルトの名無しさん:2010/10/05(火) 18:04:06
今はBasicも凄いぞ

770 :デフォルトの名無しさん:2010/10/05(火) 18:09:42
10 PRINT "アホ";
20 i=i+1
30 if i>7 then i=1
40 color i
50 goto 10

771 :デフォルトの名無しさん:2010/10/05(火) 18:26:33
10 ON STOP GOTO 10:STOP ON:PRINT "アホ":GOTO 10


772 :デフォルトの名無しさん:2010/10/05(火) 18:41:19
1行プログラム流行ったよなw

773 :デフォルトの名無しさん:2010/10/05(火) 19:04:20
10 PRNT "Syntax Error in 10"
20 BEEP

774 :デフォルトの名無しさん:2010/10/05(火) 19:09:39
シュールだなw

775 :デフォルトの名無しさん:2010/10/05(火) 19:14:33
うごかないだろw

776 :デフォルトの名無しさん:2010/10/05(火) 19:16:06
10 ? "error";:beep

777 :デフォルトの名無しさん:2010/10/05(火) 20:06:42
すいません先生方ご教示お願いします
クラスは1ファイルに1つにしたほうがいいですか?
またnamespaceとクラス名を同じにしても大丈夫ですか?

こんな感じにファイル1つにかきたいのですが
namespace test
{
class test{}
class test1[]
}


778 :デフォルトの名無しさん:2010/10/05(火) 20:15:43
>>777
十分に小さくて何らかの共通項があるなら構わない、ぐらいでやってる
列挙体の寄せ集めとか、EventArgs&EventHandlerとか、超シンプルな基底&派生クラスとか

> またnamespaceとクラス名を同じにしても大丈夫ですか?
ややこしくね?

779 :デフォルトの名無しさん:2010/10/05(火) 20:24:13
名前空間とクラス名を同じにするのはやめた方がいい
他のコードでusingしたときに曖昧になるから回避が面倒

780 :デフォルトの名無しさん:2010/10/05(火) 20:31:08
>>764
http://vivi.dyndns.org/tech/tech.phtml
ここが参考になる

781 :デフォルトの名無しさん:2010/10/05(火) 22:12:46
static void Main(string[] args)
{
MessageBox.Show(args[2]);
}

コマンドラインで引数を与えられなかった場合、起動したらエラーになってしまうのですが
これはどのように対応するのでしょうか?

782 :デフォルトの名無しさん:2010/10/05(火) 22:13:49
if (args != null)
{
MessageBox.Show(args[2]);
}

783 :デフォルトの名無しさん:2010/10/05(火) 22:14:25
引数が与えられなくてもargsには長さ0のstring型配列が渡されてます
あとは何とかしてください

784 :デフォルトの名無しさん:2010/10/05(火) 22:15:46
>>783は嘘
>>782が正解

785 :デフォルトの名無しさん:2010/10/05(火) 22:19:07
>>782でもエラーになるのは解決しないだろ
if (args == null || args.Length < 2) { MessageBox.Show("エラー"); return; }

786 :デフォルトの名無しさん:2010/10/05(火) 22:27:38
意地悪しないで最初から素直に教えてあげようよ……

787 :デフォルトの名無しさん:2010/10/05(火) 22:29:45
これで文句無いだろ
if (args != null || arg.Length > 2)
{
MessageBox.Show(args[2]);
}

788 :デフォルトの名無しさん:2010/10/05(火) 22:33:24
ワロスワロス

789 :デフォルトの名無しさん:2010/10/05(火) 22:45:13
この程度のコードも書けないお前にキングクソワロス

790 :デフォルトの名無しさん:2010/10/05(火) 22:53:04
勉強用とか音楽とかワンセグもOK 無線LAN接続なら無料
結構安いと思うんだけど?
お前ら的にはあり?


IS01 1円スタート 即決有
http://page9.auctions.yahoo.co.jp/jp/auction/k134019945
http://page8.auctions.yahoo.co.jp/jp/auction/h145981541
http://page11.auctions.yahoo.co.jp/jp/auction/n91104112
http://page10.auctions.yahoo.co.jp/jp/auction/m77370908
http://page2.auctions.yahoo.co.jp/jp/auction/b113651808

IS02 1円スタート 即決有
http://page11.auctions.yahoo.co.jp/jp/auction/n93102178
http://page2.auctions.yahoo.co.jp/jp/auction/b113622828
http://page11.auctions.yahoo.co.jp/jp/auction/n92987886

791 :デフォルトの名無しさん:2010/10/05(火) 22:55:33
コピペ君って馬鹿だな、まで読んだ。

792 :デフォルトの名無しさん:2010/10/05(火) 23:02:00
この前まで店頭で手に入ったのにオクで買うとか凄まじい馬鹿だよ



家族名義で7台そろえたわ

793 :デフォルトの名無しさん:2010/10/05(火) 23:18:12
||じゃなくて &&の間違いだろ…

794 :デフォルトの名無しさん:2010/10/05(火) 23:20:20
ボケる流れです

795 :デフォルトの名無しさん:2010/10/06(水) 09:37:17
誤解する人がいると困るのであえてのマジレス。
MSDNでは

if (args.Length == 0)

となってる。
http://msdn.microsoft.com/ja-jp/library/cb20e19t(VS.80).aspx
もしかして実装によっては本当にnullが来ることとかあるのか?

796 :デフォルトの名無しさん:2010/10/06(水) 09:41:05
実装依存しない様に組むのが正しい

797 :デフォルトの名無しさん:2010/10/06(水) 09:44:28
Mainのstring[]はnullではないのは言語仕様だから

798 :デフォルトの名無しさん:2010/10/06(水) 10:27:06
>>787のじゃだめなの?

799 :デフォルトの名無しさん:2010/10/06(水) 10:37:47
>>798
args = new string[]{"hoge"};
Main(args);

さてどうなる?


800 :デフォルトの名無しさん:2010/10/06(水) 11:50:57
using System;みたいに書くのあるじゃないですか
こういうふうにusingで最初に宣言して使うのと
System.Console.Writeみたいに省略なしで書くのとでどちらが重いとか軽いとかありますか?

801 :デフォルトの名無しさん:2010/10/06(水) 11:54:03
コンパイルした時にコードの方完全修飾名に置き換えてるに決まってるじゃん
変化ない

802 :デフォルトの名無しさん:2010/10/06(水) 12:01:49
VC#のプロジェクトのプロパティでClickOnceセキュリティ設定があるんですけど
これを有効にして「これは完全に信頼するアプリケーションです」をマークしたほうがいいですか?
これってVistaとかで初回起動時のプログラムが怪しいかどうかのポップアップを消す意味の設定ですか?

803 :デフォルトの名無しさん:2010/10/06(水) 13:09:05
clickonceってオンラインアップデートとかしちゃえるような便利な奴だっけ

804 :デフォルトの名無しさん:2010/10/06(水) 13:27:00
サーバ上にアプリを置いてクライアントがアプリを起動するとき自動的にチェックする・・・

805 :デフォルトの名無しさん:2010/10/06(水) 13:27:40
最新バージョンの有無をな

806 :デフォルトの名無しさん:2010/10/06(水) 13:47:08
(´・ω・`)…

807 :デフォルトの名無しさん:2010/10/06(水) 14:21:30
PHPのexitみたいに途中で終了させるのはどうやるのでしょうか?

808 :デフォルトの名無しさん:2010/10/06(水) 14:52:32
break

809 :デフォルトの名無しさん:2010/10/06(水) 14:53:48
Environment.Exit()

810 :デフォルトの名無しさん:2010/10/06(水) 14:54:16
return

811 :デフォルトの名無しさん:2010/10/06(水) 15:01:56
つうかさC#使うならひまわりとかなでしことかHSP使ったほうがよくないか?
C#製アプリなんて.netが入ってないと動かないじゃん

812 :デフォルトの名無しさん:2010/10/06(水) 15:08:33
せやな

813 :デフォルトの名無しさん:2010/10/06(水) 15:26:33
んなこといったら、全部 HTA でいいじゃまいか

814 :デフォルトの名無しさん:2010/10/06(水) 15:41:13
せやな

815 :デフォルトの名無しさん:2010/10/06(水) 16:30:21
SlimDXを使ったプログラムを作ろうと思うんですが
これで作ったものはユーザーにSlimDXのランタイムをインストールさせないと動かないって事ですか?
利用者に.NETフレーム以外のランタイムをインストールさせる手間をかけない場合はXNAを選択したほうがいいですかね?

816 :デフォルトの名無しさん:2010/10/06(水) 16:37:10
XNAもランタイムいるよ。
まあインストーラー次第じゃない?

817 :デフォルトの名無しさん:2010/10/06(水) 17:10:22
Visual C# 2010のツールボックスにCOMコンポーネントのRealPlayer G2 Controlを追加しました
部品をフォームに貼り付けました
ソリューションエクスポローラーの参照設定にCOMの欄にあるReal Player ActiveX Control Libraryを追加しました

以下のコードを書きました

private void Form1_Load(object sender, EventArgs e)
{
axRealAudio1.Source = "D:\\douga\\okiniiri_douga\\101.rm";
axRealAudio1.AutoStart = true;
}

実行したら音声しか出ません
動画はどうやって表示するのでしょうか?

818 :デフォルトの名無しさん:2010/10/06(水) 18:21:13
テキストファイル中の \u001b と言う文字列を読み込んで、
UNICODEとして変数に格納したいのですが、どうしたら良いでしょうか?

試しに
string a = "\\u001b".Replace('\\', '\');
としてみましたが、ビルドエラーになりました。

819 :デフォルトの名無しさん:2010/10/06(水) 18:23:34
Char.Parse

820 :デフォルトの名無しさん:2010/10/06(水) 18:26:42
Substringするなり正規表現なりで数字部分取り出してInt32.Parseしてcharにキャスト

821 :デフォルトの名無しさん:2010/10/06(水) 18:27:04
>>819
何言ってんだお前

822 :デフォルトの名無しさん:2010/10/06(水) 18:48:32
windowsのガジェットみたいに右側に表示し、
他のソフトで最大化したときに、右側のソフトに被らないようにするのは
どういう風に出来ますでしょうか?

823 :818:2010/10/06(水) 19:02:14
>>819
>>820
ありがとうございます。とりあえず以下のような感じで動きました!
あと、少し長くなってしまったのですが、処理的にどこか省けますかね?

string target = "____\\u0055----\\u0056====";
string pattern = "\\\\u[\\d][\\d][\\d][\\d]";
Match m = Regex.Match(target, pattern);
while (m.Success)
{
string from = target.Substring(m.Index + 2, 4);
int toInt = Int32.Parse(from, NumberStyles.HexNumber);
char toChar = (char)toInt;
target = target.Remove(m.Index, 6);
target = target.Insert(m.Index, toChar.ToString());

m = Regex.Match(target, pattern);
}

Console.WriteLine(target);

824 :408:2010/10/06(水) 19:08:53
ありがとうございました

825 :デフォルトの名無しさん:2010/10/06(水) 19:29:24
(´・ω・`)…

826 :デフォルトの名無しさん:2010/10/06(水) 19:33:04
それよりfromって変数名気になる

827 :デフォルトの名無しさん:2010/10/06(水) 19:45:58
\\だらけで汚い
@使う

828 :デフォルトの名無しさん:2010/10/06(水) 19:49:33
Regex.Replace(string, string, MatchEvaluator)使う

829 :デフォルトの名無しさん:2010/10/06(水) 19:50:27
@使うのが気持ち悪い

830 :デフォルトの名無しさん:2010/10/06(水) 20:11:54
@(オナホ)の主張

使ったことないのに、気持ち悪いとかいわないでよ!

831 :デフォルトの名無しさん:2010/10/06(水) 20:18:40
toIntいらないだろ

832 :デフォルトの名無しさん:2010/10/06(水) 20:30:41
>>823
string target = "____\\u0055----\\u0056====";
string result = Regex.Replace(target, @"\\u(\d+)", (m) =>
((char)Int32.Parse(m.Groups[1].Value, NumberStyles.HexNumber)).ToString()
);

Console.WriteLine(result);

833 :デフォルトの名無しさん:2010/10/06(水) 20:42:28
・ω・`)…

834 :デフォルトの名無しさん:2010/10/06(水) 20:55:51
どこで聞いていいのかわからないので質問させてください
WindowsやWindowsMobileでデータを取り込むアプリケーションをC#で作成しました
SQLServerCompactを使っているのですがsdfのデータをサーバ上のSQLServerに移す場合どのようにするのが一般的ですか?
バッチ式アプリケーションというらしいのですが業務系の仕組みをググってはみたものの見つからずに困ってます

835 :818:2010/10/06(水) 21:10:12
>>832
短っ。
いろいろ参考になるソースですね。
ありがとうございました!

836 :デフォルトの名無しさん:2010/10/06(水) 21:11:37
test

837 :デフォルトの名無しさん:2010/10/06(水) 21:15:04
>>822
ガジェット?

838 :デフォルトの名無しさん:2010/10/06(水) 21:16:51
質問です。

VS2008でdatagridviewを使ったWinフォームアプリを使っていて
以下の機能を実装しようとしています。

「ヘッダー以外のグリッド内部をダブルクリックしたときのみ閉じる(this.Close())」

デザインは、フォームにdatagridviewがはり付けられたものとなっています
それっぽいイベントを探しましたが、CellDoubleClickイベントなどではヘッダー部分をダブルクリックしても
落ちてしまいます

フォーム自体を修正してもかまわないです
よろしくお願いします

839 :デフォルトの名無しさん:2010/10/06(水) 21:24:03
HITTEST系のイベントなかったっけ?

840 :デフォルトの名無しさん:2010/10/06(水) 21:30:18
>>838

private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e) {
if (e.RowIndex != -1 && e.ColumnIndex != -1) this.Close();
}

行ヘッダーがないならe.RowIndex != -1 だけでもいいよ

841 :デフォルトの名無しさん:2010/10/06(水) 21:37:43
>>834
http://dobon.net/cgi-bin/vbbbs/cbbs.cgi
そういう質問は↑の方がいいかもね


842 :デフォルトの名無しさん:2010/10/06(水) 21:38:21
>>838
DataGridViewCellEventArgsのプロパティ一回でも目を通した?

843 :デフォルトの名無しさん:2010/10/06(水) 21:39:09
>>840
早速の回答ありがとうございます!
エクスプレスエディションでサンプルフォーム作ってみてコピペしてみたらイケました
実際に仕事で使ってるのはカスタムコントロールなので、教えていただいた方針で
明日いじってみます


844 :デフォルトの名無しさん:2010/10/07(木) 00:02:04
簡単なゲーム作りたいんだけど、
c#とflashのアクションスクリプト勉強するならどっちがいいだろう?


845 :デフォルトの名無しさん:2010/10/07(木) 00:03:38
>>844
どっちでもお好きに
ASの場合無料で使いやすいIDEみたいなのあったっけ?
C#ならXNAとかも無料で手に入るし資料もぐぐればでてくるしで・・・

846 :デフォルトの名無しさん:2010/10/07(木) 00:11:02
>>845
Cは使えるんだけど、オブジェクト指向プログラムはほとんどしたことないからC#先にやった方がいいかなぁ
フラッシュプロCS5買おうと思ってるから無料にはこだわってないんだけど


847 :デフォルトの名無しさん:2010/10/07(木) 00:11:13
Suzukaがある

848 :デフォルトの名無しさん:2010/10/07(木) 00:15:20
>>846
そんなに難しいことではないしC++ほど糞でもないからC#は楽よ
まあとりあえずはC#でやってみなよ
silverlightも中身はC#で組めるし

849 :デフォルトの名無しさん:2010/10/07(木) 00:15:21
ちゃんとオブジェクト指向とかやる気があるんだったら絶対C#の方がいい
C#やってればASも他の言語も簡単に使える

850 :デフォルトの名無しさん:2010/10/07(木) 00:20:53
そっかぁ
C#やるかぁ。
誰にでも作ったゲームやってほしかったから、.netフレームワークとかXNAとか強要したくなかったんだけど、
silverlightで動くなら大丈夫かな




851 :デフォルトの名無しさん:2010/10/07(木) 00:24:46
まあゲームならCでDXライブラリが最強だけどな

852 :デフォルトの名無しさん:2010/10/07(木) 00:26:19
一つに固執しないで複数やれってこと
C#は勉強しやすい環境が整ってるし他の言語にも移行しやすいので入り口としては悪くない
ASはちょっと特殊なので

853 :デフォルトの名無しさん:2010/10/07(木) 00:28:46
>>851
DirectXは自分で3Dライブラリ作ってゲームも公開してるのさ。
もっと効率よくて楽につくりたいのと、新しい言語の勉強したくなってね


854 :デフォルトの名無しさん:2010/10/07(木) 00:32:26
>>850
なんだ、C#勧められても(追加インストール物が原因で)乗り気じゃないなら
最初からASの方勧めてもらいたかったんだろ?気持ちは決まってたんだろ?

855 :デフォルトの名無しさん:2010/10/07(木) 00:34:06
>>853
そんな凄腕ならC#なんかやる意味ないよ

856 :デフォルトの名無しさん:2010/10/07(木) 00:34:08
>>850
.net嫌とか言い出すのはXPユーザーくらいだろうし最近は.netアプリも
そこそこ出回ってるので問題ないでしょ
SLはGyaOで使ってるしあそこで動画見てる人はまあ入れてるだろうね

SLサンプル
http://www.urso.jp/silverlight3/
ソースが公開されてたやつもほかにあったけどページがなくなってるな

857 :デフォルトの名無しさん:2010/10/07(木) 00:36:44
オブジェクト指向わからんのにDirectXなんか使えるの?
まあDirectXなんか9割定型句だけど

858 :デフォルトの名無しさん:2010/10/07(木) 00:37:53
>>857
使えるでしょ
C++使ってCライクな書き方で十分かける範囲だと思うよ

859 :デフォルトの名無しさん:2010/10/07(木) 00:40:01
>>854
いや、C#もアプリ程度の物は作った事あるけど好きよ
ま、Flash買う自分への口実が欲しかったのはあるけどw

勉強するならC#からなんだろうね


>>855
別に凄腕じゃないよ
ライブラリって言ってもDirectXライブラリを存分に使ってるラッパー的な物だし
でも俺のリア充友達なんかはDirectXのバージョンすら古いからね
DirectX8とかw



860 :デフォルトの名無しさん:2010/10/07(木) 00:43:50
やねうらお氏来たああああああああああ

861 :デフォルトの名無しさん:2010/10/07(木) 00:46:58
懐かしい名前だ


862 :デフォルトの名無しさん:2010/10/07(木) 00:47:47
>>857
一応クラス組んでゲームはつくったけど、どーもオブジェクト指向がなんぞやっていうのか本質が掴めなかった
DirectXとオブジェクト指向は全く関係ないよ。DirectXはただのライブラリだし


863 :デフォルトの名無しさん:2010/10/07(木) 00:50:40
>>862
Cでプログラム書くとヘッダー取り込めばあちこちで触れて
のんべんだらりとしたコードになりやすいけどオブジェクト指向の場合
データとそれに関連するコードをクラスの中へ封入することで
まとまった書き方できるんだよね・・・

864 :デフォルトの名無しさん:2010/10/07(木) 00:59:52
動きゃいい

865 :デフォルトの名無しさん:2010/10/07(木) 01:01:10
Xna Framework あたりはむしろ Win だけで使うって言うより、 Win/XBox360/WP7 の
クロス環境でかつ配布も可能って所が利点な気がするけどな。

866 :デフォルトの名無しさん:2010/10/07(木) 01:05:22
>>865
あんまり利点になってないけどなw
xnaが標準でも持ってるダイアログを使おうとしたけど箱最適化されてて
windowsじゃあ640x480とかで使うとおかしくなるとかw

867 :デフォルトの名無しさん:2010/10/07(木) 12:41:30
SlimDXを使って作りたいのですが
http://msdn.microsoft.com/ja-jp/directx/default.aspxのページのDirectX SDKというものもダウンロードしないとダメでしょうか?

868 :デフォルトの名無しさん:2010/10/07(木) 12:47:00
そう、SlimDXのバージョンにあったSDKが必要

869 :デフォルトの名無しさん:2010/10/07(木) 12:53:06
SlimDXはやめたほうがいいね

870 :デフォルトの名無しさん:2010/10/07(木) 12:53:19
あれ、ランタイムだけでいいかな
まあツール類もあるしSDKでいいでしょ

871 :デフォルトの名無しさん:2010/10/07(木) 13:11:39
ありがとうございます
DXSDK_Jun10.exe571.7MBけっこう重い・・・

872 :デフォルトの名無しさん:2010/10/07(木) 13:42:02
たびたびすみませんSlimDXってDirectMusicはサポートしてないのでしょうか?

873 :デフォルトの名無しさん:2010/10/07(木) 13:55:40
DirectMusicってDirectXにも入ってないっしょ?
2007Nox以降入ってないからサポートしようも無い
何がしたいかで代替手段はあるかもよ

874 :デフォルトの名無しさん:2010/10/07(木) 13:56:36
XNAのがいいよ

875 :デフォルトの名無しさん:2010/10/07(木) 13:58:25
DirectXに入ってないんでしたかorz
用途はMIDIを使って音を好きなように鳴らしたいです


876 :デフォルトの名無しさん:2010/10/07(木) 14:48:32
DirectX SDKのみだとC#コード上ではDllImport祭りになるの?

877 :デフォルトの名無しさん:2010/10/07(木) 14:53:43
ならない
ComImport祭りになる

878 :デフォルトの名無しさん:2010/10/07(木) 14:59:51
なんでたかがMIDIなのに面倒くさいの

879 :デフォルトの名無しさん:2010/10/07(木) 15:20:38
波形データのサイズが全く問題にならなくなったので
ゲームなんかではMIDIはもういらないというのが最近の流れ
環境に激しく依存するから糞

880 :デフォルトの名無しさん:2010/10/07(木) 15:34:53
midiそのものはデータが単純だけにドライバが複雑。
それが取っ払われたら面倒になるのはしょうがない。

midi鳴らすには、ローレベルで地道に出すか
外部アプリを利用するか、中間のライブラリ利用するか

881 :デフォルトの名無しさん:2010/10/07(木) 15:38:48
普通にWindows Media Playerコントロール使ったらだめなのか


882 :デフォルトの名無しさん:2010/10/07(木) 15:45:03
なんか埋め込めるテキストエディタって無いですかね?


883 :デフォルトの名無しさん:2010/10/07(木) 15:45:34
リッチなやつ?

884 :デフォルトの名無しさん:2010/10/07(木) 15:49:03
秀丸やサクラエディタが埋め込めたらいいなー

885 :デフォルトの名無しさん:2010/10/07(木) 17:12:40
やっとDirectX SDKのダウンロードが終わりました
もうダウンロードだけでつかれた

886 :デフォルトの名無しさん:2010/10/07(木) 17:23:59
助けてください><
ttp://dobon.net/vb/dotnet/programing/playmidifile.html
ここの「DirectXを使用して再生する方法」のサンプルを使いたいんですが
参照にMicrosoft.DirectXとMicrosoft.DirectX.AudioVideoPlaybackが存在しません><
ページにはDirectX Redistributable for Software Developersをインストールしろと書いてありますけど
DirectX SDKとはべつものってことなんでうsか?

887 :デフォルトの名無しさん:2010/10/07(木) 17:29:48
>>886
使いこなせないなら上の二つのうちどちらかで解決しろw

888 :デフォルトの名無しさん:2010/10/07(木) 17:33:09
>>886
それはMDXという終わったやつだからあきらめよう
上のやつでいいじゃない

889 :デフォルトの名無しさん:2010/10/07(木) 17:47:35
SlimDXをうごかすためにDirectX SDKがいるのかとおもってましたいらなかったんですね


890 :デフォルトの名無しさん:2010/10/07(木) 17:50:15
XNAでもMIDIをサポートしてたら勧められるんだけどね

891 :デフォルトの名無しさん:2010/10/07(木) 18:26:30
SlimDXはやっぱり諦めます
ヘルプ見ましたがMIDIには対応してないことがわかりました
WinAPIで頑張ることにします
ありがとうございました

892 :デフォルトの名無しさん:2010/10/07(木) 18:43:47
なんでMIDIをそのまま配布先で再生する必要があるのかわからない
あらかじめ音声信号に変換したものを配ればいいだろ

893 :デフォルトの名無しさん:2010/10/07(木) 18:51:57
(´・ω・`)…

894 :デフォルトの名無しさん:2010/10/07(木) 19:06:37
音声ファイルとmidiファイルのサイズの違い

895 :デフォルトの名無しさん:2010/10/07(木) 19:19:08
MIDIってどんな音が鳴るかは完全に環境依存なんだよ?

896 :デフォルトの名無しさん:2010/10/07(木) 19:25:14
トランペットが指定されていてもトンチキなドライバが尺八の音色を使うかもしれん

897 :デフォルトの名無しさん:2010/10/07(木) 19:27:45
全シーケンサー作者とヤマハとローランドを敵に回した

898 :デフォルトの名無しさん:2010/10/07(木) 19:28:10
>>894
いまどきそんなのが重要になるのって・・・
特にwindows・・・

>>895
サンプリングは音源依存だと思う

899 :デフォルトの名無しさん:2010/10/07(木) 19:29:12
勝手に敵に回っててくれ

900 :デフォルトの名無しさん:2010/10/07(木) 19:29:55
日記はちら裏に書け

901 :デフォルトの名無しさん:2010/10/07(木) 19:45:53
すいませんMCIで音が鳴りました!
先輩方のお陰です!助かりました
ありがとうございました!

902 :デフォルトの名無しさん:2010/10/07(木) 21:44:05
midioutで鳴らすのかと思ってた

903 :デフォルトの名無しさん:2010/10/07(木) 22:04:20
midioutも簡単だよw

midiキーボードもどき作ったりも簡単


904 :デフォルトの名無しさん:2010/10/07(木) 22:06:19
簡単も糞もアプリから見たらmidioutもソフト音源も透過的でしょ。
言ってる意味がわからん

905 :デフォルトの名無しさん:2010/10/07(木) 22:09:33
はあ?

906 :デフォルトの名無しさん:2010/10/07(木) 22:17:26
全然簡単じゃねえよ
今C#初めて30日ぐらいしか経ってないけどapiなんて全然わかんねえよ
C#やる前はHSPやってたからプログラム初心者じゃないけどな

907 :デフォルトの名無しさん:2010/10/07(木) 22:18:31
一生HSPやってろよ

908 :デフォルトの名無しさん:2010/10/07(木) 22:20:03
//http://msdn.microsoft.com/ja-jp/library/cc410493.aspx
MCIERROR mciSendCommand(
MCIDEVICEID IDDevice, // デバイス識別子
UINT uMsg, // コマンドメッセージ
DWORD fdwCommand, // フラグ
DWORD dwParam // パラメータを保持している構造体
);

↑の関数は
[DllImport("winmm.dll")]
public static extern int mciSendCommand(
int IDDevice,
uint uMsg,
uint fdwCommand,
uint dwParam);
と、C#書くので合ってますでしょうか?

909 :デフォルトの名無しさん:2010/10/07(木) 22:20:26
ああ、だからmidiにこだわってるのか
BASIC系だと、単音を鳴らしたりするサンプルはよく出てくるな
現実にはそんなもんよっぽど特殊な用途でない限り使わないけど

910 :デフォルトの名無しさん:2010/10/07(木) 22:22:43
typedef UINT MCIDEVICEID

911 :デフォルトの名無しさん:2010/10/07(木) 22:23:05
>>907
HSPなめんじゃねえ!ゲーム作れるぜ!

912 :デフォルトの名無しさん:2010/10/07(木) 22:28:49
俺の周りの元HSP使い達は
揃ってHSP爆発しろっていってるけどな

913 :デフォルトの名無しさん:2010/10/07(木) 22:31:44
HSP難しいよ
なんでHSPみたいな低レベルな言語(悪い意味ではない)じゃダメで
C#みたいな高級な言語が出てくるかっていうと、結局人間の頭が悪いから

914 :デフォルトの名無しさん:2010/10/07(木) 22:36:44
馬鹿でもできたほうがいいからな
工場の単純労働みたいになるのが理想的だね

915 :デフォルトの名無しさん:2010/10/07(木) 22:40:00
高級言語になればなるほどコーダーも高レベルにならざるを得ないけどね
オブジェクトでつまずいてる人結構居るし

916 :デフォルトの名無しさん:2010/10/07(木) 22:43:00
実装が見えない難しさと
大局が掴みにくい難しさ

917 :デフォルトの名無しさん:2010/10/07(木) 22:55:21
>>908
CodeProjectにC# MIDI Toolkitつうのがあるけどそういうのではだめなのか?

918 :デフォルトの名無しさん:2010/10/07(木) 23:49:20
C# MIDI Toolkitを試してみました
互換性がなんちゃらのメッセージが出たので変換して空実行したのですが
参照のDLLが見つからないととなり利用することができませんでした。
実はMCIは遅いという事がわかり、MidiOutOpenとかそっちのほうでやってるサンプルを見つけまして
なんとか単音だけ発音できることに歴史的な成功を果たしました


919 :デフォルトの名無しさん:2010/10/08(金) 00:13:08
( ̄・ω・ ̄)

920 :デフォルトの名無しさん:2010/10/08(金) 01:40:37
昔に一度VB6でmidiout使って楽譜っぽいの入力して音鳴らさせるの作った
スレッド使えなくてめっさ苦労したわー

いい時代になったな

921 :デフォルトの名無しさん:2010/10/08(金) 10:24:32
(´・ω・)

922 :デフォルトの名無しさん:2010/10/08(金) 14:26:02
( ̄・ω・ ̄)

923 :デフォルトの名無しさん:2010/10/08(金) 14:49:32
独自のSplitContainerを作っているのですが、
formに貼り付けて、その上にコントロールを置いても、親として認識してくれません。
どうすれば良いでしょうか?

924 :デフォルトの名無しさん:2010/10/08(金) 14:58:08
ContainerControlとかControlStyles.ContainerControlとかParentControlDesignerとかその辺じゃね

925 :デフォルトの名無しさん:2010/10/08(金) 15:44:32
ICntainerControl

926 :923:2010/10/08(金) 15:47:52
>>924
よくわからないのですが、クラスの先頭に
[Designer("System.Windows.Forms.Design.ParentControlDesigner, System.Design", typeof(IDesigner))]
をつけたところ、ユーザーコントロールにはコントロールを置けましたが、
ユーザーコントロールの上にパネルをfillで配置しているため、常に隠れてしまいます。

他にもいろいろ探してみましたが、見つからないので、今回はデザイン上はあきらめて、ロジックでparentを設定して対応します。
ありがとうございました。

927 :デフォルトの名無しさん:2010/10/09(土) 18:08:18
( ̄・ω・ ̄) はいどうも

928 :デフォルトの名無しさん:2010/10/09(土) 18:31:15
ω・ ̄)

929 :デフォルトの名無しさん:2010/10/09(土) 22:27:08
Form に Picturebox と Button があり、Bitmap1 と Bitmap2 に作画して、それを透過で
Bitmap0 にコピーして合成したのち、Bitmap0 を Picturebox に表示したいのですが、
MakeTransparent を使うと合成はしてくれますがアニメーションしてくれません。
使わないとアニメーションしてくれますが、当然合成できません。
複数の Bitmap を合成してアニメーションするには、どうすればいいんでしょうか?

private void button1_Click(object sender, EventArgs e) {
List<Bitmap> bmp = new List<Bitmap>();
List<Graphics> g = new List<Graphics>();
for (int i = 0; i < 3; i++) {
bmp.Add(new Bitmap(100, 100, System.Drawing.Imaging.PixelFormat.Format24bppRgb));
g.Add(Graphics.FromImage(bmp[i]));
}
pictureBox1.Image = bmp[0];
Pen pn = new Pen(Color.White);
for (int i = 0; i < 100; i++) {
for (int j = 1; j < 3; j++) g[j].Clear(Color.Black);
g[1].DrawLine(pn, 0, i, 99, 99 - i);
g[2].DrawLine(pn, 0, 99 - i, 99, i);
bmp[1].MakeTransparent(Color.Black);
g[0].DrawImage(bmp[1], 0, 0);
bmp[2].MakeTransparent(Color.Black);
g[0].DrawImage(bmp[2], 0, 0);
pictureBox1.Refresh();
Application.DoEvents();
}
for (int i = 0; i < 3; i++) {
bmp[i].Dispose();
g[i].Clear(Color.Black);
}
}

930 :デフォルトの名無しさん:2010/10/09(土) 22:47:16
意味もなくリスト使ってg[1]だのbmp[2]だのやってるソース読んでると
イライラしてくるなw
30年前のBASICのコードみたいというか、"CODE"っての意味を誤解してるんじゃないのかと
からかいたくなる。

931 :デフォルトの名無しさん:2010/10/09(土) 22:56:58
PASTAでええやん

932 :デフォルトの名無しさん:2010/10/09(土) 23:49:04
>>930 >>931
あぁ、はいはい、コード汚くてゴメンネ。基本が N88 だから勘弁な。
さっきは言ってなかったけど、コピー元の Bitmap の数が決まってないんで、
ついついこうなるんだよね。何か別のやりかたもあるのかもしれないけどね。
bmp[0] くらいは変数名を別にしたほうがいいんだろうくらいは分かるけど。
GOTO とか使ってないし、ギリでスパゲッティ未満でしょ。素麺くらいで。

で、そんな程度のサンデープログラマーな初心者なんだから、からかわないで教えてよ。
おながい。

933 :デフォルトの名無しさん:2010/10/10(日) 00:18:41
>>932
http://ideone.com/Tj4h5


934 :933:2010/10/10(日) 00:23:53
簡単に解説しとく
MakeTransparentは実行するたびに内部的にBitmapを再生成するので、その都度Graphicsも再取得しなければいけない
つまり >>929 のコードでは一回目以降すでに破棄されたbitmapに描画してるってこと

あと画像はどのみち再生成されるので配列でメモリ確保しとくのは無意味だと思う

935 :933:2010/10/10(日) 00:33:47
Bitmapを再生成したくないなら素直にFormat32bppArgb使えばいいよ
http://ideone.com/5XIJw

連投申し訳ない

936 :デフォルトの名無しさん:2010/10/10(日) 00:44:24
MakeTransparentした後はGraphicsを再取得か、今回は勉強になった

937 :デフォルトの名無しさん:2010/10/10(日) 00:54:59
>>933
わざわざ、ありがとうございます。やりたい動作ができてます。感謝です。
MakeTransparent で bitmap が無くなっているなんて自分には想像もつきませんでした。
あと、直に picturebox に書くのですね。ヘタに自分でダブルバッファもどきなんて考えなくても、
ちゃんとやってくれるみたいですね。

実際に作っているプログラムでは、コピー元の bitmap は他のクラスに書いてもらって、それを
返してしてもらったのを合成したいのですが、そのときは new Bitmap(100,100,…) の部分を
new Bitmap(***) や (Bitmap)***.Clone でいいのではと思いますが、合ってるでしょうか?

938 :デフォルトの名無しさん:2010/10/10(日) 01:00:07
ちょっと最後が意味不明だったかも。ちょっと言い換えさせてください。

new Bitmap(他のBitmap) や (Bitmap)変数.Clone でいいのではと思いますが、合ってるでしょうか?

939 :デフォルトの名無しさん:2010/10/10(日) 01:17:18
>>937
>ヘタに自分でダブルバッファもどきなんて考えなくても
誤解してるようだけど、その点は>>929>>933ではほとんど違いがないよ
単純にローカル変数に格納するかしないかの違い
ただ>>929の方はbmp[0].Dispose();してるから再描画しようとすると例外吐くがね

合成用画像を別で作ってるなら、そっちで透過色の設定もすればいいんじゃない?
そうすれば

for (int i = 0; i < 100; i++) {
  pg.Clear(Color.Black);
  for (int j = 0; j < 2; j++) {
    pg.DrawImage(SomeClass.SomeMethod(i, j), 0, 0);
  }
  pictureBox1.Refresh();
  Application.DoEvents();
}
だけで済むし


940 :デフォルトの名無しさん:2010/10/10(日) 01:43:20
>>939
度々レスありがとうございます。そうですか、やってみます。
しかし、N88 や Delphi も使っていた(こなせてはない)のですが、
あまりにも勝手が違って四苦八苦・・・w

941 :デフォルトの名無しさん:2010/10/10(日) 02:08:42
>>929 ですが、教えてもらったおかげで、数日かけて(w)やっと思っていた
通りの動作ができました。ありがとうございました。

942 :デフォルトの名無しさん:2010/10/11(月) 00:46:16
Delphi使ったことないけどそんなに違うの?
フレームワークのメイン設計者は.NETと同じ人なんだけど

943 :デフォルトの名無しさん:2010/10/11(月) 00:50:20
N88とDelphiの距離に比べたら、ごく近所みたいなものだよ。

944 :デフォルトの名無しさん:2010/10/11(月) 00:59:18
デルファイは過剰評価されすぎだよねw
まだのフリー版がある時代に少し触ってみたけど、言語の設計はともかく、
あのIDEの使いにくさではVBに負けて当然だと思った。

945 :デフォルトの名無しさん:2010/10/11(月) 01:02:53
フリーカーソルは気持ち悪いです

946 :デフォルトの名無しさん:2010/10/11(月) 01:06:21
C#でリベンジできたんだから良いじゃないか

947 :デフォルトの名無しさん:2010/10/11(月) 01:09:54
まあ、AndersのMS移籍、DelphiとVB(的なもの)の統合は素晴らしいかった。

948 :デフォルトの名無しさん:2010/10/11(月) 09:07:07
HttpWebRequestと同Responseより薄いWeb用クラスって無いんでしょうか?
↓ぐらいの抽象度で、例外もWebExceptionかぶせたりせずIOExceptionのまま上げてくるようなものです。
interface WebRequest {
string Method;
IDictionary<string, string> Header;
void AttachStraem(Stream body);
}

interface WebResponse {
HttpStatusCode Status;
IDictionary<string, string> Header;
Stream GetBodyStream();
}


949 :デフォルトの名無しさん:2010/10/11(月) 09:12:49
ない

950 :デフォルトの名無しさん:2010/10/11(月) 09:13:20
探せば誰かが作ってるかもな
まあそれぐらい作るのも大した手間じゃないっしょ

951 :デフォルトの名無しさん:2010/10/11(月) 09:17:12
Socket使って自作してください

952 :デフォルトの名無しさん:2010/10/11(月) 09:23:29
無いですか
Socketからだとちと面倒なのでHttpWeb〜のデグレラッパーでしのぎます


953 :デフォルトの名無しさん:2010/10/11(月) 16:19:26
うん。ありがとねー

954 :デフォルトの名無しさん:2010/10/11(月) 19:46:50
猫でもC#ってどうですか?
http://www.amazon.co.jp/gp/aw/d.html/ref=redir_mdp_mobile/375-4679505-6445047?a=4797361344

955 :デフォルトの名無しさん:2010/10/11(月) 19:48:40
C#だと本はいらんだろ
ぐぐればいくらでも情報はでてくる
高度なことをやりだして本を買うかどうかってところだ

956 :デフォルトの名無しさん:2010/10/11(月) 19:49:28
>>955
そっか〜買わなくてよかった。
ありがとうございました。

957 :デフォルトの名無しさん:2010/10/11(月) 22:15:39
どいたしまして〜

958 :デフォルトの名無しさん:2010/10/12(火) 10:08:26
private struct ele
{
public bool a;
}

ele a = ele();
//ele.a = true;
ele["a"] = true;

ele.a = 以外の方法で入れる事はできませんか?

959 :デフォルトの名無しさん:2010/10/12(火) 10:16:30
うん。

960 :デフォルトの名無しさん:2010/10/12(火) 10:18:59
javascriptのようなことがしたいのだろうけどないな。
.NET4.0のC#ならdynamic型で変態的なことが出来るけど。

961 :デフォルトの名無しさん:2010/10/12(火) 10:36:40
javascriptが変態なんじゃ

962 :デフォルトの名無しさん:2010/10/12(火) 11:40:01
動的な名前でプロパティを操作したいって意味なら
リフレクション使えばいけるだろ

963 :デフォルトの名無しさん:2010/10/12(火) 12:24:31
つ Jscript.NET


964 :デフォルトの名無しさん:2010/10/12(火) 12:49:15
Dictionary<,>が使えないか検討する

965 :デフォルトの名無しさん:2010/10/12(火) 13:53:34
struct ele
{
public bool a;

public ele(bool b)
{
this.a = b;
}
}

ele a = new ele(true);

コンストラクタ使うんじゃダメなのか?

966 :デフォルトの名無しさん:2010/10/12(火) 14:39:44
何がしたいのかよくわからんな、元の質問者

967 :デフォルトの名無しさん:2010/10/12(火) 15:15:17
FormにButtonをぴったしくっつけるように配置したいのですが
自分のマウスの動かし方では難しくて厳しいです
もっと確実な方法ってございませんか?

968 :デフォルトの名無しさん:2010/10/12(火) 15:37:45
矢印キーで

969 :デフォルトの名無しさん:2010/10/12(火) 15:41:18
Locationプロパティを直でいじる。
矢印キーを活用する。
書式設定>オブジェクトの整列を活用する。

全部試してみろ

970 :デフォルトの名無しさん:2010/10/12(火) 15:45:44
968さんそれいいですね使わせて頂きます

Formに下記のようにTextBoxを配置しました

■←TextBox1
■←TextBox2

両方ともプロパティのAnchorにTop, Bottom, Left, Rightと指定して
TextBoxのサイズがFormのサイズに合わせて拡大縮小するようにしました
ただ、そうするとFormを下に伸ばすと上のTextBox1が下のTextBox2に被ってしまいます
何かよい解決方法はござませんか?


971 :デフォルトの名無しさん:2010/10/12(火) 15:46:24
入力中のため気づきませんでした
969さんの方法も試してます

972 :デフォルトの名無しさん:2010/10/12(火) 16:13:00
IDEの使い方かよ

973 :デフォルトの名無しさん:2010/10/12(火) 16:17:51
>>970
TableLayoutPanel使ったら?


974 :デフォルトの名無しさん:2010/10/12(火) 16:18:28
初心者スレだから仕方ないだろ

975 :デフォルトの名無しさん:2010/10/12(火) 16:30:11
TableLayoutPanel

SplitContainer

976 :デフォルトの名無しさん:2010/10/12(火) 16:52:16
デスクトップの領域を変更するのはC#で出来ますか?
Cじゃないと無理ですか?

977 :デフォルトの名無しさん:2010/10/12(火) 16:56:58
デスクトップの領域、を変更? したらどんなことになるの?

978 :デフォルトの名無しさん:2010/10/12(火) 16:57:06
>デスクトップの領域を変更する
解像度の変更?
これだとAPIをC#で呼び出せばいいだけじゃないかな?
ただ解像度一覧を取得したりとちょっと面倒だったような

979 :デフォルトの名無しさん:2010/10/12(火) 17:03:18
Vistaや7では右側にガジェットが表示されてるときにプログラムを起動して最大化しても
ガジェットには被りませんでした
やっぱ無理層ですね

980 :デフォルトの名無しさん:2010/10/12(火) 17:06:01
それはまた別の話。

981 :デフォルトの名無しさん:2010/10/12(火) 17:24:59
970です
出来ました!
ありがとうございます!
本当にありがおうございます!

982 :デフォルトの名無しさん:2010/10/12(火) 18:47:28
配列をListBoxにセットして表示されるアイテムでaから始まる文字列のみ表示するフィルターを行いたいのですが
配列のときにフィルターかける方法は思いついたのですが、ListBoxにセットしてからフィルターを書ける方法は可能でしょうか?
もしなければ配列のときにフィルター書けるようにしたいと思います

983 :デフォルトの名無しさん:2010/10/12(火) 19:30:25
DataTable使えば?

984 :デフォルトの名無しさん:2010/10/12(火) 19:38:39
DataTableなんですがVC#2010 Expressを使ってましてツールボックスにないみたいで使えませんでした


985 :デフォルトの名無しさん:2010/10/12(火) 19:52:55
配列だってツールボックスにはないだろ…

986 :デフォルトの名無しさん:2010/10/12(火) 21:31:45
>>979
無理層
アプリケーション層
プレゼンテーション層
セッション層
トランスポート層
ネットワーク層
データリンク層
物理層

987 :デフォルトの名無しさん:2010/10/12(火) 21:33:56
ゆとりもここまで来たか
C#が馬鹿にされるのもやむなし

988 :デフォルトの名無しさん:2010/10/12(火) 21:41:23
アプリ層の上は、政治層、経済層、宗教層だと思うんだ。

989 :デフォルトの名無しさん:2010/10/12(火) 21:44:26
>>987
>>1

990 :デフォルトの名無しさん:2010/10/12(火) 22:22:26
DataTableのサンプルを見つけてやってみたのですがダメでした
書いてみたコード
ttp://codepad.org/2z0iAsCm
参考にしたサイト
ttp://social.msdn.microsoft.com/forums/en-US/winforms/thread/b2bebc5d-5b7f-4651-9930-ccbff208748e


DataTableは難しいですね
やっぱり配列でやったほうが簡単ですね
配列使うことにします

991 :デフォルトの名無しさん:2010/10/12(火) 22:35:06
DataTableが難しいって・・・

992 :デフォルトの名無しさん:2010/10/12(火) 22:37:15
もうええわ

993 :デフォルトの名無しさん:2010/10/12(火) 22:39:13
ふらっとC#,C♯,C#(初心者用) Part64
http://hibari.2ch.net/test/read.cgi/tech/1286890729/

994 :デフォルトの名無しさん:2010/10/12(火) 23:05:09
ぶらんとしー、しゃー、ぷぅ

995 :デフォルトの名無しさん:2010/10/12(火) 23:32:21
♭¢♯♪

996 :デフォルトの名無しさん:2010/10/13(水) 11:37:33
C#で1.0〜2.0まで対応してるクラスってのと
4.0から対応してるクラスってのがあって
両方を一つのプログラムの中に書いた場合、動きますか?


997 :デフォルトの名無しさん:2010/10/13(水) 12:55:35
>C#で1.0〜2.0まで対応してるクラス
ってなに?
C#の文法的な意味でいってるの?それとも.Netのバージョンの話?
それからそのクラスっていうのはソースコードで存在するものなのか、
コンパイル済みのDLLなのかも書いてくれないと判断できない。

998 :デフォルトの名無しさん:2010/10/13(水) 13:13:22
名前空間のメソッドとかプロパティのことです

999 :デフォルトの名無しさん:2010/10/13(水) 13:22:34
おそらくNetFrameworkのことだろうけど
具体的にどのクラスが2.0まで対応なのか挙げてみて

1000 :デフォルトの名無しさん:2010/10/13(水) 13:24:35
続きは次スレで

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

193 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)