[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/09 12:23 / Filesize : 230 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



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

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

前スレ
ふらっとC#,C♯,C#(初心者用) Part44
pc12.2ch.net/test/read.cgi/tech/1251439041/

255 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 20:39:20 ]
まあ少なくとも歴史的にはそうなんだけど、
そのあたりは水掛け論にしかならんから議論しても無駄だね。

256 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 20:40:58 ]
水掛け論って。
メジャーな言語をいくつか思い浮かべればわかる話。

257 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 20:44:44 ]
ALGOLの影響下にある言語はフリーフォーマットだろうし、lisp系ももちろん一行一文じゃないし、
関数型だってそうだし、一行一文って、COBOLとかFORTRANとその影響下のBASICくらいじゃね?

258 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 20:47:22 ]
アセンブラやdosのbatだってそうだよ。
だから水掛け論にしかならんて。

259 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 20:58:46 ]
・一行一文
アセンブラ、バッチファイルやシェルスクリプト、COBOL,FORTRAN,BASIC

・フリーフォーマット
近代的な言語のほとんど

↑みたいな感じかね

「C系統以外ほとんどは」って、水掛け論になるレベルじゃないわな。
屁理屈でねばって「ほら水掛け論だ」って、自分にも一分くらいは理があるような
口ぶりはできるかもしれんけど。

260 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 21:02:44 ]
お前らスレタイ

261 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 21:53:27 ]
List<class>の値をDataGridViewに表示させてるんですけど
classのプロパティの値をコードから変更したら
すぐにDataGridViewにも変更された値を表示させたいんですが、
今のところ dataGridView1.Refresh(); で表示させてるんですが
一般的にはどうやるんですか?
もっとスマートなやり方があると思うんですが


List<Test> testList = new List<Test>();

class Test
{
public string s1 { get; set; }
public string s2 { get; set; }
}

private void Form1_Load(object sender, EventArgs e)
{
testList.Add(new Test { s1 = "a", s2 = "b" });
testList.Add(new Test { s1 = "c", s2 = "d" });
testList.Add(new Test { s1 = "e", s2 = "f" });

dataGridView1.DataSource = testList;
}

private void button1_Click(object sender, EventArgs e)
{
testList[0].s1 = textBox1.Text;
dataGridView1.Refresh();
}

262 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 22:03:18 ]
INotifyPropertyChanged
BindingList or ObservableCollection

263 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 22:19:30 ]
>>262
おぉそんなものがあったのか!
ありがとうございます。調べてみます



264 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 23:47:18 ]
>>252
例外フィルタがないぜ!!


265 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 00:04:31 ]
>>262
261じゃないがthx

public partial class Form1 : Form
{
class Test : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
public void NotifyPropertyChanged(string info)
{
if (PropertyChanged != null)
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
private string s1_;

public string s1
{
get
{
return this.s1_;
}
set
{
if (value != this.s1_)
{
this.s1_ = value;
NotifyPropertyChanged("s1");
}
}
}
public string s2 { get; set; }
}

266 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 00:05:13 ]

List<Test> testList_ = new List<Test>();

public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
testList_[0].s1 = "ababa";

}
private void Form1_Load(object sender, EventArgs e)
{
testList_.Add(new Test { s1 = "a", s2 = "b" });
testList_.Add(new Test { s1 = "c", s2 = "d" });

var customersBindingSource = new BindingSource();
customersBindingSource.DataSource = testList_;
dataGridView1.DataSource = customersBindingSource;
}
}

267 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 00:25:20 ]
windows movile ソフトウェアを作ってみてためしにcabファイルにしてみたんですが、
インストールに失敗します。
作成環境はVS2005です。
cabで失敗するunicodeは修正しました。

実機にcabを入れてタップすると「インストールに失敗しました」とだけ出ます。
こういう場合どうやって原因を確かめたらいんでしょうか?

268 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 00:43:47 ]
すぺるみす

269 名前:267 mailto:sage [2009/09/29(火) 13:57:50 ]
解決しました

ほんとにスペルミスでした

ミスしたのはcabプロジェクト名
本家プロジェクトに上書きしてしまいました orz

270 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 14:06:38 ]
>>268はエスパーなのか、本当に良くあるミスなのか

271 名前:267 mailto:sage [2009/09/29(火) 14:13:12 ]
本家プログラムと同じcabファイル名にしようと思うと起こりうることかも知れません

