1 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 03:17:20 ] (#゚ー゚)つ < C#、.NETの話題はこちらでどうぞ。 前スレ C#, C♯, C#相談室 Part59 pc12.2ch.net/test/read.cgi/tech/1274019232/ Visual C# 2010 Express Edition 日本語版 www.microsoft.com/japan/msdn/vstudio/express/vcsharp/ その他テンプレ>>1-5 くらい
577 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 16:48:58 ] オートフォーマット切るとか考えたこともないわ コードのフォーマットにこだわって手修正したりする奴は迷惑なだけ
578 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 18:38:16 ] デフォの括弧の位置だけは気に入らないけど。。。デフォのままで使ってる。
579 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 18:48:22 ] そういや全てのソースを整形するにはどーすんの?
580 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 19:48:06 ] 返り値をboolで返すのも、IsXXXみたいな十分に明示的なネーミングのメソッドの場合は除くとして、 一般にはうんこだとされてる手法だと思うけど.... そんな程度の人が偉そうに命令口調で講釈垂れてるんだから嫌になるな
581 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 19:50:15 ] > 一般にはうんこだとされてる手法だと思うけど.... 思わない
582 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 19:53:10 ] まあ、馬鹿な君ならそうでしょうとも
583 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 19:54:38 ] 一般に続く名詞はなんだろうな
584 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 19:56:00 ] たとえばTryParseは成功したらTrue、失敗したらFalseだけど >>580 の命名規則にしたがってないからうんこメソッドだな
585 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 20:07:19 ] Tell, Don't Ask原理主義者か?何事もほどほどに。
586 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 21:27:17 ] 最近だとHashSet<T>.Addは要素が重複してても例外を投げずにfalseを返す
587 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:00:20 ] 既にあるVC#プロジェクトでlinq-to-xmlを使いたく、まず最初に using System.Xml.Linq; と宣言を追加しただけの状態でコンパイルしてみたのですが、 型または名前空間名 'Linq' は名前空間 'System.Xml' に存在しません。アセンブリ参照が不足しています。 というエラーがでるのですが、どうすれば解決できるのですか?
588 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:04:43 ] System.Linq.Xml.Linq.dllを参照設定に追加する ターゲットフレームワークは.NET3.5か.NET4に設定する必要がある
589 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:07:14 ] あきらめろ
590 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:13:00 ] >>588 ありがとうございます。 対象のフレームワークは、.NerFramework3.5でした。 System.Linq.Xml.Linq.dllの参照設定とはどのようにやるのですか?
591 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:15:29 ] ねーねー。なんで初心者スレ行かないの?
592 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:21:04 ] ソリューションエクスプローラで参照設定を右クリックして参照の追加を選ぶ .NETタブのSystem.Linq.Xml.dllを選んでOK LINQ to XMLってちょっと癖があって結構難しいよ? ちゃんとわかってる人のための便利なオモチャって感じ
593 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:33:16 ] ちゃんとわかってる人のための便利なオモチャって感じだね
594 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:40:03 ] >>592 おお!できました! ありがとうございました!
595 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:44:49 ] >>594 お役に立ててなによりです
596 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:51:40 ] いえいえどういたしまして
597 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 20:39:00 ] File.Replaceってsoruceとdestinationが同じドライブでないとダメなようだけど、 こんな使いにくい制限をわざわざ設けてる理由って何なんだろう。 ファイルを上書き保存する時なんかに、作業ディレクトリに一旦一時ファイルを 作ってから元のファイルを置き換える用途を当然想定してるんだと思ってたが、 こんな制限があったらこういう使い方できないよね。
598 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 20:47:07 ] その用途ならMoveでもCopyでもいいだろ
599 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 20:54:39 ] 馬鹿っぽい(たぶん「ぽい」ではないんだろうが)物言い....
600 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 20:59:40 ] >>597 物理的にファイル動かさなくて済むからでしょ。
601 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 21:05:49 ] >>600 それは事実としては正しいけど、 それって>>597 みたいな制限を正当化する理由になるかね?
602 名前:598 mailto:sage [2010/07/13(火) 21:16:23 ] ファイルシステム上のエントリの参照先を変更するだけなんだから 当然ファイルの実体は全部同じボリューム上にある必要があるだろ
603 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 21:18:39 ] >>602 言ってる意味分かってる? だから、そういうシステムの都合があるにせよ、 そのシステムの都合をFile.Replaceに「押し付ける」理由をお聞きしてるわけですが。
604 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 21:29:48 ] >>603 MSに聞けとしか。 想像だけどアトミックな操作に使ってくれ(そしてそれは物理ボリュームが別だと無理)ってことなんじゃないの? 同じディレクトリ内の作業でバックアップファイル作るために使うとかさ。 それ以外は Move とか Copy とか使えってことなんじゃないのかね。
605 名前:598 mailto:sage [2010/07/13(火) 21:31:06 ] WIN32のReplaceFileをラップしただけだろっつうか ファイルシステムに依存した機能だからこそアトミック性が保証できるんだろっつうか 逆にファイルシステムの都合に依らないファイル操作なんてありえんのかって話だが
606 名前:デフォルトの名無しさん [2010/07/13(火) 21:35:25 ] なぁ、formの無いプログラムってどうやるん? タスクトレイだけですませたいんだけど。 フォームがないとデザイン画面でnotifyiconとか作れないし。
607 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 21:42:00 ] 態度がでかいな
608 名前:デフォルトの名無しさん [2010/07/13(火) 21:44:36 ] あの、すみません。 Formの無いプログラムっていうのは、どうやってつくればよろしいんでしょうか? タスクトレイだけですまたいんです。 フォームがないとVisualStudioのデザイン画面を使い NotifyIconコントロールなどを貼り付けたりすることができません。 よろしければ、教えてもらいたいのですが。すみません。どうぞ、宜しくお願いします。
609 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 21:48:53 ] 改行が多いな
610 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 21:51:48 ] あの、すみません。Formの無いプログラムっていうのは、どうやってつくればよろしいんでしょうか?タスクトレイだけですまたいんです。 フォームがないとVisualStudioのデザイン画面を使いNotifyIconコントロールなどを貼り付けたりすることができません。よろしければ、教えてもらいたいのですが。すみません。どうぞ、宜しくお願いします。
611 名前:598 mailto:sage [2010/07/13(火) 21:53:03 ] ノリがいいな
612 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 21:53:40 ] >>604 ただの愚痴だけど、>>597 みたいな処理を安全に書くのって意外と手間だからさ。 安全っていうのは、例えば仮に何らかの理由でオリジナルのファイルを 作業ディレクトリに作った一時フォルダで置き換えられないとしても、 最低限オリジナルのファイルが失われないことを保証しようと思うと結構面倒。 こういうのこそライブラリで用意されるべきだと思うんだけどな。
613 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 21:54:42 ] すまたin!
614 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 21:57:20 ] 今必要だけどないものをウダウダ言ってもムダ その間にソース書いたほうがよっぽど生産的
615 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 21:59:14 ] >>608 notifyIcon.Visible = true; しといて Application.Run(); 呼ぶだけ。 これでメッセージループが動く。 終わるときは、 Application.Exit(); を呼ぶ。
616 名前:608 mailto:sage [2010/07/13(火) 22:03:32 ] >>615 どうも、ありがとうございます。それだけでできるんですか? とても助かりました。今からやってみます! 他の人もどうもありがとうございました!
617 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 22:29:35 ] C#の初心者向けで良い本何かありますか? あと、C#のソースをJAVAに移植するとしたら、どんな事に気をつければよいですか?
618 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 22:35:52 ] @ITで十分 本なんていらん どうしてもというなら@ITの本があるからそれ買え
619 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 22:42:28 ] >>616 最小構成サンプル using System; using System.Windows.Forms; namespace nicon { public class nicon { System.Windows.Forms.NotifyIcon icon = new System.Windows.Forms.NotifyIcon(); System.ComponentModel.ComponentResourceManager res = new System.ComponentModel.ComponentResourceManager(typeof(nicon)); nicon() { icon.Icon = (System.Drawing.Icon)res.GetObject("nicon"); icon.ContextMenu = new ContextMenu( new MenuItem[] { new MenuItem("Exit", delegate { Application.Exit(); } ) }); } [STAThread] public static void Main(string[] args) { nicon inst = new nicon(); inst.icon.Visible = true; Application.Run(); inst.icon.Dispose(); } } }
620 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 23:42:52 ] StreamReaderってファイルが無かったりアクセス権がなかったりしたら 例外をスローもせずに完全に固まらないか?
621 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 23:48:01 ] んなこたーない。
622 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 23:56:27 ] おまえアク禁な
623 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 23:56:44 ] >>621 いやなる Windows7 64bit C:\ルートに存在しないファイル名でStreamReaderやってみそ
624 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 23:58:00 ] StreamWriterの方もだわw
625 名前:608 mailto:sage [2010/07/14(水) 00:00:19 ] >>619 さん。 ぬぁー!どうもありがとうございます。すごい参考になりました! もう、あとは私の個人的な機能を付加するだけですね(;^_^ 個人的な機能もたいしたことがないので、ちょっと追加するだけでよさそうです。 こんなものをパッと書けるなんてすごいですね。 ネットを今、あさってる最中でした。ありがとうございました。ComponentResourceManagerとかすごい参考になります。
626 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 00:03:04 ] >>623 いやだよ。
627 名前:621 mailto:sage [2010/07/14(水) 00:09:35 ] >>623 Windows7 Ultimate x64 + Visual Studio 2010 Professional .NET2.0/4.0, x86/x64/AnyCPU, Debug/Release の12通りの組み合わせで試してみたけど、 どの組み合わせでもFileNotFoundExceptionが発生するな。とりあえずソース晒せ。 ちなみに俺はこう書いた。 using (var sr = new StreamReader(@"C:\a.txt")) { }
628 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 00:29:37 ] using (StreamReader sr = new StreamReader(@"c:\a.txt")) { String data = sr.ReadToEnd(); } MessageBox.Show("aaa"); 複雑なんでFormLoadにこれを書いて試したがやっぱりメッセージが出てこない
629 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 00:31:21 ] ちなみにVisualStudio2008の.Net2.0 Windows7 64bit Windows7はクリーンインストール後、特にフォルダの権限とかいじってない状態です
630 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 00:35:46 ] >>625 あのさあ・・・初心者スレに行ってくれないかな?
631 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 00:43:34 ] >>628 そりゃc:\a.txtが存在してないならMessageBox.Showが呼び出されることは決して無いだろうが
632 名前:621 mailto:sage [2010/07/14(水) 00:47:07 ] >>628 確かにVS2008でデバッグ実行すると、例外が捕捉されないな。 出力ウィンドウを見る限り例外自体は発生しているし、デバッグなしで実行(Ctrl+F5)すれば ちゃんと例外ハンドラが働くから、VS2008のデバッガの問題っぽい。 メッセージボックスが表示されないこと自体は>>631 の言うとおり正常な動作。 とりあえず StreamReader は避けて File.ReadAllLines とか File.ReadAllText を使ったら?
633 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 00:59:40 ] >>532 ああほんとだ、デバッグモードのしとけば何か原因が拾えるという思い込みが逆に命取りだった 普通に実行したら例外が出てるね なんじゃこりゃ
634 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 01:05:41 ] 100ずれてますよ
635 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 01:53:49 ] VS2008のデバッグ実行でも、出力窓には例外が出ているハズ 例外出ても止まったり止まらなかったりするのは割とよくある
636 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 09:38:11 ] P2PソフトをC#で作ってみた DHTを実装して普通に車輪の再発明しても意味がないので 全文検索システムに改造してみた といっても負荷の予想がつかないので小さいメモを放流して 内容から検索するみたいなそんなものを 理論上数百万件のデータが保持出来る 検索はたぶん1つにつき10分程度かもしれない ただの実験ソフトなんだけど、実用的に動いたら応用範囲はかなりあると思うのだけど 誰かテストしませんか?
637 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 09:39:57 ] するする 面白そう
638 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 09:44:58 ] 検索に10分?え?
639 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 11:15:26 ] >>637 アップロードとかいろいろしないといけないのでしばらくお待ちください >>638 遅いかな?まあGoogleみたいなのに比べると遅いけど ネットじゅうに分散したメモから10分で余すところ無く拾い集めてくるってことだよ といっても予想だけど、シミュレーションではうまく動いてるけど 実際のネット環境では動くかどうか
640 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 11:34:49 ] 目的のデータを保持してるマシンが24時間稼働とは限らないからね
641 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 11:38:37 ] >>577 ,578 そのまま使ってるのかー。 自分も一応そのまま使ってるけど、2010になってから かなり補正するようになって使いにくくなった気がする。 ;か}が入力されたときに調整してるから}を先に書くと うまく補正されない。癖の問題ではあるけど。 ところで「基本設定」と「上級者設定」ってのがあるけど、 基本設定の場合、手動で追加しないとタブオーダーと インデント操作はできないの?
642 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 11:41:14 ] P2Pってそれぞれのマシンが落ちててもいいように、自動でキャッシュ持つんじゃないの?
643 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 11:42:12 ] うまく補正されない。痔の問題ではあるけど。 に見えた。
644 名前:598 mailto:sage [2010/07/14(水) 11:43:04 ] >>641 ;}が先に書いてあってもEnter押したらたいがい補正されるだろ?
645 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 11:45:36 ] おお、名前が残っていたがもう不要だな
646 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 11:49:56 ] 641がどんなコードの書き方しててどんなオートフォーマットの動作を難儀に感じてるのか全く分からない
647 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 12:38:29 ] >>644 ある程度構文正しければ確かに補正されたと思う。 構文関係は慣れることにします。 >>646 /*〜*/の中に貼り付けすると勝手にインデントする (これを直すのにインデント操作ボタンが欲しかったけど基本設定では表示されてなかった) /*で改行すると次の行に*が入る この辺が特に難儀に感じた。
648 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 12:45:34 ] まあね
649 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 14:04:14 ] すみません、すべてのテキストボックスでエンターが押された時に フォーム内のボタンを押した事と同じイベントを発生させたいのですが これはどうやって実現できますか? また、テキストボックスが10個あるとして そのすべてに同じKeyUpイベントと処理を記述するのは見通しが悪くなると思うのですが これを一カ所にまとめる事はできますか? VB の handle1,handle2 みたいな書き方がしたいのですが ご教示お願いいたします。
650 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 14:11:19 ] >>649 > すみません、すべてのテキストボックスでエンターが押された時に > フォーム内のボタンを押した事と同じイベントを発生させたいのですが 同じイベントを発生させるんじゃなくて、それぞれのイベントで同じメソッドを呼び出す方向で > また、テキストボックスが10個あるとして > そのすべてに同じKeyUpイベントと処理を記述するのは見通しが悪くなると思うのですが > これを一カ所にまとめる事はできますか? > VB の handle1,handle2 みたいな書き方がしたいのですが デザイナでイベントハンドラを既存のに設定する
651 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 14:12:16 ] >>650 さん ありがとうございます。 さっそく調べてみます。
652 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 14:17:14 ] >>650 さん >デザイナでイベントハンドラを既存のに設定する できました!ありがとうございます!
653 名前:デフォルトの名無しさん [2010/07/14(水) 14:54:09 ] ListView を仮想モードにした場合、 項目の選択状態を未選択、または先頭の項目を選択状態にするには、 どうすれば良いでしょうか? SelectedItemsプロパテイでできるかと思いましたが、 仮想モードではエラーとなりました。
654 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 15:02:49 ] ListView.VirtualModeの解説に書いてる
655 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 15:12:14 ] もう一つ質問なんですが^^; C#のコードの記法が if(state) { } とかに自動的になるのが気に入らないんですが デフォルトを if(state){ } にする方法はありますか?
656 名前:653 mailto:sage [2010/07/14(水) 15:13:54 ] >>654 SelectedIndices ですね。 大変失礼しました。ありがとうございます。
657 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 15:24:11 ] >>655 C#の相談というよりVSの使い方だが [ツール]→[オプション] の中にテキストエディタの設定をするところがある
658 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 15:24:27 ] >>655 オプションのテキストエディタ - C# - 書式設定の中を好きにいじれ あと初心者用スレもあるから内容に応じて選択しろ
659 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 15:45:00 ] \ / .::::::::::::::::::::::::;;:;;::,ッ、:::::: ) く ホ す \ l ,ッィrj,rf'"'"'" lミ::::::: く れ モ ま Y ,! ミ::::::: ヽ な 以 な `ヽ、 | くミ:::::::: ノ い 外 い |、__ ャー--_ニゞ `i::::,rく か は ``''ー- ゝ、'l  ゙̄´彑,ヾ }::;! ,ヘ.) ! 帰 ゙ソ """"´` 〉 L_ っ / i , /| て r ≡=- 〈´ ,,.._ i 't-'゙ | ,へ ,r┘ ,、 yx=''" `ー{゙ _, -、 ; l レ' ヽr、⌒ヽ' ゙、`--─゙ /! `、 _,,、- ゙、 ー'' / ; `、 -''"_,,、-''" ゙、 /;;' ,' / 、\ -''" / `ー─''ぐ;;;;' ,' ノ // / ヾ_、=ニ゙
660 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 15:46:09 ] うわ−!すみません誤爆です^^; >>657 >>658 さん ありがとうございました!解決しました!
661 名前:デフォルトの名無しさん [2010/07/14(水) 15:53:53 ] >>660 しねよ
662 名前:デフォルトの名無しさん [2010/07/14(水) 18:01:14 ] >>661 お前が市ね、ばか
663 名前:デフォルトの名無しさん [2010/07/14(水) 18:03:58 ] ^^; ←これむかつく
664 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 18:14:27 ] >>662 じゃあ俺が市ぬよ。
665 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 20:02:43 ] System.IO.Directory.GetDirectories("C:"); System.IO.Directory.GetDirectories("C:\\"); って、結果違うのね。。。 フォルダの時はちゃんと\付けて返してくれるのに、 なぜドライブの時は\を付けてくけないのだ。。。
666 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 20:13:00 ] それより、ドライブのルートと SearchOption.AllDirectories を指定して GetFiles や GetDirectories を使うと落ちるのはどうにかならないものか。 SystemVolumeInformationにアクセスしようとして権限違反で落ちるようなんだけど。
667 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 20:35:01 ] リンクがループしてると無限ループするって書いてあるし、実用的なオプションとは思えない TopDirectoryOnlyで例外ハンドルしながら自分で再帰処理するしかないんじゃ
668 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 21:02:22 ] いくつか教えてください。 ・JapaneseCalendar.Eraから西暦の開始日付を取得したい ・JapaneseCalendar.Eraを"平成"等の文字に変換したい 完全にJapaneseCalendar依存にしたいのでEraをswitch分岐したり 定数で開始日付を固定したくはないのですが出来ますか?
669 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 21:24:02 ] 前者はリフレクションでJapaneseCalenderのprivateフィールドを読めば可能。 後者はたぶん無理。
670 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 21:35:43 ] 通常の使い方では無理ってことですね・・・。 Parseで変換できるんだから"平成"等の取得くらいは期待してました・・。 ありがとう。
671 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 21:41:21 ] 年号の取得はもう一段階上のDateTimeFormatInfoの仕事らしい
672 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 22:06:49 ] あれは動けばいい
673 名前:636 mailto:sage [2010/07/14(水) 22:43:55 ] 初期ノードキャッシュ用と本体配布が出来るCGIが使えるサーバが見つからない
674 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 22:48:37 ] GAEは?
675 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 23:07:44 ] GAEは?・・・
676 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 23:20:06 ] >>670 int era = 0; var culture = new System.Globalization.CultureInfo("ja-JP", true); culture.DateTimeFormat.Calendar = new System.Globalization.JapaneseCalendar(); var eraName = culture.DateTimeFormat.GetEraName(era); で取得できるみたい
677 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 23:21:05 ] >>674 面白そうだけどPerl版で普通のhttpリクエストしか実装してないから GAE専用のアクセスクラスを実装しないといけないので時間が掛かる
678 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 23:34:43 ] >>677 そうなのか、サンクス
679 名前:669 mailto:sage [2010/07/14(水) 23:56:43 ] >>676 そんな方法があったのか。無知を恥じる。
680 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 01:57:00 ] 質問でっす windowsフォームアプリケーションでinvokeを使う場合 this.Invoke(〜〜〜 で使えますがフォームを持たないクラスでこうしたい場合はどのようにすればよいのでしょうか? 分かる方、お願いいたします
681 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 01:57:58 ] Invokeの意味わかってんのか?
682 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 02:07:38 ] そーーーゆのいいですから、即答お願いいたします〜〜〜orz
683 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 02:16:44 ] 諦める コントロールへの参照がないならControl.Invokeする必要ないし コントロールへの参照があるならそれ使ってInvokeするだけだし
684 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 02:20:06 ] 出来ない 意味もわからない馬鹿は出直せ
685 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 02:24:14 ] InvokeA Invoke9
686 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 02:56:44 ] >>681 そっちこそそういうのいいですからw偽物です では別クラスのスレッドからフォームを操りたい場合はどうすればいいんでしょうか
687 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 03:29:10 ] どうすればも何もそのままだと思うが何が分からんのよ フォームを操るんだからフォームの参照持ってるだろ?
688 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 03:42:59 ] 別クラスが引数一つのget_chatというイベントを持っています。 別クラスでは新しいスレッドが作られていてそのスレッド内でイベントを発生させてフォーム側でそのイベントを処理するのですが フォーム側のソースでイベントの引数を受け取ろうとしたら"有効でないスレッド間の操作"となってしまいます。 現在はフォーム側で private void get_chat(string chat) { this.Invoke((MethodInvoker)delegate() { textBox1.Text += chat; textBox1.Text += "\r\n"; }); } として無事chatを受け取れているのですがライブラリとして作っているのでフォーム側でこのようにするのは避けたいわけです。 まだ始めたばかりで説明下手ですみません・・・
689 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 03:46:54 ] イベント駆動にしてその中でInvokeするだけだろ 何がわかんねぇんだ?
690 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 03:48:59 ] 今度から初心者スレへ行けよ
691 名前:デフォルトの名無しさん [2010/07/15(木) 04:05:11 ] この辺の話でしょ cs2ch.blogspot.com/2010/03/blog-post_29.html
692 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 04:07:22 ] ChatClass.OnGetChat += EventHander(OnGetChat) private void OnGetChat(Object o, EventArgs e){ textBox1.text += e.chat; } で ClatClass { private RecvThread (){ socket.recv(*****) if(OnGetChat != null){ ここでinvokeしてOnGetChatを呼び出したい } という意味では?}
693 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 04:09:34 ] 気持ち悪い実装だな クラスからフォームのメソッド呼び出すとかどんな設計だよ
694 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 04:16:43 ] 外部スレッドで発生したイベントは当然フォームではメインスレッドで動かさないといけないのに イベント処理が別スレッドのまま渡されてすべてユーザーがフォームでInvokeしないといけない なんて仕様の方が気持ち悪い、意味分からない、利点が思いつかない 自分も外部クラスでラップしたイベントがいちいちユーザーが使う時にInvokeしないと使えないなんて 無様すぎるから疑問に思ってたけど、これといった解決策が分からないままでいた
695 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 04:19:19 ] Javaを含むあらゆる言語を否定した出したよこいつ…
696 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 04:23:01 ] >>695 ジャバは知らないがMFCとかC++SDKとかイベントループは各フォームが1個づつ持ってて 外部から投げようがメインスレッドで確実に処理される 単に別スレッドのまま呼び出すのはただのコールバックだし それだったらわざわざEventHandlerなんて意味深なものを用意する意味が分からないんだが
697 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 04:31:23 ] C#やめてC++使えば?
698 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 04:32:45 ] とにかくこいつを初心者スレへ連れて行け
699 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 04:35:28 ] basicはgotoを使うのが当たり前なのに C#は何でgotoを使ったらいけないみたいな風潮なの?気持ち悪っ! とか何とか言い出しそうだなw
700 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 04:42:42 ] 多言語と比較は意味ないよねぇー だって、仕様(しょう)がない。。。
701 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 04:53:18 ] ようするに MFCは旧来のオブジェクト指向言語のイベントは メインスレッド <- 外部スレッドがポストだったんだけど JavaをベースにしたC#は メインスレッド->外部スレッドに関数ポインタ(デリゲート)を渡して呼び出してもらう にしたからクラスで完結したイベント処理が「不可能」なんだな やりたくでも出来ないんだw かっこ悪いのは分かってるけど出来ないんだw もし無理やりやるとしたら 外部クラスでデリゲートをキューしておいて メインスレッドのフォームからそれを一括呼び出しする関数を呼び出すみたいな そういうことしか方法がないのかもしれない >>698 や>>699 はそこまで考える頭が無いのは分かってるが
702 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 04:55:15 ] せめてオブジェクトクラスにそういうことをあらかじめやってくれる イベントキューみたいなのを包めて設計して欲しかったな
703 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 05:20:55 ] 久しぶりに痛い奴に遭遇した
704 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 05:27:30 ] >>673 自分で用意すればいいじゃん
705 名前:デフォルトの名無しさん [2010/07/15(木) 05:27:39 ] rem dirの出力をクリップボードに取り込む dir | clip rem クリップボードの内容を表示 clip こういうコンソールアプリを実装したい場合、 上下の処理の分岐ってどう書けばいいんですか?
706 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 05:38:06 ] ComboBoxのテキストを編集できないようにする方法を教えてください。
707 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 06:19:00 ] >>688 ISynchronizeInvokeでググれ
708 名前:デフォルトの名無しさん [2010/07/15(木) 06:28:20 ] >>707 rem dirの出力をクリップボードに取り込む dir | clip rem クリップボードの内容を表示 clip こういうコンソールアプリを実装したい場合、 上下の処理の分岐ってどう書けばいいんですか?
709 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 06:40:24 ] C#で簡単な.NETプログラムを作りました。 (ハローワールド程度) これを、自分のパソコンのウェブサイトにコピーしたのですが 動きません<C:\inetpub\wwwroot> VSでのデバッグ時には動いています。 localhost/ とやると、デフォルトのHTMLが表示されます。 localhost/WpfBrowserApplication1.xbap と入れると アプリケーションのダウンロードエラーとなってしまいます WpfBrowserApplication1.*は全部Default.htmlのあるルートに コピーしてあります。
710 名前:デフォルトの名無しさん [2010/07/15(木) 06:54:15 ] >>706 ぐぐれ デザイナーのプロパティの項目を上からみていけ
711 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 07:27:54 ] >>705 PeekConsoleInput関数でいける感じはするけど保証はないな、ドキュメント的に
712 名前:636 mailto:sage [2010/07/15(木) 08:36:47 ] notepadp2p.x10.mx/ とりあえずアップロードしてみたテスト
713 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 09:07:26 ] これって結局なんなの? 凄く時間のかかる全文検索だけ? どういう目的で使うの?
714 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 09:12:15 ] >>713 将来的にはこれはまったく別のP2Pシステムの一部になる予定だけど 本当に機能するか実験してる所です。 何か面白い使い方があれば適当にやって下さい。 多少の修正は対応します。
715 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 09:16:07 ] 京都府警がアップを始めました
716 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 09:16:15 ] 最低でも某有名P2Pみたいにポート開けずに検索出来るようになってからだな
717 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 09:17:16 ] そうだな、暗号化されてるし、誰が書いたか特定するのは不可能だから しかも検索出来るのはその文章のタイトルか内容のヒントを知ってる人だけだから 秘密の情報をやり取りするのとかに使えるかもしれない
718 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 09:24:15 ] そこまでして読みたい文章ってなんだ? んでヒント知ってる者同士ならその間柄でやり取りしたほうがセキュアじゃね? 暗号化つっても通信経路だけで常にオープンなわけだし
719 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 09:54:42 ] スレ違いじゃね?
720 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 09:55:36 ] >>701 デリゲートをキューに入れて、メインスレッドで一括呼び出しって、 それこそ Control.Invoke とか Dispatcher.Invoke がやってる事じゃん。
721 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 10:19:11 ] ネットワークに参加できない
722 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 10:57:14 ] だれも>>685 に反応しないところを見ると このスレ30歳以下しかいないんだな
723 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 11:00:01 ] >>721 原因が分からないけどこれのパケットだけ何故かFWに全部はじかれてる なんでだろう
724 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 11:14:18 ] >>722 今日初めてこのスレに来たから反応する暇も無いが わかりにくいわw
725 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 11:23:26 ] >>721 たぶんOKです
726 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 11:42:16 ] >>725 さっきルータのポートだけ開けてパソコンのFWで開け忘れてた 今は両方開けたつもりだけどまだ参加できないって言われる 「切断 0/0 受信 0.00bps / 送信0.00 bps 受信 49bytes / 送信 343bytes」って出てる
727 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 11:48:47 ] なんのかんのでこのスレの住人は優しい奴が多い。 オアシス的な場所。
728 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 11:55:41 ] >>726 dataフォルダをまるごと削除してもう一度再起動してもらえますか? 申し訳ない、こればっかりはデバッグ出来ない問題なんで
729 名前:670 mailto:sage [2010/07/15(木) 11:58:13 ] >>676 おお、ありがとう!試してみます。
730 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 12:21:10 ] >>701 >>>>698 や>>699 はそこまで考える頭が無いのは分かってるが 自分が良く分かって無いのにこういうこと言っちゃう人って…
731 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 12:26:48 ] 非同期コールバック系処理で同期取るの面倒だからこういうことするのは俺だけじゃないはず Begin〜( delegate() { ThreadPool.Push( delegate() //Invokeのデッドロック回避 { Invoke( (MethodInvoker)delegate() { //メインスレッドで処理 } } } ) ) );
732 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 12:34:02 ] イベントを使った非同期パターンを実装する場合はAsyncOperationを使って UIスレッドでイベントを発生させるのが推奨されてる もちろんフレームワーク側でのサポートが必要(WinFormsやWPFではサポートされてる)
733 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 16:06:45 ] Javaから引越し中ですが、 ArrayList 同士の結合をするには、どうすれば良いのでしょうか?
734 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 16:10:18 ] AddRange それはそれとしてArrayListなんか廃棄してList<T>なりに移行すること
735 名前:733 mailto:sage [2010/07/15(木) 16:19:07 ] >>734 ありがとうございます! List<T>なんてものもあるのですね。違いを調べて使ってみます。
736 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 18:01:08 ] >>728 おお、dataフォルダ消したら接続できた ありがとう
737 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 18:09:41 ] >>736 と思ったら今度は例外が出て落ちるようになった System.Security.Cryptography.CryptographicException はハンドルされませんでした。 Message="データが正しくありません。\r\n" Source="mscorlib" StackTrace: 場所 System.Security.Cryptography.CryptographicException.ThrowCryptogaphicException(Int32 hr) 場所 System.Security.Cryptography.Utils._DecryptKey(SafeKeyHandle hPubKey, Byte[] key, Int32 dwFlags) 場所 System.Security.Cryptography.RSACryptoServiceProvider.Decrypt(Byte[] rgb, Boolean fOAEP) 場所 c.a(Byte[] A_0, Byte[] A_1) 場所 c6.a() 場所 System.Threading.ThreadHelper.ThreadStart_Context(Object state) 場所 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) 場所 System.Threading.ThreadHelper.ThreadStart() InnerException:
738 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 19:27:07 ] 例外ぐらいトラップしてロギングしときなよ… お行儀の悪いソフトだな…
739 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 20:11:28 ] DBで管理するメモ帳を作ろうかと思ってます. 入力した文字列に含まれる単語をstring[]などで取得したいのですが いい方法はないですか? //例 今日は学校に行った ⇒ { "今日","学校","行った"} ("は","に")が入ってもかまわないです 変換キーを押したときに,IMEで再変換時にでる下線部ごとにstring[]を作ってくれるとありがたいのですが, ググってもIME周辺の処理がいまいち分かりません 回答求む
740 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 20:15:21 ] 形態素解析でぐぐれ
741 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 20:16:17 ] >>740 サンクス
742 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 20:18:38 ] >>741 うん
743 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 20:41:08 ] Graphics.DrawLineで画面外の滅茶苦茶な数値を入れるとちゃんとエラーも出さずに描画してくれるみたいだけど、 描画する線が明らかに全くない場合は自前でDrawLineを呼び出さないように弾いちゃった方が早い? それとも自前でコードを書かなくてもDrawLine内で同コストで弾いてくれる?
744 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 20:46:44 ] 1ドットずつ判定するから長い線じゃなければ自分で判定して弾かなくてもいいよ
745 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 21:24:58 ] スケーリングやトランスフォームも含めてGraphicsにお任せすることもあるけど、 そんなとき自前で判定してたらメリット半減だよね。
746 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 21:50:17 ] >>743 ぜひ実測して結果を公表して。
747 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 22:13:25 ] お前がやれ
748 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 22:15:53 ] ちょっと昔のドロー系のアルゴリズムを書いてある本なら必ず掲載されてたなw
749 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 22:19:42 ] >>737 なんだそれは >>738 暗号関係の部分はしてる こっちでは何も出ない 環境の問題?
750 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 22:23:24 ] >Graphics.DrawLineで画面外の滅茶苦茶な数値を入れるとちゃんとエラーも出さずに描画してくれるみたいだけど、 こんなのは昔のN88BASICのline命令から普通にできた話 仮想スクリーンだとか言葉は違うけど 指定したエリア(カメラの範囲や表示可能領域)から外れた場合は 処理しないってのはまあ大体実装されてる機能だよ
751 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 22:23:36 ] .netに環境も糞もないだろ…
752 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 22:27:21 ] と思ったら古いソースといつのまにかごっちゃになってた 修正します
753 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 22:33:55 ] 赦します
754 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 22:52:07 ] N88BASICにクリッピングなんて気の利いた機能あったっけな。 MS系BASICにそんなのなかった気がしたが.... まあ、>>750 が勝手に熱くなってるけど>>743 が聞いてるのはべつにそんなことじゃ ないはずなんだがなw
755 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 22:54:41 ] notepadp2p.x10.mx/ 修正版アップしました
756 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 23:03:59 ] 今日は蒸すね(´・ω・`;)ふぅ
757 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 23:09:45 ] >>754 できたよ 当時は若かったので仮想スクリーンが何を意味するかわからなかったけど 現在のGPUでは当たり前にやってるような機能が当時からあったんだなあ と近年3D関連やってみて思った
758 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 23:18:48 ] 実環境は想像よりパケットロスが大きいことが分かったのでちょっとプロトコル変えます
759 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 23:19:58 ] てかX68Kみたいに仮想VRAM上の特定領域を表示したりしてるわけじゃなく 単に座標が実表示領域を超えててもエラーにならないってだけだろ?
760 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 23:32:10 ] >>757 直線のクリッピングなんて中学の数学の知識で出来るけどね。 んな大げさな話でもない。
761 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 23:38:09 ] まあね。
762 名前:デフォルトの名無しさん mailto:sage [2010/07/16(金) 09:10:13 ] Windowsで線を描く場合は、そんなに単純じゃないと思う。 おそらく1ドットずつウィンドウ内かどうか判定して描画している。
763 名前:デフォルトの名無しさん mailto:sage [2010/07/16(金) 09:26:15 ] >おそらく1ドットずつウィンドウ内かどうか判定して描画している。
764 名前:デフォルトの名無しさん mailto:sage [2010/07/16(金) 09:26:56 ] 今時のOSがそんな間抜けな設計のわけねえだろ。 ちゃんと計算されてる。角度とか。
765 名前:デフォルトの名無しさん mailto:sage [2010/07/16(金) 09:36:02 ] 角度?
766 名前:デフォルトの名無しさん mailto:sage [2010/07/16(金) 09:37:04 ] シャア専板だかで昔流行ったギャグだ
767 名前:デフォルトの名無しさん mailto:sage [2010/07/16(金) 09:54:48 ] >>764 と言うと、ウィンドウの重ね合わせの描画処理ってどうやってると思います? まさか下のウィンドウから順番に描画していき、最後に画面に表示ってのはないと思うけど。
768 名前:デフォルトの名無しさん mailto:sage [2010/07/16(金) 10:01:51 ] 初心者スレへGo!
769 名前:デフォルトの名無しさん mailto:sage [2010/07/16(金) 10:12:18 ] そんなこと言わずに教えてくれ。 正式にどうやっているか知らないので。
770 名前:デフォルトの名無しさん mailto:sage [2010/07/16(金) 10:14:11 ] 初心者スレに凄いのいるからそいつに聞けよ