でも相当うっかりしてないとやらないと思います orz

272 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 15:09:51 ]
movileのことかと思ったわ

273 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 17:30:16 ]
invokeなんとか、とか、なんとかinvoke とか
たんなる invoke とかいろいろあるんですけど
全部delegateってことですか?



274 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 18:22:08 ]
invoke自体はただの英単語
何を指すかはメソッド次第

275 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 20:27:13 ]
各コントロール、フォームなどのフォントサイズを一括して変更する方法はないでしょうか?

276 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 20:42:53 ]
>>275
君は質問の仕方から勉強する必要がありそう

277 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 20:53:44 ]
>>275
方法1.フォントサイズを変更するコントロールすべてを一括選択した後にプロパティウィンドウでフォントサイズを変更する。
方法2.フォントなどはアンビエントプロパティなので、特に設定されていない場合(デフォルトの値)は親のコントロール(フォーム)の設定が反映されるようになっているので
     親コントロール(フォーム)のフォントサイズを変更すれば子コントロールにも反映される

278 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 20:59:59 ]
>>277
「フォントサイズ」なんて概念はそもそも存在しない。
その回答はない。

279 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:02:16 ]
↑君のレスは無用

280 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:13:18 ]
>>279
馬鹿はすぐこれだ。
ならフォントサイズってどういう意味だよ。

281 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:15:21 ]
>>280
フォントのサイズ

282 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:20:44 ]
>>280
msdn.microsoft.com/ja-jp/library/164w6x6z.aspx
これ以外になにが?

283 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:33:16 ]
他人をバカ呼ばわり → 逃亡



284 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:34:13 ]
(・∀・)クスクス

285 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:41:53 ]
>>282
お馬鹿だな。
それで、その「フォントサイズ」を>>277の方法でコントロールに適用できるのかよ。


286 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:45:29 ]
「それじゃできない」とかいらないよ。
「こうやったらできる」って言えばいいだけ。

俺としては、方法2 で十分だと思う。

287 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:48:48 ]
>>286
それは「フォント」を設定しているのであって
「フォントサイズ」(そんな概念は存在しないが)を設定しているのではないだろう。

端的に言えば、コントロールごとに書体が違う場合はどうするのか。

288 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:51:49 ]
>>287
とりあえずお前はスレタイ読んで風呂でも入って落ち着けよ、な?
あと、初心者スレに向いてないよ

289 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:54:26 ]
>>288
俺の方から煽った覚えは無いけどね。
初心者だろうがなんだろうが、正しくないことは正しくないといってるだけだ。

このように、馬鹿ってのは決まって偉そうに人に講釈をする規範を
自分には適用しないダブスタ野郎だ。

290 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:54:32 ]
>>273
一般的にはメンバやデリゲートを呼び出すことをinvokeという
純粋に言語としてのC#に話を限ると,メソッドやデリゲートを表す式の後(引数)を付けた式のことをinvocation expressionと呼ぶ

291 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:55:33 ]
フォントサイズの概念から議論しようか

292 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:10:37 ]
>>289
さっさと失せろゴミ


293 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:11:31 ]
>>289
認知症か
なるほど




294 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:15:02 ]
eventの存在意義がわからない
delegateで十分な気が

295 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:18:35 ]
イベントはデリゲートのためのプロパティみたいなもの。
Javaなどではよくイベントの代わりにObserverパターンというのが使われるんだけど,
それに出てくるaddListenerやremoveListenerを一つにまとめたのがイベント。
その点ではgetValue/setValueを一つにまとめたプロパティと似てる。
Observerについてはググれ

296 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:19:00 ]
eventって、複数登録できるんだよな?

297 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:20:17 ]
イベントは複数登録できる
デリゲートは1個だけ

298 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:22:53 ]
マルチキャストといって,デリゲートも呼び出し対象を複数登録できる
本来,イベントがあればaddとremoveの実装次第でどうとでもなるからマルチキャストはいらないんだが
設計当時はイベント以外のデリゲートの使用が想定されてなかったと思われる

299 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:45:35 ]
>>298
さすがに最後の行はない。そういうデタラメを言っては行かん。
例えばRegex.Replaceを見よ。

300 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:53:20 ]
最後の行は言いすぎだけど今みたいにデリゲートをガンガン使うような状況は絶対に想定されてなかった
最適化しづらいだろうし戻り値の扱いとか無理があるし邪魔なだけ

301 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:56:28 ]
delagteもなんで
DelegateクラスとMulticastDelegateがあるんだよう

はじめからDelegateクラスをマルチキャスト可能にしとけよ

302 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 23:09:52 ]
private List<EventHandler> _ClickA;
public event ClickA { add { _ClickA.Add(value); } remove { _ClickA.Remove(value); } }

private EventHandler _ClickB;
public event ClickB { add { _ClickB = Delegate.Combine(_ClickB, value); } remove { 略

ClickAのようにするのがイベントの概念としては本来の形。
でも通常,addやremoveを省略して普通にイベントを宣言するとコンパイラはClickBのようなコードを生成する。
つまり「どうせデリゲートなんてほとんどイベントにしか使わないでしょ?」ってことでコンテナをくっつけてる。

303 名前:267 mailto:sage [2009/09/29(火) 23:23:16 ]
えーとデータから作成した画像がピクチャボックスに貼ってあって
それが(10,10)動いたときもとの画像をずらして
上10ピクセルと左10ピクセルだけ描画したいんですが

for文を2重にして
for(x=0;x<=10;x++)
{
for(y=0;y<=10;y++)
{
}
}

ってやると当然10×10ピクセルしか描画しません
上記のように描画したいとき
また移動量(x,y)が逆に動いてマイナスのときにも対応できる
簡単なアルゴリズムはありませんでしょうか?

ちなみにCGのように描画が必要なのでマスクは使えません

ヒントかリンクだけでもけっこうです
よろしくお願いします



304 名前:275 mailto:sage [2009/09/29(火) 23:24:07 ]
片付いたので見にきたら少し賑やかになってるw

概念はわかるけどemSizeのemはなに?


305 名前:デフォルトの名無しさん [2009/09/29(火) 23:25:25 ]
どうでもいいが0〜10の、11回処理してないかい?それ

306 名前:267 mailto:sage [2009/09/29(火) 23:26:49 ]
あうw

307 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 23:29:32 ]
何がしたいのかサッパリ

308 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 23:40:12 ]
x < 10 または y < 10 の領域を描画したいんだろ

309 名前:267 mailto:sage [2009/09/29(火) 23:45:12 ]
>>308
あ!そうか!そういうことです!

なんかヒントになりました!

ありがとうございました!

310 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 23:46:00 ]
あらかじめ敵のXY座標を設定しておいて
それらをプログラム全体から利用したいんだけど
どこでどのように定義するのが適切なんでしょうか?

名前空間の内側、classの外側で定義すれば全体から利用できると思ったんだけど
下のを書き込むとフィールドやメソッドは定義できないとエラーがでます

Point TekiPos = new Point(10, 5);

311 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 23:47:57 ]
Teki.Posとは絶対に書きたくないの?

312 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 23:48:02 ]
>>310
public staticにしてクラス内にもて。
困ったときはpublic staticだ。

313 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 23:56:09 ]
まあゲームなんか難しく考えずpublic static(いわゆるグローバル変数)でもいいよ
ゲームは気を使って設計してもどうせ大なり小なり大域コンテキストクラスが出てくる



314 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 23:56:09 ]
>>311
あ、なるほど、Tekiクラスをプログラム全体で利用できるようにして
そのメンバPosに対してどこかでデータいれるってことかな

>>312
インスタンスを複数必要ないというか、あるとややこしくなるので
staticのほうがわかりやすそうですね

即レスありがとうございます

315 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 23:59:48 ]
>>314
ゲームって作ったこと無いんだけど
Enemyクラスかなんか作っといて、必要になったらnew Enemy()で
初期化してやった方がスマートなんじゃないの?

316 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 00:04:29 ]
敵が一体だからグローバル変数にするならまだいいけど,
敵が複数いて,ほかのクラスから特定の敵の座標を取得するためにいったんグローバル変数に入れたりするのは最悪のパターン

317 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 00:23:04 ]
どんなゲームだろうねえ

318 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 00:25:45 ]
敵がいて初心者が作るものったらSTG以外に無いだろ

319 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 00:40:24 ]
>>313
ありがとうございます。
最初からメモリや動作速度とか考えても仕方が無いですね
できるだけ自分にわかりやすく書こうと思います

>>315
敵と味方では振る舞いが違うからそういう風にしたほうがいいかもですね

>>316
そういう感じで設計仕様と思ってたんですが、なぜだめなんでしょうか?
将棋でいうところの盤をstaticで定義してどこからで参照できるようにして
部隊の動き(どの座標に前進後退するかなど)もstaticで定義しようと思っていたんですが

>>317>>318
シューティングは線形代数や三角関数などの数学的知識がいるので無学のわたしには無理です
ターン制の戦略ゲーム的なものを作ろうと思ってます

320 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 01:02:15 ]
class Matrix{} //フィールド全体とマス目を定義
class Enemy{} //敵のキャラクターを定義

この二つを作っておいてMatrixにEnemyのインスタンスを突っ込むとか
位置はEnemy、移動先はMatrixで定義しておいたほうが安全だと思う
グローバル変数をたくさん作ったり使い回し足りするのはトラブルの元

321 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 01:09:03 ]
逆だな
位置はMatrix、移動先はEnemy

322 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 01:10:55 ]
グローバル変数が使いたい時はstaticって何で入門書に書くんだろ
最初が肝心なんだぞ
書くなよ

323 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 01:14:50 ]
なるほど、グローバル変数を大量に作ってしまうのはそもそも設計に問題ありって感じですか
クラスの中にも自作クラスを入れられて、さらにそのクラスにも自作クラスを・・・
これがオブジェクト指向?
この感覚に慣れないとだめですね

>>321
マス目にenemyを放り込む感じですよね
そのほうがわかりやすそうですね

ありがとうございます



324 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 01:25:04 ]
動きゃいいんだよ
未完成で放置するのが一番良くない

325 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 01:32:11 ]
そんなことはないよ
静的変数使い回しなんてしてたら論理的なミスしたときに
わけわかめになりやすい
最初からオブジェクト指向のお作法を意識するのは上達の近道だよと
遠回りした俺が言ってみる久々のてすつ

326 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 01:35:24 ]
多言語から移った人間を意識してるんだろうけど要らない説明ではある気がする

327 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 02:44:03 ]
DataTable内に「name」という列を設けてその中に色々な名前を定義しています。

SEQ NAME
連番 名前
1  たろう
2  タロウ
3  TAROU

DataTable.Select("NAME LIKE '%たろう%'");

として検索した時に本来は
1  たろう
のDataRowのみ抽出したいのですが
2  タロウ
まで抽出されてしまいます。厳密に検索をするにはどうすればよいでしょうか?
※また、大文字・小文字も区別して検索するにはどうすれば良いでしょうか?   


328 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 06:09:00 ]
>>327
CaseSensitiveプロパティをtrueにしてからSelectしる

329 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 07:50:56 ]
>>302
どういう理屈だよ


330 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 08:54:11 ]
>>328
サンクス

331 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 10:50:45 ]
CSとKS,WSは別じゃないの?
プロパティ一覧見た限りだと、ロケールをインバリアントにすれば良さそう

332 名前:デフォルトの名無しさん [2009/09/30(水) 12:43:45 ]
vs2008でWindowsフォームアプリケーションを作成しました。
インストーラーを発行して、配布しようとしましたが、.netフレームワーク3.5のダウンロードに30分近く要します。
コンポーネントはクライアントプロファイルのみにしています。
皆さんはどのような手段でインストール方法を取られていますか?

333 名前:デフォルトの名無しさん [2009/09/30(水) 15:57:29 ]
ttp://www.microsoft.com/downloads/details.aspx?FamilyId=AB99342F-5D1A-413D-8319-81DA479AB0D7&displaylang=ja
の.NET Framework 3.5 Service Pack 1 (フルパッケージ) をDLしてインストーラに組み込んじゃいかんの?(いかんか)
#再頒布可能パッケージ があればいいんだけどね・・・・
#Microsoft .NET Framework 3.0 再頒布可能パッケージ まではあるのか・・・



334 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 16:05:09 ]
クライアント専用Frameworkサブセットってとこチェックしても30分もかかるもんなの?
やったことないけど

335 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 16:25:46 ]
Client Profile v3.5がインストールされる条件が変で、
バージョンを問わずフルセットの.NET Frameworkがインストールされていないこと。
条件が合わない場合は差分をダウンロードしてフルセットでのインストールとなる。
プレインストールのXPやVista以降の場合、基本的に.NETが導入済みなので、
よほど特殊な環境でなければClient Profileは導入されない。

336 名前:デフォルトの名無しさん [2009/09/30(水) 20:44:06 ]
>>335
XPにも標準で.netがついているの?
何かのネットで見たら、付いていないと書いていたんだ。
記事はまちがいだったのかな。

337 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 20:48:56 ]
「プリインストールの」だろ
相当前に使ってたノートPCにもデフォで1.1が入ってたぜ

338 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 20:50:09 ]
XP はないよ。
2003 が 1.1、Vista が 3.0 だね。

339 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 20:51:48 ]
でも、今時.net入ってない環境ってどうよ

340 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:04:00 ]
.netが出だした当初って誰も入れたがらなかったけど
.NETを使ったフリーソフトも出だして当たり前になってきたね

341 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:04:56 ]
2.0は入ってるものと考えていいと思うけど3.5はまだきつい

342 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:07:40 ]
まぁでも、2.0 が入ってれば、勝手に 3.5 が Windows Update で入るんだけどな。

343 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:07:59 ]
1.0が入ってないとダメっつーインストーラーは勘弁して欲しいw



344 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:32:02 ]
1.x が必要なアプリは使いたくない

345 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:44:28 ]
2.0とか3.5の入ってる環境なら1.x必須なのも動くんじゃないの?

346 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:47:32 ]
たいていは 2.0 で動くと思うけど、サポート対象にはしたくない。

347 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:48:34 ]
最近コンポーネントエラーって起きたことないな

348 名前:デフォルトの名無しさん [2009/09/30(水) 22:18:05 ]
長くなるけど質問お願い
暗号化を作っていて、ボタンのイベントに処理を書くのではなくて
クラスに処理入れて、それをボタン押したときに呼び出すようにするには
どうしたらいいのでしょうか
お力おかしください

public partial class Form1 : Form
{
//バイト配列で変数を宣言
public byte[] DesKey;
public byte[] DesIV;e,
public byte[] cryptData;


public Form1()
{
InitializeComponent();
RC2CryptoServiceProvider TDES = new RC2CryptoServiceProvider();
//TripleDESCryptoServiceProvider TDES = new TripleDESCryptoServiceProvider();
DesKey = TDES.Key;
DesIV = TDES.IV;
}

//暗号化ボタンを押したときの処理
private void button1_Click(object sender, System.EventArgs e)
{
// source 配列から cryptData 配列へ変換
// 文字列を byte 配列に変換します
byte[] source = Encoding.Unicode.GetBytes(genbun.Text);



349 名前:デフォルトの名無しさん [2009/09/30(水) 22:18:58 ]
上に続きですよろしくおねがいします
// Triple DES のサービス プロバイダを生成します
TripleDESCryptoServiceProvider des = new TripleDESCryptoServiceProvider();

// 入出力用のストリームを生成します
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(DesKey, DesIV),
CryptoStreamMode.Write);

// ストリームに暗号化するデータを書き込みます
cs.Write(source, 0, source.Length);
cs.Close();

// 暗号化されたデータを byte 配列で取得します
cryptData = ms.ToArray();
ms.Close();

// byte 配列を文字列に変換して表示します
angougo.Text = Encoding.Unicode.GetString(cryptData);

}

350 名前:デフォルトの名無しさん [2009/09/30(水) 22:19:53 ]
>>334
クライアント専用サブセットってどこで設定するの?

351 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 22:22:59 ]
暗号化とかまったく関係ないな。

352 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 22:23:59 ]
>>350
プロジェクトのプロパティ

353 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 22:26:42 ]
>>348
どう、ってインスタンスメソッドにするならボタンクリックでクラスを初期化して
メソッド呼び出せばいいのでは?
staticメンバ一個作っておいてそこにインスタンスぶち込んでstaticぽく呼んでもいいけど



354 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 22:26:49 ]
>>349
public partial … → public class Encryption
public Form1() → public Encryption()
private void button1_Click(… → public byte[] Encrypt(string sourceText)
byte[] source = … → byte[] source = Encoding.Unicode.GetBytes(sourceText);
angougo.Text = Encoding.Unicode.GetString(cryptData); → return Encoding.Unicode.GetString(cryptData);

355 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 22:27:35 ]
>>354
訂正
private void button1_Click(… → public string Encrypt(string sourceText)






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<230KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef