テンプレにVS2012のスレとDL先を追加しました。
otu
8 :
デフォルトの名無しさん :2012/09/07(金) 19:10:11.40
.Net Reflector 使って自分の作成した EXEを見たら びっくりする位簡単に、そして正確に逆アセンブルされてました。。。 必至で作ったソフトが簡単に ぱくられてしまいます。 何度化ツールでおススメはありますか?
Dotfuscator まあお前のソースなんか誰も気にしないよ
11 :
デフォルトの名無しさん :2012/09/07(金) 19:34:36.20
>>9 >>10 Dotfuscator 使って難読化したけど、最新版のReflector で見たら
綺麗に見える!!!
C#で書いたのをいまさらC++に置き換えるのはきついな。
12 :
デフォルトの名無しさん :2012/09/07(金) 19:36:21.68
ふうーwww Dotfuscatorのディレクトリの中に難読化後の EXEが生成されるのねwww 良かったw 最新版のReflector で開いても 意味不明な関数だらけになってるwww これでソース朴られる心配ねーなwwwwwwww
13 :
12 :2012/09/07(金) 19:39:18.22
うーん、読み辛くなってはいるが 読もうと思えば読めるな。。。 あかーん
いっそ公開しちまえ、すっきりするぞbyQZ
15 :
デフォルトの名無しさん :2012/09/07(金) 19:56:46.30
難読化しても読めるのは俺のスキルが高いからか? それとも、Reflectorの精度が悪いから?
元ソースと見比べでもしない限り解読難しいだろ
17 :
デフォルトの名無しさん :2012/09/07(金) 20:03:35.29
↑多分君のスキルの問題。 俺は、難読化しても結構理解出来るんだよね。 世の中に俺レベルの奴も中にはいるから心配。。。 でも、俺レベルの奴はいちいち逆アセンブルなんかしなくても作れるから・・・
18 :
デフォルトの名無しさん :2012/09/07(金) 20:06:04.29
Windowsフォームは難読化すると メソッド名がバラバラになるから読み辛いけど ライブラリ(*.dll)はそのまんまです。 DLLは難読化できないの?
dllにするときに難読化すれば?
>>17 書いた本人が読めると言っても説得力ないね
21 :
デフォルトの名無しさん :2012/09/07(金) 20:42:49.29
取り敢えず、 逆アセンブルしてソースをパクリたがる奴というのは低レベルが 大半だろうから、別にいいか。
22 :
デフォルトの名無しさん :2012/09/07(金) 20:54:56.95
批評に耐えてきたものが古典として永遠に語り継がれる
23 :
デフォルトの名無しさん :2012/09/07(金) 21:21:03.35
FormLoadイベントで次のコードを実行すると 画面上のTextBox内の文字列が選択された状態となります。 選択したくないのですが、どうすれば良いでしょうか? string mes = "long message"; txt_message.Text = mes;
そのコードの後に txt_message.Select( 0, 0 ); とでも書いとけ
25 :
デフォルトの名無しさん :2012/09/07(金) 21:55:32.63
↑ thank you
26 :
デフォルトの名無しさん :2012/09/07(金) 23:45:13.24
Dotfuscator 使えば、 少なくとも読み辛くなってソースをぱくる位だったら 一から書き直した方が速い!って気にはなるね。 取り敢えず、俺の作成した工数はこれで無駄にはならない。ちゃんちゃん♪
サーバーサイドに置いておけばプロトコル割られない限りOK telnetで接続してhelpと打たれてもコマンドを答えてはいけないぞ(BitKeeperはそこからクラックを受けた)
MVPでViewとPresenterの関係について ・View は、ユーザーからの入力イベントを受け取り、処理を Presenter に委譲します。 ・View は、上記以外の目的で Presenter を操作しません。 とあるのですが、例えばView内で直接Presenterのメソッドを呼び出すようなのは依存してしまうのでよくないということでしょうか? そうなると、Viewはイベントによるやり取りだけすることになると思うのですが、この方が望ましいですか?
今度WPFでプロジェクトが始まります。 フォームしか使ったことないんですが、WPFでここは押さえておけ!ってところあったらアドバイスお願いします。 あと、フォームと比較してWPFを使うメリット・デメリットってなんでしょうか? ネットで調べてもフォームと比較したメリット・デメリットを解説してる記事がないんです。
30 :
デフォルトの名無しさん :2012/09/08(土) 16:35:09.60
2chで質問してる時点で・・・
デメリットはそれだよ 使う人間が少なくて情報がない
>>29 WPFデメリット
・xaml言語を覚えなければいけない
・コマンドが少ない、トリガーとか面倒、いろんな意味でBlendないと無理
・WPFの方がバンディングが楽だけど、バインディング自体面倒なので使いたくない
・GUI作るのもxamlで手書き&クソ重い
・MVVMを意識しだすと死ぬ
・現状、Winフォームと同等のものが作れない
WPFメリット
・オシャレGUI
・大抵のイベントをコマンドにできるのでコードが見やすくなった気もしないでもない
とにかく、見た目をオシャレにしない限り、機能的に何か勝っているところもなく ただ、開発効率が異常に落ちるだけなのがWPF フリーソフトレベルのものを作るのにWPFは絶対に選択肢に入らない
俺がWinFormsを作りやすいと思っているのは単に慣れているだけと思っていたけど Xaml言語ってそんなに開発効率が落ちるのか
35 :
デフォルトの名無しさん :2012/09/08(土) 19:08:23.76
ぜんぜん別物だし 最新のリファレンスはBlendの吐くxamlというありさま
UIのデザインにXML使うだけで止めておけば良かった しかしそれ以上を目指してしまった
コントロールを配置したりする程度なら XAMLで直書きしていったほうがWinフォームより早くて正確だけど バインドやトリガーなどもろもろも書こうとするとめっちゃ面倒 何も考えずにやるとメモリリークを起こすし、初心者が手を出すものじゃないね Winフォームはイベントだらけになるから面倒だけどまだマシ
バインド使ってデータとビューを同期させる場合、短いコードで書けるので楽っちゃ楽 単純にコレクションを公開するだけで、それぞれのコントロール表示することができる WinFormだとそれぞれのコントロールにデータを表示するために ListViewCollectionだとかコントロールごとに仕様理解しながら、別々の手段で追加することになるから面倒
PictureBoxにDrawLine()で長さ100の線を引いたのですが PictureBoxを縮小して線の長さを50にする方法を教えて下さい。
WinFormsでオーナードローした経験のある人なら WPFのテンプレートに感動すると思う。 特にDataTemplateが神がかってるわ。
WinFormsでUIの動作や表示をほんのちょっとだけ改善したいと思っても 難しく酷く面倒で時間が掛かり断念した人は多いよね。 WPFだから先進的なオシャレUIを作らないといけないかっていうと全然そんな事はなくて そういう小さな要求も拾える所がいい。
44 :
デフォルトの名無しさん :2012/09/08(土) 23:21:08.22
VS2010で気がついたら 実行時エラーが発生しても、エラーメッセージがポップアップ表示されなく(無視されてる?)なっているのですが どうすれば治りますか?
45 :
デフォルトの名無しさん :2012/09/08(土) 23:22:44.73
try catch で囲むとしっかり catch ブロックに入ります。 毎回、try catch を書くのは面倒なので書きたくありません。
46 :
デフォルトの名無しさん :2012/09/08(土) 23:27:07.50
log4netって使っているやついるかね?
Javaから.NETへ移植されたライブラリってインターフェイスがキモいんだよな
USBハスプ挿さないと動かないようにしても、.NETのソース復元出来ちゃうから意味無し・・・
ドングル使うようなネイティブ製の市販ソフトだってクラックされまくってるわけだが?
51 :
デフォルトの名無しさん :2012/09/09(日) 01:44:42.58
取り敢えず、難読化しても読まれるので いかに読み辛くするか、それにつきる。
・お前の書いたコードなんて読みたがるやつは居ない ・カジュアルハック対策なら難読化しとけ ・隠したいデータはクライアントに渡すな 結局これにつきる
お前何か一つでも仕上げたことあるの? これに尽きるだろ
命つき果てて死ねばいい
>>52 なぜ難読化に拘るかを説明しておく。
こちらをA社とするA社は、開発
市販どころかライバル社のカメラからファーム吸い出して中身解析とか平気でやってる 今の俺の仕事 難読化なんて聞き飽きたよ 最終的に人海戦術でどうにでもなる
ミスったので書き直す。
>>52 なぜ難読化に拘るかを説明しておく。
こちらをA社とするA社は、B社(営業主体)からノウハウを盛り込みつつソフトを開発し
B社に無償でレンタルしている。開発はしたが開発代金等は受け取ってはいない。
しかし、そのソフトにより一定の売り上げがたち、売り上げの一部がA社に入ることになっている。
しかし、こちら(A社)にしてみると
B社にソフトをレンタル(無償)売り上げを立てるよりも
C社にレンタルした方がマージンが良い。
そこで、最悪B社にレンタルすることなくC社にしようと思っているが
契約を切り替えたタイミングで、そのソフトを無断に逆アセンブル等して
流用されやしないかを心配している。
初期の契約段階でかなりなぁなぁにやってきたが
売り上げが経ち始めてから、こーいうトラブルになりつつある。
A社としては、より支払い率をあげなければ、B社にはもう貸与しない。
C社に出しますよ!という切り札となっているのがソフトなのだ。
というわけで難読化に必死なのですよ。 .NETでやっている以上、ソースはどうしても見られてしまうので どれだけ逆アセンブルをし辛くさせるかに異常な位に執着してるわけです。 で、Windows Form部分については Dotfastor 使って確かに見づらくなりましたが、 *.dll化した自社ライブラリは難読化がまったくされずに困ってます。 クラスの中に便利な関数とかを詰め込み、それをDLL化しているだけですが クラス名、メソッド名にいたるまでまったくオリジナルのままなんです。 皆さんは、*.dllファイルはどうやって難読化していますか? 便利な関数群なのでぱくられると、工数(開発費)が盗まれたに等しくなってしまうのです。
言語の選択を間違えた 設計を間違えた 生まれてくるのが間違いだった さあどれが正解?
2chで相談するのが間違い
61 :
57 :2012/09/09(日) 02:20:31.33
これ以上は、司法の話になるからわかる奴はいないか。 最初のタイミングでh こちらは納得していないながらも、 A社よりも規模の大きいB社より仕事が得られると 相手方が特定ソフトについて「共同開発しましょう。」と口頭でしきりにいってました。 そのタイミングでは、確かに「あーはい。」とは言いましたが 書面は残していません。最悪、弁護士がはいってもしらばっくれられるか。 権力乱用だものね。 確かに、B社から知ったノウハウを詰め込みA社はソフトを開発したけど ソフト開発費はもらっていない。 ソフトによる売り上げの一部が安定的にA社に入っている。。。 うーん。まぁーどっちみちソースは維持でも渡さないからな!!
仕組みをブラックボックス化して特許とって製品を売り出したが他社にスグまねされた。 特許侵害で訴えてやるといったが、相手もブラックボックス化していて真似かどうかの根拠が証拠不十分 逆に不当な言いがかりを付けられたと難癖つけられ賠償させられて涙目って何処の業界でもあるよな
怪しいプログラムを見つけたら逆アセンブルすればいいじゃんって誰かが言ってた
64 :
57 :2012/09/09(日) 02:22:58.48
ソフトのアルゴリズムであったり、 使い方とかもろもろのドキュメントはまったく残しておらず ノウハウは、ソフトのマニュアル等のある場所は ・A社の開発担当者の頭の中 ・ソースコードの中のコメント だけです。 逆アセンブルしてもコメントまでは読めないですよね? 難読化して読みづらくして、逆アセンブルしたとしても 丸パクリは出来なければよしとしたほうがいいですかね?
いや、司法の話がどうかなんてのは建前的なものであって 内部的にはライセンスもNDAも無視なんてざらだよざら そう思った時にはもう割られてると思ったほうがいい 相手だってお前がそういう手段に出てきたときのリスクを考えていないと思うのか
66 :
57 :2012/09/09(日) 02:24:38.94
>>62 ソース頼む
とりあえずソースコードだけは何があっても守ります。
絶対にB社に渡すものか!!
最初の頃のうまくいかないときには、
仲がいいけどよくなると揉めるってのを本当に実感した。
契約書もないとか場末の下請けかフリーランス臭がする
68 :
57 :2012/09/09(日) 02:27:09.55
>>65 こちら(A社)からB社の社内環境にレンタルしてるソフトは
全て難読化しました。
*.dllは確かに難読化しても一発で簡単にソースを読めますが
然程、特殊なことはやっていないのでまだいいです。
問題は、
WindowsFormの中の処理。
こちらは色々と苦戦してノウハウを詰め込んだだけに
非常に難しい部分の一連の流れを丸パクリされるのを恐れています。
出来るだけ難読化するために他プロジェクトでしようしていたまったく関係ない
処理群もソースコード(WindowsForm側)に詰め込みまくることにします。
1日中バイナリやニモニックの羅列とにらめっこしてる俺なら コメントない程度なら序の口レベル
>>69 だから、逆アセンブルしたってコメントは見えないですよね?
だから、見えないくらい何の障害にもならないと言ってんですよ
見えなくても平気なレベルの人がはたして 逆アセンブルに頼るものなのか?
序の口レベル→序二段に昇格
>>68 そこまで気にするなら、プロファイラーなんかも意識したほうがよさそうだが。
(単に見にくくするためにコード量増やす手ぐらいしか考えていないのなら)
いい加減ネイティブコンパイラを用意して欲しいんだけど、 できるだろうになぜしないのか。
76 :
52 :2012/09/09(日) 03:31:16.56
77 :
72 :2012/09/09(日) 04:57:03.41
>>74 サンキュー。そんなのあったのね。
そーいえば、弥生会計難読化してねーよね。
普通にReflectorでソース丸見え。
弥生以外の会計ソフトもだいたい.NET製。 会計ソフトは.NET製の占める割合が特に高い分野だな。 調べりゃ他にも難読化してないのがあるだろうね。 ソースコードが丸見えだと批判する阿呆には理解できない光景だろうなw 知財を守る方法は単純に隠すだけではない。 ネイティブだろうと本気で見ようとする輩には時間稼ぎの気休めにしかならんよw
xamlも難読化してくれるの?
XAMLっていうかBAML(Binary XAML)な 当然難読化サポートしてるのがいっぱいある。例えばDotfastorも対応してる。
やるじゃん
韓国の食料品を販売する店を訪れた。店の中は純豆腐(スンドゥブ)鍋の試食コーナーが設けられており、 多くの人が内部を見回っていた。 品物を並べていた韓国人の従業員は「客が減ったことを実感している。竹島問題などに影響を受けて いるようだ」と答えた。彼は「テレビでは韓国の関連ニュースや討論会がよく放送される」と付け加え、 変わった雰囲気を伝えた。彼によると、この店はここ数ヶ月の間で3割ほどお客が減ったという。 「低迷しているのは確かだが、嫌韓ではない!一時的な現象だ」 これに対する反論も少なくない。新大久保駅の近くにある店で働いているキム・チャンヒョン氏は「客が減って いるのは確かだが、学生の夏休みシーズンが終わったためではないかと思っている。もうすぐ韓流が復興する だろうという話もあるし、ただ竹島問題で韓流が消えたようには思えない」と話す。 それでは、最近の売上減少についてはどのように思っているのだろうか。これについてはより率直な意見が 聞けた。キム氏が体感している売上減少は去年に比べて50%ほどだという。一連の流れについて彼は 「今年初めから韓流関連ショップの売上の減少があった。嫌韓というより、韓流のバブルがはじける時期だろう」 と述べた。 また、キム氏は「依然としてSUPER JUNIORやBIGBANGは人気を博している。俳優としてはチャン・グンソクが 依然として人気を集めており、パク・シフも最近日本人が好きな俳優として急浮上している」と述べた。不況だが、 韓国スターの人気は相変わらずだった。ショップで人気のある品目を基準に分析したキム氏の考えだった。 取材の結果、確実に影響は受けているが嫌韓が大きな流れではなかった。もちろん、毎週水曜日に右翼集団が 韓国の大使館の前でデモをするなど、過激な動きがあるのは事実だ。しかし、このような時こそ大衆文化の 関係者たちは韓国の文化コンテンツの質的な面を補完し、徹底的な準備をすべきではないだろうか。それと 同時に、日本だけではなく、様々な国に裾野を広げていく時ではないだろうか。 元記事配信日時 : 2012年09月07日09時58分
どうやるもこうやるも、ソースがあるんだからC#に移植するだけでしょう 下の方のコメント欄にC#に移植しましたって投稿とソースへのリンクがあるけど、 まさかそれは見たんですよね?
すれ違いかもしれないけど King SoftのKDriveってどうして無料で50GBも ユーザに提供出来るの? これまで、DropBoxを使っていたけど 桁違いに容量が多くて使いやすいので KDriveしかつかっていない。
>>85 そのまさかだよ。。リンク先のどれよ?
ちなみに自分で移植できるスキルはない…
88 :
デフォルトの名無しさん :2012/09/09(日) 15:34:47.54
じゃあ諦めろ
>>88 そうもいかないからそこを何とか(T_T)
91 :
デフォルトの名無しさん :2012/09/09(日) 20:51:32.03
Gilma をFW4.0をインストールした環境で使用しようとしているのですが .NET Framework version 1.1.4322. という昔のバージョンにしか使えないのでしょうか?
インストーラーは弾かれてもzip版は使えるんじゃないの?
そんな微妙なもん使うくらいだったら リソースにdllそのまま全部突っ込んどいてAssembly.Loadでよくね
94 :
デフォルトの名無しさん :2012/09/09(日) 21:57:30.97
.NETってロギングツール普及してないのね 検索してもlog4net以外はヒットしないや
TraceSourceでも使ってろ
97 :
デフォルトの名無しさん :2012/09/09(日) 23:20:38.95
log4net 使ってるプロジェクトあったな。 生産性を邪魔する糞ツールだった。
ログインログアウトツール?
100 :
デフォルトの名無しさん :2012/09/10(月) 10:10:33.01
Interface の明示的実装と Generic について質問です。 Interface を返すメソッドを明示的実装によって その Interface を実装する構造体を返すように定義したとします。 Interface の型にボクシングされないようにその機能を使いたいのですが、 以下の認識で合っていますか ? List<T>.Enumerator が構造体なので、 Run(Enumerable.Range(0, 10).ToList(), action) というようにそれぞれ実行したとします。 action 内ではボクシングは無いものとします。 // 1. ボクシングされない例 void Run<T>(List<T> list, Action<T> action) { foreach (var i in list) action(i); } // 2. ボクシングされる例 void Run<T>(IEnumerable<T> list, Action<T> action) { foreach (var i in list) action(i); } // 3. ボクシングされる例 ? void Run<TList, TItem>(TList list, Action<TItem> action) where TList : IEnumerable<TItem> { foreach (var i in list) action(i); } 最後の Run は List<T> が構造体ではないため Generic が特殊化されず、 IEnumerator<TItem> にボクシングされてしまうと考えました。 List<T> を構造体でラップしたような型を引数にした場合は特殊化され、ボクシングの起きないコートになるのでしょうか ?
コンテナがstructかどうかは関係ない 1〜3にボクシングされる(Tの値を参照型に代入する)箇所は見当たらない
なるほど。 2 の場合もですか。驚きです。 2 の場合、型情報が IEnumerable<T> に落とされている為、 IEnumerable<T>.GetEnumerator() が呼び出され、 IEnumerator<T> にボクシングされると思ったのですが、 違うのですね。 何故違うのかが理解できません。 本来、以下のどれが正しいのでしょうか ? a. Generic は型パラメータが値型の場合のみ特殊化されるのではなく、そもそも共通部分をまとめているだけ (参照型はほぼ共通のコードが使用出来る) b. Generic に限らず Interface 型 (参照型) を引数に取っていても、a のように処理される。 c. 特殊化という考え自体が間違いで、見当はずれ
>>103 答. ジェネリックは常に特殊化される(と考えてよい)
実際の実装は、
・値型の場合…JITが本当に特殊化する
・参照型の場合…共通のコードを使い回す
なんだけど、プログラマから見ると常に特殊化されているのと
全く区別できない動作をするから気にしなくていい。
つまり、2 番が特殊化されるのはジェネリックを使用しているからですか ? List<int>, IEnumerable<int> ではなく、IntList, IIntEnumerable を自分で作り、 2 と同様のことを行った場合は特殊化されないのでしょうか ?
>>101 2,3の場合はボックス化されるよ
仰る通り、IEnumerable<T>.GetEnumeratorがボックス化されたList<T>.Enumeratorを返す。
1の場合、IEnumerable<T>.GetEnumeratorではなく構造体をそのまま返す方のGetEnumeratorが呼び出されるから
ボックス化が起きない。
C#のforeachがインターフェイスによらずGetEnumeratorという名前のメソッドを呼ぶのは
あくまでC#のコンパイル時に解決できる場合の話で、
JITによる実行時の特殊化は関係ない。
どっちなんだ。。。
あっていたのかな ?
>>106 では、3 の TList が where TList : struct, IEnumerable<TItem> な型 StructList<T> の場合はどうなるのでしょうか ?
A. StructList<T>.GetEnumerator() は IEnumerator<TItem> にボクシングされる
B. 特殊化されるため、StructList<T>.Enumerator が使用され、ボクシングは起きない
と、ここまで書きましたが、特殊化は JIT 時にされるのですか。。
つまり、ダックタイピング的に行われるものではなく、静的型検査はされる、ということですかね ?
なら A が正解ということですか ?
インターフェイスで渡した場合もボックス化が起きないようにしたいならこうなる struct ValueEnumerator<out T> : IEnumerator<T> { /*好きなように実装しろ*/ } interface IValueEnumerable<out T> { ValueEnumerator<T> GetEnumerator(); } これでボックス化なしでforeachが使えるはずだが、ValueEnumerator<out T>を実装するのが難しいだろうな
>>107 その通り
ダックタイピング的なバインディングはC#言語固有のもので、実行時には行われない
ちなみにdynamic使うと実行時にもC#固有のバインディング動作になるよ
dynamic使うとどっちみちボックス化されてしまうけど
おい!お前ら何話しているんだよ 俺にわかるように日本語でしゃべれ!
111 :
101 :2012/09/10(月) 22:22:28.56
>>107 最後から 2 行目の静的型検査は、静的型付けの間違いした。
言いたいことは伝わったとは思いますが、一応。
>>108 なるほど。
ボクシングしないような Interface を設ければ確かにボクシングはされませんね。
ですが例とは違い、参照型と値型で同じコードを使いたかったので、今回はその方法は使えません。
>>109 つまり、dynamic を使えば、StructList<T>.Enumerator が使用される、ということですか ?
>>110 前提
・foreachの仕様はダックタイピング的であるといわれる。なぜか。
・上に関連して、List<T>.Enumeratorがなぜpublic structなのか説明せよ
・.NETにおけるジェネリックの特殊化とはどういうものか説明せよ
これらに回答できるようになって出直してきなさい
ボクシングなんかしたら怪我しちゃうだろ
おいおっさん
以下のように、ある任意(IXmlSerializableを実装していないPOCO的な)のオブジェクトをXDocumentを利用してシリアライズ/デシリアライズをしようと思っています。 対象のクラス class Foo { int PropInt { get; set; } Bar PropBar { get; set; } } class Bar { string PropString { get; set; } } 期待するXML <Foo> <PropInt>0</PropInt> <PropBar> <PropString>0</PropString> </PropBar> </Foo> 現在はFooクラスからPropertyInfoを取得し、PropertyInfo.NameとPropertyInfo.GetValue(foo, null)からXElementを生成しています。 プロパティがstringやintなどの基本的な型であれば問題なくできるのですが型が複合型の場合は以下のようにその複合型の名前が値として出力されます。 <PropBar>Bar</PropBar> 理由は理解できるので複合型の場合は再帰的にXElementを生成したいのですが、どのようにしたらよいかわかりません。 XEelementがシリアライズ可能なプロパティ(intやstring等)かどうかを判断する方法があれば、再帰処理が可能かと思いますが判断する方法が見つかりません。
116 :
101 :2012/09/10(月) 22:37:50.49
>>112 それが答えられるようになるとすごいの?
>>115 どこまで汎用性持たせるかって話になるけど。
例えば、XElementからのキャスト演算子オーバーロードが定義されてるかどうかで判断するとか。
文字列との相互変換をTypeConverter.ConvertToString/ConvertFromStringに任せるなら TypeConverter.CanConvertTo/CanConvertFromとか
>>115 だったらXmlSerializerで一発でしょ
IXmlSerializable不要
いちいちPropertyInfoとか型判定とかやってたらクソ遅いよ
つ static XElement Serialize(object obj) { var serializer = new XmlSerializer(typeof(Foo)); using (var writer = new StringWriter()) { serializer.Serialize(writer, obj); return XElement.Parse(writer.ToString()); } } 自前でこれを超えるものを作るのは相当大変だよ 汎用性は比べ物にならないし速度も普通にやってたら全く勝ち目無い
今現在はみなさんがおっしゃる通りXmlSerializerを使用しています。
今後の追加の要件として、プロパティ毎に保存するファイルを振り分けたいと考えていて、
プロパティにパスを指定できる属性を付与しました。
その為、XmlSerializerを使うことができなくなってしまったのです。
シリアライズ/デシアライズはそれぞれ1回しか処理が走らないため
多少の速度は目を瞑ることができます。
また、ほかに解決案があれば他の方法でも構わなく、XElementに拘っているわけではありません。
他に思いつかなかったのです。
>>118 オーバーロードの情報はどのようにして取得するのでしょうか。
型情報まで取得できますでしょうか。
>>121 でいったんXElementにしてしまえば
後はどうにでもできるだろ
XElementにしてしまえばあとはLINQ to XMLで保存先パスの属性を検索して 振り分けて保存するなんて楽勝ですよ
確かにその通りでした。
シリアライズはXmlSerializeを使ってそこからXElementに落とし込めばよいのですね。
こういうのが思いつかないのがとても悔しいというか悲しい。
ちなみに
>>124 さんのいう「LINQ to XMLで保存先パスの属性を検索」
というのはプロパティはLINQで検索して属性はTypeから取得する、でよいでしょうか。
それともLINQ to XMLで一緒にとってこれるのでしょうか。
もうひとつ質問させてください。 Visual StudioのスニペットのXMLのように改行やスペースの入ったタグを利用したいと考えた場合、 どのようにしてシリアライズしたらよいでしょうか。 スニペットのようにXMLにそのまま改行を表現できるものであればそのままシリアライズしたいと考えています。
改行コード書けばいいだけだろうが!
自分がやったときは、改行とスペースがなぜか消えてしまったので仕様かと思いました。 明日、出社したら再度試してみます。 すいません。
改行入った文字列をシリアライズすればいいだけじゃん
オブジェクト(or型)ごとにパス持たせて振り分けるならわかるが プロパティごとってどうやるつもりなんだ? 素直にやったらどのオブジェクトのプロパティかわからなくなるだろ
言っている意味がさっぱりわからん public string hoge{get;set;} これに改行した文字列入れればいいじゃんってことなんだけど プロパティ名で管理されてるじゃん
片山さつき「修学旅行の行き先を韓国に選ぶ学校ですが、土下座旅行に近い事が判明しました」
http://engawa.2ch.net/test/read.cgi/poverty/1347252281/ 片山氏が調査を進めると、韓国への修学旅行での訪問先に、信じがたい場所が選ばれていることが分かった。
日本海側の私立高校K(男女共学)が、今月末に予定していた韓国修養会(修学旅行)のレジュメによると、
訪問先に「戦争と女性の人権博物館」や「ナヌムの家/日本軍『慰安婦』歴史館」とあり、
説明に「日本軍性奴隷(日本軍慰安婦)とされた人々の苦悩の深さと日本軍の扱いの実態を知ることができる」
と書かれていたのである。
片山氏は「これはひどい。日本政府が発見した資料からは(慰安婦に)軍や官憲の強制連行を示す
証拠がなかったことは閣議決定されている。
教育の一環である修学旅行で、日本政府が『事実と違う』と抗議していることを学ばせようと
していたのではないか。『教育の自主性』では許容できない。
国益に反する洗脳教育が行われる危険がある」と語った。
私立高校Kは6日、保護者などの強い抗議を受けて、修学旅行先を韓国から国内に変更することを発表した。
同校が予定していた訪問先には、「西大門刑務所歴史館」や「安重根義士記念館」など、
日本や日本人に敵意や憎悪を植え付けるような場所も並んでいた。
片山氏は「K校だけとは思えない。インターネットを見ると、似たような修学旅行をしている学校がありそうだ。
背後に、国内の『反日組織』が関与している疑いもある。早急に実態を調べたい」と語っている。
http://www.zakzak.co.jp/society/politics/news/20120910/plt1209101131001-n1.htm
XmlSerializerはよく使われているみたいだけどWinMDではなくなるんだよな マイクロソフトにとってはレガシーってことじゃないの?
レガシー・・・マイファースト
LINQ to XMLの利用で代替とか言ってるからXML DOMと間違えてるんじゃないの デスクトップ版と比べた差は大まかに以下の通り、で非ジェネリックコレクションと XmlSerializerだけ挙げてるってちょっと酷いなw コレクションの方はともかく、XmlSerializer(嘘だけど)みたいなちょっとしたユーティリティなんかより 挙げるべき重大な変更点はいくらでもあると思う。 まともに.NET使ったことないんじゃないのこの人
>>135 WCF系がXmlSerializerと役割が違うとは言い切れないのではないだろうか。
少なくともオブジェクト永続化という役割はかぶる。
DataContractSerializerはIXmlSerializableとSerialzableAttributeにも
対応しておりXmlSerializerの上位版といえる。標準では出力するXMLが汚いが
名前空間を空にすればXmlSerializerとほぼ同じ出力。加えてIDictionaryや
循環参照も扱うことができネットワークサービスにも対応しやすい。
>>138 に追加
逆にXmlSerializerにしかできないことは順序制御と要素名マッピングしか知らない。
しかしこれが有効な場面は多くないだろうからDataContractSerializerは
XmlSerializerを置き換えるといっても問題ないのではないだろうか。意見を求む。
1つの*.csファイルに複数のクラスを書くの普通ですか? javaだとあまりやらないと思うのですが、C++と同じ流派?
>>138 DataContractは細かい制御がほとんどできないので、
XMLのスキーマが予め決まってる場合全く役に立たない
XmlSerializerはシリアライザというよりオブジェクト-XMLマッピングと考える方がいいと思う
>>140 Javaは一つのファイルにpublicクラスを一つしか置けないとか
1ファイル1パッケージとかわけのわからん制限があるが
C#では論理構造とファイルシステムを完全に分けて考えるので特に決まりはない
でも基本は1ファイル1クラス。MSのコード検査ツールを使うと一ファイルに複数の
クラスがあると警告が出たりする。
>>138 XmlSerializerはまずXMLありきなんだよ。こういうXMLを生成したい、こういうXMLを読みたい、というのが先。
.NET付属のxsd.exeを使って、XMLを読み書きするための型をスキーマから自動生成したりすることもできる。
>>141 そういう用途は今はXElement+LINQじゃね?
それにXmlSerializerはXLINQで手書きするのとは違って 宣言的に読み書きできるというメリットもあるぞ
>>115 みたいな簡単な型はXmlSerializerでXML化して、単純にマッピングできないものは
IXmlSerializableを実装してその中でXElementを使うとか、
読むときもXElementで要素を検索してからXmlSerializerでデシリアライズするとか
柔軟に組み合わせるのが賢いと思うよ。
余計なコードを書かないで済むに越したことはない。
147 :
デフォルトの名無しさん :2012/09/13(木) 00:41:30.01
SQLサーバーから取り出した検索結果をDatatableで取り出したとき、 その取り出した中身のデータ型は、SQLサーバーでの定義に依存しているんですか? つまりvarcharならstringになるとか
150 :
デフォルトの名無しさん :2012/09/13(木) 21:28:21.84
20120913という文字列型の文字列を │2012-09-13│ というフォーマットで出したいです String.Format("│yyyy-mm-dd│", "20120913") ではダメなんですが、どうすればいいのでしょうか・・・・
>>150 var date = DateTime.ParseExact("20120913", "yyyyMMdd", CultureInfo.InvariantCulture);
Console.WriteLine(date.ToString("| yyyy-MM-dd |", CultureInfo.InvariantCulture));
152 :
デフォルトの名無しさん :2012/09/13(木) 22:02:08.90
>>150 そんなに手間がかかるのでしょうか・・・
実は.NET2.0のためvarは使えませんが、他に何か方法はありませんか
153 :
150 :2012/09/13(木) 22:02:28.70
>>152 varの代わりにDateTimeと書くだけ。他は2.0基準。
たかが2行だけだろ。
StringBuilderに入れてInsert Substringで繋ぐ お好きな方をどうぞ どっちも小奇麗ではない 小奇麗な方法がよければ青い鳥を探して言語を変えよう ここにはありませんのだ
手間ってどういうこっちゃ ヘルパメソッドにでもすればいいだろ 毎回コピペとかすんなよ?
>>151 で手間とか言ってたら一体何ができるというのか
158 :
150 :2012/09/13(木) 22:25:13.01
皆さんありがとうございました
スライスができる言語ならもう少しマシには書けるかもな ま、ないものねだりという奴だな 汚いインターフェースが嫌なら自分でラッパーを書けと リーダブルコードには書いてあったな
こうか "|" + "20120913".Insert(6, "-").Insert(4, "-") + "|"
161 :
150 :2012/09/13(木) 23:18:31.68
ありがとうございます 誰が書いてもすっきりと書けないなら、とりあえず安心です
162 :
デフォルトの名無しさん :2012/09/14(金) 00:02:30.15
DataTable.Columns.Add("カラム名")として、データ型を省いた場合、その列にはObject型みたいな感じでなんでもはいるのですか?
プロパティと列挙対の違いというか、メリット・デメリットってなんなんでしょうか。 今のプロジェクトで別クラスに定義した Enumをprotected EnumDefine.hoge と宣言して使ったり protected EnumDefine.hoge { get, set }; としたり private string _hoge = string.empty; public string hoge { get { return hoge; } set { hoge = value; } } としたりしてます でもどれも画面遷移や情報を保持する為だけでどうせ継承やoverrideするならprotectedなメンバ変数でいいじゃんめんどくさい・・・と思ったりします
意味が分からない プロパティ…メンバの一種 列挙体…型の一種 全く次元の違うものなんだけど何がどう同じだと思うの?
大域的に共有する定数だから外部宣言するんであって ローカルで使うものなんかどうしようが誰も止めねえよ勝手にしろ プロジェクトが個人のものでないなら頑張って説得しろ お前が神になれ
僕が・・・新世界の神に?
たとえば、客に1ライセンス1,000円でソフトを出したとします。 1台インストールごとに1,000円とします。 しかし、経費を浮かす為に悪意のある客が コピーしてこっそり2台目にインストールをするのを未然に防ぎたいと 考えていますが、何か良いアイデアはありますか?
呪いとか
サーバー側で同時接続数制限とかでいいだろ
>>168 PC固有情報を獲得して配布元に送りライセンスキーを生成しておく。
ライセンスキーを販売すればよい。
ここで問題はPC固有情報だが、Cドライブのボリュームシリアル番号かNICのデフォルトMAC番号が妥当だろう。後者の取得方法は知らないが。
竹島問題で韓流スターが消える?
韓国の李明博(イミョンバク)大統領が竹島に上陸して以降、日韓関係が悪化しています。この影響は政治だけでなく、
エンターテインメント業界にも響いています。K−POP旋風はブームの域を超え、一ジャンルとして定着しつつ
ありましたが、ここに来て“韓流はずし”の流れが起きているのです。
芸能界への影響、ジワジワと
李大統領が竹島に上陸したのが8月10日。その直後にはロンドン五輪の男子サッカー
3位決定戦で、試合後に韓国選手が「独島は我々の領土」というボードを掲げる事件を起こしました。その後、同14日
には李大統領が天皇陛下に謝罪を要求する発言をしたことで、一気に対立構造が鮮明になりました。
エンタメ界で具体的にアクションが起きたのは、BS放送の2局が放送していた韓国のドラマを延期したのが最初です。
これは出演していた韓流スター、ソン・イルグクが竹島を目指す水泳リレーに参加したのが理由でした。それ以外にも、
ジワジワと影響は出ています。
K−POP歌手が出演したある音楽番組には「なぜ韓国人を出すんだ」という苦情が数百件寄せられたそうですし、
大手レコード会社は新たなK−POP歌手の日本デビュー発表を予定していたのですが、それも無期限延期になったと
聞きます。さらに、韓国人スターが出演するCMは軒並み放送が控えられています。
ある芸能関係者は「事態はかなり深刻です。民放ではすでに、CMの関係から韓国人を出演させない動きが起きています。
いまの状況が続けば、コンサートも今後は開きづらくなるでしょう」と話していました。昨年は東方神起、KARA、
少女時代の3組が出場した年末のNHK紅白歌合戦から、K−POP勢が消える可能性もあります。
http://www.yomiuri.co.jp/otona/people/artiste/20120912-OYT8T00726.htm?from=osusume
>>170 それだとてっとりばやく出来そうですね。
>>171 ありがとうございます。
チャレンジしてみます。
なんとしても不正使用を防止したいです。
て
privateなデータメンバxに対する値の設定と取得以外になんの作用も持たないpublicなプロパティーって、 データメンバxをpublicにするのと何が違うの?
後からロジックを含めようとした場合のコストが違う
シリアライズとかプロパティグリッドとか扱いが違うものいっぱいだよ。
>>175 後から「やっぱりgetだけでsetは無しにしよう」って変更が楽チン♪
てか、publicフィールドってあまり意味ないと思う。 参照渡しができるくらいかな。 プロパティのほうが便利でわかりやすいし。
だから俺は基本protectedフィールドとpublicプロパティばかり書く癖が ついちゃったよ。こういう変な癖仕事でやるとまずいんだろうけど。
Kdrive上にソースコードをおいて 自宅と職場で作業出来る様にしてるんだけど これって不味いかな? 何が心配かというとセキュリティー的にどうかな? パスワードは20文字以上設定してるわけではあるんだけど。
まず就業規則の情報管理規定がどうなってるか調べるのが先だ このスレはその後で利用してくれ 願わくば次がないことを祈るばかりだ
アプリを100回だけ使用可能にする 場合にその数値を管理するとしたら レジストリが常套手段ですかね? 逆アセンブルされたらレジストリの名前がばれてしまって 一発ですけど、エンドユーザでそこまでする人はまずいないかと思ってますが。
個人で出来ることなんてせいぜいレジストリが関の山で高が知れてる が正解
レジストリの相当深部に キー名と値を設定してやるか。 逆アセンブルされたら さすがに諦めるしかないね。
世の中にはProcessMonitorって便利なものがあって…
>>183 単純な起動失敗はマジヤバイ一発でライセンス条件分岐箇所が割れて回避パッチを当てられる
不正使用ダイアログメッセージを問答無用で出すのも同様でダイアログメッセージやダイアログ表示処理あたりから即ライセンス条件分岐箇所を絞り込まれる見込み
というわけで解読の手間を増やすのにもいろいろ工夫があるYO
>>187 ライセンスチェックメソッドを1つ用意して
処理の要所要所で逐一判定するようにします。
あと、質問なんですけど
たとえば自分で
aaa.exe というバイナリを作成したとして
それにパッチをあてる、
というのは具体的にはどういう手順で作成するのでしょうか?
参考サイトがあれば教えて下さい。
不正使用を防止するためには、自ら不正使用をするための
知識を身に着ける必要があると感じたためです。
>>183 起動するたびにインターネットに接続して、サーバー側で回数保持するとか。
一部のビジネスロジックをサーバ側に移行
>>192 クラックの初歩だ
NOPで埋めてEAXにTRUE入れるだけ
何かしらの処理はしないと偽装サーバー使われるだけだな
C#ってほんとパッケージ向きではないよね。 重要な部分をネイティブで書くのはどう?
頒布時に公開鍵と秘密鍵を生成して公開鍵を配布。 また、頒布毎に異なる ID も渡しておく。 頒布時に渡した ID をサーバーに登録しておく。 クライアント起動毎に公開鍵で暗号化した ID をサーバーに送信。 サーバーは秘密鍵で復号化して ID が正しいか確認。 + 複合不可 ⇒ NG + ID が未登録 ⇒ NG + 起動回数が 100回以上 ⇒ NG サーバーは該当 ID の起動回数を一つ増やして、起動許可を秘密鍵で暗号化してクライアントに返信。 クライアントは返信された起動許可情報を公開鍵で復号化して正しく復号化できれば、 アプリケーションを起動。 どう改竄すれば回避できるの? チェックして部分をすっ飛ばすとか言うのはなしとして。
本当にそれしかやってないなら1回だけ本当のサーバーと認証して それ以降は偽装サーバーからトークン返して終わり 毎回違うトークン返さないと駄目
>チェックして部分をすっ飛ばすとか言うのはなしとして。 基本的に一番多い攻撃はチェック部分すっ飛ばす攻撃だと思うんだが そこ避けたら議論する意味もあんまなくね
つか、前にもあたけど 弥生会計ですら逆アセンブルして ソースコード筒抜けなんだけどやっぱ.NETでパッケージ開発はダメなのかねぇ。 潤沢な資金を背景に開発されたソフトにも かかわらずソースコード筒抜けって。 exeを加工すれば決算書インチキできるんじゃね? C++で開発せにゃならんか。
>>198 確かにそうだな、忘れてた。
クライアントから、起動日時でも付加して送るようにしよう。
>>200 いや、レジストリよりも改竄しにくいと言いたいだけ。
そういう攻撃について議論したいなら、止めやしないけど。
そもそもだが 偽装してまでソフトを使える様にするやつっているのか? 犯罪だろーが!!
>>201 ビジネスソフトはあまりそういうところは気にしてないよ。
そもそもソフト自体よりも、保守で儲けるビジネスだから。
あと決算書なんてソフト改造しなくてもいくらでもインチキできるよ。
>>204 なるほどね。
ソフトに細工した方が何かあったときに
ソフトのバグとでっちあげることができていいかなぁーなんて思ったのだw
システムデバッガ対策とカーネルデバッガ対策を入れておけば クラックを生業とする人たちであってもかなり嫌がらせられると聞いた そのように聞いただけなのでどうするのかは知らん
クラックを生業 ↑ こいつらの仕事は何なのさ?
>>202 >クライアントから、起動日時でも付加して送るようにしよう。
よくよく考えたら、クライアントよりサーバーから返す方に付加しないとダメだわ。
>>205 メーカーもバカじゃないから、バグとかでっち上げられたら総力を挙げて調べるだろ。
細工とかわかったら賠償もんだぞ。
大抵のライセンス条項に改竄禁止の項目あるし。
>>207 生業って言ってんだからそれが生業だろうよ
自己言及的だが
>>201 うちの会社では.NETでパッケージ商品作ってるよ
お客さんはwindowsを使うので精一杯で、そんな所まで頭回ってないみたいよ
よっぽど有名なソフトじゃない限りは、誰もリバースエンジニアリングなんてしない
>>211 お客さんの会社の中にもシステム部があるわけでしょ?
そいつらにこっそりやられない?
まぁー、忙しいだろうからそーいうことする暇自体無い可能性も高いけどね。
.NETってビルドツール普及してないよね 何をするにしてもM$が強力なツールを提供しているっていうのもあるけど、 選択肢が多いJavaが少しうらやましい
>>212 >まぁー、忙しいだろうからそーいうことする暇自体無い可能性も高いけどね。
うん、この答えに反論の余地がないよね
社内でんなことやるよりも社外に任せたほうがコストも安いんだろうな 次期システムを自社製に切り替え、そのベースに使うっていうような 盗人はいないと思いたい
うちはやってますぜ 他社製品の分解、チップ解析・ファームのリバースエンジニアリング
相手の会社より競合の心配した方がいいよな 完全に相手を間違えてる
MSBuildもAntも好きじゃねえ XMLは手書きするもんじゃない
MSBuildは手書きするもんじゃないからともかく NAntってMonoにも捨てられるしもう存在価値がないんだから せめて手書きフレンドリーにしろよ
やらない理由がないでしょう? こっちは許諾なんか締結した覚えがないのだからね
殺さないと誓約書は書いていないから
って殺人を犯す基地外と同じなのが
>>221
中韓の思想か?
勝つための思想です 負け犬君
>>208 >大抵のライセンス条項に改竄禁止の項目あるし。
リバースエンジニアリング条項は違憲(合衆国も日本もね)の疑いもあるしね。
企業なんて仲良し集団とは違うからそんなもんだろうな
大体クリーンルーム設計って言葉がある時点で解析は行われていることを意味してるだろ
>>225 リバースエンジニアリングと改竄じゃ大違いだろ。
働いたことないからクリーンルーム設計なんて言葉知りません
改竄についてはデジタル署名すれば改竄した人に改竄を通知する事ができるよ 解決にならないかorz
なあ夏休みっていつまで?
9月いっぱい
毎日が日曜日
毎日が日曜日って超サイコー
毎日がバレンタイン
毎日はエブリディ
毎日が給料日
日雇いさん?
日雇いプログラマですが何か?
連絡先教えてください。
あぼーん
ではまず、仕事をお願いする前に、専用パソコンを50万円で買っていただきます お願いする仕事はこのパソコンでしかできませんので、必ず買っていただくことになります
働いた分で後払いで払いますのでまずはパソコンを持ってきてください
なんなのここ くだスレ?
無邪気なイスラム教信者wwwwwwwwwww
VS 2010 English 版を使っていますが、 コード中の現在フォーカスのあたっている位置(点滅する箇所)のフォントを 青背景に白文字にしたいのですが、 Environment > Fonts and Colors > Display items: の中の どの項目にて設定出来るのでしょうか?
Visual Studioスレはここじゃない
CSharperなら知ってるかと思ったのですが。
知ってるか知らないかの問題じゃないとまで言わないと分からないか?
英語版って…割れかよ?
元MS社員からのプレゼント
253 :
247 :2012/09/16(日) 13:55:33.44
海外サイト調べてわかった。 バイリンガルな俺万歳!!
わざわざ主張しないと精神安定が保てないの?
はい
256 :
デフォルトの名無しさん :2012/09/16(日) 14:58:32.68
現在ログイン処理を勉強中です。 ログインが成功したらログインして、失敗したら再入力を求めたいときに ログインが成功したか失敗したかの判定は普通どうやってしますか? 教えてください。
C#関係ないような どうせ基本はwebなんだろ
いや、Windowsアプリでもログインとかあるよ。
判定って入力されたユーザーとパスワードをテーブルかなんかと比較して、
合致しているものがあれば成功じゃないのか?
パスワードを平文で格納しないとか、連続○回間違えたらロックアウトする
とかのオプションは色々あるだろうけど。
ただ、
>>256 見るとそういう判定は誰かがやってその結果を得たいだけと
言う感じがするが、それってその判定やってる奴しだいだしねぇ…
260 :
デフォルトの名無しさん :2012/09/16(日) 15:32:14.81
>>259 書き方悪くてすいません・・・
例えばmixiやツイッターなどのログインが必要な複数のサイトにツールを使って一度にログインしたいんですが、
成功した時は成功メッセージを表示させ、一ログインが失敗したときに、ユーザに再入力を求めたいということです。
そのときのログインが成功したか失敗したかの判定の仕方を教えてほしいです。
> それってその判定やってる奴しだいだしねぇ…
例えば401返すかもしれないし 302でログイン失敗ページに飛ばすかもしれないし 200を返しつつMETA Refreshでログイン失敗ページに飛ばすかもしれないし 200を返しつつ画面にはログインできませんでしたと表示するかもしれないし 黙って403されるかもしれないし 要するに一度に判断できるようなものではないということだ
264 :
デフォルトの名無しさん :2012/09/16(日) 15:56:32.27
では成功したときのみの判定でしたら簡単ですか?
お前が寿命までがんばっても無理
266 :
デフォルトの名無しさん :2012/09/16(日) 15:58:14.75
>>263 URLの違いで判断できるとしたら、ログイン後のURLを取得するには
どうすればいいのでしょうか?
>>264 成功した時に何返すかもやってる奴しだい
やることは何も減らない
268 :
デフォルトの名無しさん :2012/09/16(日) 15:59:12.43
ツイッターとかメジャーなサイトのログイン周りは サンプルソース書いて公開してる人いるので探してみなよ ちょっと説明するってレベルの大きさではないから
これ以上スレ違いを引っ張るこいつに返答すると殺します。
>>266 せめて何を使ってるかくらい書けよ
WebRequestか?WebBrowserコントロールか?それとも他のか?
271 :
デフォルトの名無しさん :2012/09/16(日) 16:00:30.35
ログイン後のURL取得方法だけでいいので教えてください。
272 :
デフォルトの名無しさん :2012/09/16(日) 16:01:01.14
>>270 すいません。WebRequestです。
>>271 あと一つの頼みを聞くと、あと一つあと一つ言い出すのでもう駄目です
さようなら
ログイン後のURLも判定やってる奴(サイト)次第だろ…。 もっと他に知るべきことがあると思うよあんたは。 ちょっと呆れる。
>>268 を読め
自分がアクセスしたいサイトの名前など関連ワードでぐぐればソースがでてくるよ
掲示板で細かく説明するレベルじゃないのでフリーのソースを見て勉強してくれ
>>272 GetResponse()でWebResponseを取得して
WebResponse#Headersで"Location"の内容を見るか
WebResponse#GetResponseStreamで<meta http-equiv="refresh"...>タグでも探す
どっちかはやってみないと分からん
複数のWEBページに対して、それぞれ別々の処理(入力とかリンクのクリック)を行おうとしています。 次のコードでループしながらそれぞれのページに対して@A ということをやり 完了したら次のループ処理を走らせようとして、下記コードを書いたのですが ループ処理部分が一度に流れてしまいます。 呼出し先の、 webbrowser_DocumentCompleteがそれぞれのURLに応じた処理(入力やリンクのクリック) を行い、すべて完了したら次の別URLに対する処理が走る様にしたいのですが どうすればよいでしょうか? < Form1.cs の実行ボタンクリック時の処理 > for (int i = 0; i < arrangement.Length; i++) { HogeClass hc = new HogeClass(); string navigating_url = Convert.ToString(arrangment[i]); hc.ShowAndExecute(navigating_url ref webbrowser); } < HogeClass の処理 > webbrowser_DocumentComplete(略) { // ★URL_1の場合 ・・・ URL_2の場合 // @ 文字入力 // A ボタンのクリック }
DocumentCompleteが完全に終了した時点でシグナルするイベントを立てて ShowAndExecuteの最後でシグナルを待つ
279 :
デフォルトの名無しさん :2012/09/16(日) 16:15:02.41
逆セマフォはないんだっけか
JavaのCountdownLatchみたいな奴のことか?
282 :
277 :2012/09/16(日) 16:21:29.50
>>278 レスありがとうございます。
>DocumentCompleteが完全に終了した時点でシグナルするイベントを立てて
>ShowAndExecuteの最後でシグナルを待つ
私のスキル不足のせいか、いまいちこちらのやり方がわかりません。
HogeClassには現在↓の様なコードを書いているのですが
呼び出し元のループが一度に流れてしまい、1 URLごとに処理が終わったら次のURL処理
という風に動作してくれません。ヒントをお教えください。
< HogeClass の中身 >
public void ShowAndExecute( string url , ref WebBrowser wb)
{
wb.DocumentCompleted += new WebBrowserDocumetCompleteEventHandler(this.wb_DocumentCompleted)
}
private void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
// ★URL_1の場合 ・・・ URL_2の場合
// @ 文字入力
// A ボタンのクリック
}
いろいろ適当だけど考え方としてはこんなん private int count = 0; private ManualResetEvent wait = new ManualResetEvent(false); public void ShowAndExecute( string url , ref WebBrowser wb) { count = 2; // 処理の個数 wb.DocumentCompleted += new WebBrowserDocumetCompleteEventHandler(this.wb_DocumentCompleted) wait.WaitOne(); wait.Reset(); } private void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { Interlocked.Decrement(ref count); if (count == 0) { wait.Set(); } } それよかDocumentCompletedを毎回追加している所の方が俺の興味を引いたが
俺もugaya40がInterlocked.Exchange使ってるの見かけるまで知らんかった
みんな頭おかしいんですか? プログラムってなんですか? なんですか?このわけのわからない英語の羅列は? ネタで書いてるのかネタじゃないのか誰か教えてください><
>>285 「スレッドセーフなイベント」とか言ってフィールドの読み取りに使ってるアレか?
間違いだよあれ。普通に代入すればスレッドセーフ。他の誰でもなくMS公式の指針。
ごめんCompareExchangeだった CompareExchangeだと比較と代入を不可分にするために使ってるんだろうから、これは何かしらロックしないと無理
んで、間違いってどれ? Twitterで伝えとくから教えて欲しい
意識的じゃないんだろうけど酷い引っ掛けだ
>>290 https://github.com/ugaya40/Livet/blob/master/.NET4.0/Livet (.NET4.0)/NotificationObject.cs
これでしょ
CompareExchangeだけど特にCompareには意味がなく、フィールドの読み取りに使ってるだけ。
普通にローカル変数にフィールドを代入した場合、
仕様書を厳密に解釈すれば最適化によって正しく動作しなくなる可能性があると言えなくもないんだけど、
実際にはそんなことは絶対に未来永劫なく、MSも普通に代入することを推奨している。
無意味なだけで別に間違いというわけではないし、本人もわかってやってるんだが
別に真似する必要は全く無い。
そんな理由じゃないだろ var threadSafeHandler = null; if (PropertyChanged == null) { /* (1) */ threadSafeHandler = PropertyChanged; PropertyChanged = null; } else { /* (2) */ threadSafeHandler = PropertyChanged; } 不可分にしておくと(1)と(2)で割り込まれるってだけ 別にlockでもいいと思うけど
>>293 Interlocked.CompareExchange(ref PropertyChanged,null,null);
つまり「PropertyChangedがnullならnullに設定する」だぜ? フィールドの値を読み取る以外に何の意味もないの。
var threadSafeHandler = PropertyChanged; でいい。
>>292 のコードは
var threadSafeHandler = PropertyChanged;
if (threadSafeHandler != null) {
threadSafeHandler();
}
このMS公式スレッドセーフパターンだと、cscやJITの最適化によってローカル変数が削除されて
次のようなコードになってしまう可能性がある
if (PropertyChanged != null) {
/* ここでPropertyChangedがnullになる可能性がある */
PropertyChanged;(); // その場合にエラーが発生する
}
という説に基づいたもの。
これECMA CLIでは正しいんだけど、CLRの強いメモリモデルではこんなことは起こらない。
ただ現実として、この世にあるほぼ全てのCILコードは
この強いメモリモデルを前提にしているから、気にしても仕方ない。
それは
>>292 のプロジェクトですらも無意識にやっちゃってる箇所がある可能性が高いと思う。
VBに至ってはコンパイラが上のコードを吐くから100%。
巨大なXMLファイルを扱いたいときってどうしてますか 一回でまとめて読み込んでXDocumentにしようとするとメモリが爆発しそうです
XDocumentでSaveしたXMLをDataContractSerializerで逆シリアル化したいのですがうまくいきません。 過程は以下の通りです。 以下のようなオブジェクトをシリアル化したい。 属性にて保存されるファイルを分けたい。 [PathAtrribute("C:\a.config")] int prop1 { get; private set; } [PathAtrribute("C:\b.config")] int prop2 { get; private set; } シリアル化する際にDataContractSerializerでいったんMemoryStreamにシリアル化 XElementでParseしてPathAtrributeで指定されたファイルで分割し、XDocument.Saveで保存する。 この状態のXMLであればDataContractSerializerにて逆シリアル化が可能でした。 しかし上記に手法ですと、すべての要素に同じ長い名前空間が付与されます。 これを削除するとDataContractSerializerにて逆シリアル化できない、という流れです。 XMLの要素に名前空間などの属性がないシンプルなXMLをDataContractSerializerにて逆シリアル化するにはどうしたら良いでしょか。
DataContractSerializerはそういう用途には向きません XmlSerializerを使ってください
>>299 プロパティーのSetterがprivateなのです。
XmlSerializerでシリアル化できれば楽なのですが…
だったらもう手書きした方がいいよ 本当に一般的なシリアライズの仕組みが必要なのか? そんな特殊な要件で?
「ひな壇は韓流タレント中心に」という構想が一変、TV界と韓流の今 09/16 13:00
http://woman.infoseek.co.jp/news/entertainment/cyzowoman_16Sep2012_25106 日韓の関係悪化の影響により、韓流離れが加速する現在のテレビ業界。
しかし、2年ほど前には広告代理店を中心に「ゴールデンタイムの番組には韓国人タレントを使用する」流れが作られていたという。
現在は吉本興業所属の芸人が幅を利かせる“ひな壇タレント”を、そっくり韓流と入れ替えるという計画だったそうだ。
日本国内で、KARAや少女時代がブレークした2010年。
日本音楽事業者協会会長で「尾木プロ」社長の尾木徹氏が、K-POPアーティストの誘致に尽力したと伝えられていた。
そして同時期頃から、広告代理店やテレビ局上層部の間では、こんな“定説”が存在していたという。
「2011年以降は、ゴールデンのバラエティから、吉本芸人はほとんどいなくなります。
代わりにひな壇に座るのがK-POPアーティストや、韓流タレントたち。
安定してレギュラー番組を続けられそうなのは明石家さんま、島田紳助、ダウンタウンくらいで、その他の芸人たちは有名無名問わず降板させていこうという方針でした」(広告代理店幹部)
ところが3月の震災で、エンタメ業界は数カ月ほど停滞状態が続くことに。
その前後に日本デビューを果たしたK-POPアーティストや、バラエティに登場した韓流タレントも少なからず存在したが、テレビ出演者が大幅に入れ替わるといった事態に至ることはなかった。
「紳助は引退してしまったし、高岡蒼佑のフジテレビ韓流傾倒批判など想定外の事態はいくつも発生しました。
特にネット上でのフジテレビ批判は見過ごせるレベルの話ではなく、連日の抗議デモやスポンサー企業の不買運動など、韓流に対する不安要素ばかりが高まっていきました」(同)
そして今回の竹島問題で、韓流コンテンツへの傾倒に関して沈黙を貫いてきたテレビ各局も、方針を表明。
フジテレビは当面韓流ドラマの放送予定はないとし、またBS日テレの定例会見では赤座弘一社長が「韓国ドラマが多すぎるのではという声もある。
少なすぎるという声はないので、今後、(韓流ドラマを)少なくしていく方向になると思う」と発言したことも話題になった。
>>301 DataContractSerializerはすべての要素に名前空間の属性がついてないと逆シリアル化が不可能ということでしょうか。
DataContractSerializerはDataContractSerializerに任せて読み書きするものであり XMLの内容に口を出してはいけません
306 :
デフォルトの名無しさん :2012/09/17(月) 13:36:17.55
しつもんですが、、 Q1. C#でクラスFooのディープコピ──メソッドを書く場合、次のどれが一番標準的で推奨? 1. object.Clone()をoverrideして作る 2. ディーコピーであることがわかるような名前のメソッド(例えばFoo DeepClone()とか)を作る 3. コピーコンストラクタ Foo(Foo other)を作る 4. その他( ) Q2. C#でクラスFooのディープコピ─のしかたを教えてください 1. Fooの個々のメンバについて代入文を書き並べる 2. Fooをバイナリフォーマッタ─でメモリファイルとしてシリアライズしてデシリアライズする 3. リフレクション? 4. その他( ) 2.はらくちんなんだけど、全メンバとその子メンバ以下全てに[Serializable]が要るのがイヤンもっと良い方法無い?
>>306 WPFで書けばWinFormと比べて簡単
でもWPFはいろいろ癖があるしなあ
309 :
デフォルトの名無しさん :2012/09/17(月) 14:06:40.40
>>309 サードパーティ製ならDevExpressとかNetAdvantageとか
Color clr = Color.FromArgb( 255, 255, 255 ); bool b1 = clr == Color.White; // false bool b2 = clr.ToArgb() == Color.White.ToArgb(); // true これはどうなのよ! と思ったらMSDNにははっきりと書いてあった…… b1もtrueであって欲しかったわ
「あのとき嘘でもtrueと言ってほしかったのに…」
後から優柔不断と罵られそうなので嫌どす
音楽系のアプリを作ろうと考えているのですが、MP3再生にてグラフィック・イコライザーを画面上に出力するには、かなり大変でしょうか? ライブラリ等ご存知であれば、教えていただきたいどす。
mp3再生つっても結局はデコードしてwavと同等の波形に戻して 再生してるだけだし、フリーリエ変換で周波数成分を見ていけば グライコの各周波数の高さは取れるのかなあ?・・・
もちろんそう
>>283 ありがとうございます。コードを下記に様に組み込んでみたのですが
やはりまだ思う様に動作してくれません。お助け下さい><;
イベントハンドラは確かにループしながら複数ページをレンダリングする場合には
一度でよいですね。とりあえずそちらについては、私のスキルでもあとで調整できそうですので
あとで修正したいと思います。
< HogeClass の中身 >
private int i_status = 0;
private ManualResetEvent wait = new ManualResetEvent(false);
public void ShowAndExecute( string url , ref WebBrowser wb)
{
i_status = -1;
wb.DocumentCompleted += new System.Windows.Forms.WebBrowserDocumentCompletedEventHandler(this.wb_DocumentCompleted);
wb.Navigate( url );
wait.WaitOne(); // ←ブレークポイントをおいてここを実行すると、固まります。
wait.Reset();
}
>>317 の続きです。
private void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
WebBrowser wb = (WebBrowser)sender;
Interlocked.Decrement(ref i_status ); // ref ←これってprivate変数なので必要無い気がしますが、必要ですか?
if ( i_status == 3 )//処理B
{
wait.Set(); //すべての処理が終わったので次のループ処理に制御を戻したい。
}
if (i_status == 2) //処理A
{
i_status == 3;
}
if (i_status == 1) //処理@
{
i_status == 2;
}
}
>>315 >>316 有難うございます。ということは、MP3のデコーダから自作が必要ということですね。
難易度高いですねw
>>319 今ぐぐったらXNAだと情報をもらえる機能があったな
なんか違和感を感じるなあと思ったら
>>284 を理解してないだろ
webページ一枚開くだけでもページによっては複数回DocumentCompletedが発生するってことなんだけど
なのでNavigatingとDocumentCompletedの回数を見て終わったかどうかを見るとかしてから
君のやりたいことをやるしかないんだけど・・・
フォームとかわんないUIでWPF使うメリットないと思うんですけど、フォームでもUIとロジック分離って普通に可能ですよね?
>>307 >Q1
MSの推奨は3。次点で2。昔はICloneableインターフェイスを実装する決まりだったんだけど
糞設計だったということで今は非推奨。
>Q2
コピーコンストラクタを使うなら必然的に2やMemberwiseCloneは使えない。
>>324 ビューから内部の本質的なロジックを分離するのは当たり前。WPFでもWinFormsでも。
WPFでMVVMとか言ってるのは、それだけじゃなくて
ビューに関するロジックも分離してしまって、そこもテストしやすくしようというもの。
WinFormsだとそこまでは難しいかもね。
327 :
デフォルトの名無しさん :2012/09/17(月) 21:26:19.63
>>326 WPFのような仕組を作ればできなくもないけどな・・・
俺がWPF使う理由なんてItemsControlの存在くらいしかない
>>326 ビューに関するロジックとはもっと具体的に言うとTemplateやStyleを使うってことですか?
>>325 レスdクス
ディープコピーは、マルチスレッドプログラミングにおいて、
完全にスレッドローカルな記憶としてFooのインスタンスを持ちたいという理由で
かなり欲しくなる頻度が高い気がするんですが、
そのわりにC#における標準的な書き方が自明ではないしネットにも転がっていない気がしたので質問させていただきました
やっぱりコピーコンストラクタを書き、
その中でメンバ毎に値型かそうでないかを考えつつ代入なりコピー構築なりを行うという手間隙が必要で、
ディープコピー手段が無いクラスに行き当たったら、そのクラスのコードを直すなりして
ディープコピー手段を追加しない限りお手上げなんでしょうかね…
困った、、
>>329 違う
ボタンが押されたらモデルの保存処理を呼び出すとか
モデルがどこかで更新されたらビューに反映するとかそういうの
WinFormsでは通常イベントハンドラに書くやつを全部GUIに依存しない形で別のクラスに書く
>>330 スレッドセーフのためならイミュータブルにするのが筋じゃね?
スレッドローカルストレージってのもあるんだから何でもかんでもイミュータブルにするという訳には 一番採用しやすい解決案の一つ、というだけだね
>>330 自分でインスタンス作ったんなら作り方は自分で分かってるだろ? ならどうにでもなる。
一般的なディープコピーなんか不可能。状況に応じて個別にやるしかない。
それに、推奨手段を取りたいというのはあくまでも希望でしょ? めんどくさいからシリアライズで済ましますと言っても誰も怒らんぜ それぞれ事情があるだろうからな
違った、シリアライズが面倒くさいということか でもそれ以上に楽な方法は無いよな
自分が設計するんであれば初めからFooインスタンスは複数作るようにするかなあ 可変な部分だけをFooのインスタンスとして所持して、不変な部分はスタティックに コピーにこだわる理由が、初期化コストを複数回払いたくない、ってことならだけど
元のオブジェクトはスレッド内で変更しないようにして共有して、 集計に使う変数だけTLSにして後で書き戻せばいいんじゃないの? それが面倒なほど各スレッドで多数のフィールドを更新しないといけない状況って ちょっと思いつかないな
>>323 ありがとうございます。
スレッドが絡むとやはり難しいですね。
340 :
デフォルトの名無しさん :2012/09/17(月) 23:18:10.30
どのくらいの速度でEtherが通信しているかを調べるプログラムを書いています。 ↓のコード3行目で落ちるのですが、どこでNIC名を取得すれば良いのでしょうか? >this.performanceUp = new PerformanceCounter("Network Interface", "Bytes Sent/sec", "", "."); >this.InstanceName = interfaceName; >return (int) this.performanceUp.NextValue() / 1024; >foreach (NetworkInterface nic in NetworkInterface.GetAllNetworkInterfaces()) ここで取得した、nic.NameをinterfaceNameにセットして処理を実行すると落ちてしまいます
↑ なんのためにそんな無駄なプログラムを作るんだろう。
↑ なんのためにそんな無駄なレスをするんだろう。
>>340 どんな名前が使われるかパフォーマンスモニターで調べてみれば
345 :
デフォルトの名無しさん :2012/09/18(火) 11:46:38.14
フォームに途中の項目まで値を自動で入力して 後は自分で入力するっていうのはC#でもできますか?
すっげー馬鹿っぽい質問
350 :
320 :2012/09/18(火) 16:30:13.08
旅行会社にソウルなど韓国へのツアーのキャンセルが相次いでいる。竹島問題をめぐる感情悪化が理由だが、
両国の対立はこれまでにも繰り返され、そのたびに「政治と経済は別」との考えから沈静化に向かっていた。
ところが今回は「嫌韓ムード」もあり、問題再燃から1カ月近くたった今も沈静化どころか、影響が拡大しつつある。
「韓国は海外渡航先でトップ3に入るドル箱。事態の長期化だけは避けてほしいのだが…」
大阪市内の日本旅行の店頭には担当者の願いもむなしく、8月下旬以降、韓国への個人パック旅行のキャンセルが
止まらない。関西発着分の9〜10月の予約は前年同期比4割減にまで達しているほどだ。
旅行会社にとってはドル箱の韓国だが、韓流に夢中となり、韓国に何度も出掛けていた女性を中心とする日本人の
意識も少しずつ変わり始めている。
「どのチャンネルも似たような韓国ドラマばかりでうんざりしている」。大阪市内に住む40歳代の女性はこう話す。
また、6月に兵庫県・神鍋高原で韓国人歌手によるコンサートを企画した大阪のイベント会社が突然、倒産した。
2日間でチケット約2万枚の販売を見込んでいたが、売れたのはわずか1400枚。しかも、チケットの全売上高を
歌手への出演料に回したため、払い戻しに応じられない事態となり、チケット購入者からは「詐欺だ」との声が上がった。
「必要以上に持ち上げられた韓流ブームが薄らぐ一方、嫌韓ムードは日増しに高まっている。韓国への旅行の
落ち込みも長期化するのでは」と旅行業界の関係者は先行きを警戒する。
実際、韓国に旅行した東京都在住の40歳代女性はこう話す。
「日本人とわかれば、屋台やタクシーなどは平気で価格をつり上げる。罵声を浴びせる人もいる。竹島問題もあり、
今は行きたくないですね」
http://www.sankeibiz.jp/econome/news/120918/ecc1209180800000-n3.htm
ネトウヨ王に、俺はなる!まで読んだ。
読まないで黙ってあぼーんしろよクソが
殺すか、そろそろ
355 :
デフォルトの名無しさん :2012/09/18(火) 23:12:55.30
今日電車で臭いババァ三人組が寒流ドラマを褒め称えていてすげぇうるさかった 公共のスペースで汚い話をするなよババァはまったくマナーないな
お帰り。
>>138 > 対応しておりXmlSerializerの上位版といえる。標準では出力するXMLが汚いが
> 名前空間を空にすればXmlSerializerとほぼ同じ出力。
これ名前空間を空にしてもシリアライズできるけど
ReadObjectでデシリアライズできる?
前にデシリアライズできなくってXmlSerializerで代用した記憶があるけど。
やり方がまずいだけ??
int[] data = { 01, 02, 03, 04, 05, 06, 07, 08, 09, 10 }; これの並べ替えで for (int i = 0; i < data.Length; ++i) { for (int j = i + 1; j < data.Length; ++j) { if (data[j] < data[i]) { swap(ref data[i], ref data[j]); } } と for (int i = 0; i < data.Length; ++i) { for (int j = 0; j < 1; ++j) { if (data[j] > data[i]) { swap(ref data[i], ref data[j]); } } で同じ結果になるんだけどどう違う?
アルゴリズムの問題であってC#関係ない 消えろ
しかもよく見るとおかしい。
ソースコードが違う
362 :
デフォルトの名無しさん :2012/09/20(木) 01:10:15.87
>>358 なんでソート処理を自前で書いてんだよ。暇人。
下はソートですらない謎の処理
そもそも2段目は文法エラーだろ。 あと、1回だけのループなのに for なんて使う必要ねーだろ。
確実に頭の構造は人と違うと思われる
366 :
デフォルトの名無しさん :2012/09/20(木) 01:31:42.44
int 型の配列に 01 とかって突っ込めるか? というか頭の悪そうなコードだな。
恐ろしいことに提示されたdataだとswapを1回も経由しない件
なぜ同じ結果になるか、じゃなくて、同じ結果なのにどう違う?だぜ 答えてやるよ 比較回数と内容が違う とりあえず二度と来るなよ
そんなにボコボコにしなくてもw
小さな悪を放置するといつか大きな災厄となりわれわれに降りかかる まだ刈るのが簡単なうちに芽を摘んでおいたほうが得策
悪役が言いそうなセリフですな
>>371 かっこいい
中二病の臭いがたまんないw
ンコナボ「バババーーローwww」
375 :
デフォルトの名無しさん :2012/09/21(金) 19:06:43.60
mp3ファイルの名前は文字化けしていないのですが タイトル 参加アーティスト アルバム ・・・(A) が文字化けしています。最初は手動で直していたんですけど キリが無いのでプログラムで一括でやってしまおうと思っているのですが ***.mp3 ファイルの音質を損ねる事なく(A)を取得したファイル名を元に 設定していくにはどうしたらいいでしょうか?
どこの 誤爆ですか
377 :
デフォルトの名無しさん :2012/09/21(金) 19:29:28.84
プログラムで ファイルの属性を設定したいって事だろうが。
ふーんC++なら簡単だよ
379 :
デフォルトの名無しさん :2012/09/21(金) 19:36:26.23
C#スレに質問してんだろうが。
ふーんC++なら簡単だよ
昨日といい今日といい、変なのが連続で来るな。
類友
マジレスすると、使う言語関係ないわ 酔狂にも自分でコード書いてやりたいというなら ただmp3のタグ仕様を調べるだけだろ ID3の各バージョンとかいろいろいあってかなり面倒だけど まあ少しでも知能のある人はMP3tagとかの既存の素晴らしいソフトウェアで一括編集するけど
384 :
デフォルトの名無しさん :2012/09/21(金) 20:54:50.70
>>358 先日のこのキチガイは今なにしてるのかな?
>>383 スレチ。
そんなちんけな情報はいらんよ。
デスクトップより巨大なFormの中味をbitmap化する方法ってあるかなあ?
Form.ClientSizeでクライアントサイズは大きくしてみたけど
Form.DrawToBitmapだとデスクトップに見えてる範囲しかbitmapに描いてくれない
DrawToBitmapに細かいオプションもつけられないし・・・
ソース
http://ideone.com/QRv1q textbox 2個とbutton 1個を貼り付けてる
387 :
デフォルトの名無しさん :2012/09/21(金) 22:24:19.84
デスクトップより巨大なFormの中味をbitmap化する方法ってあるかなあ?」 ↑ この時点でバカ
人格否定はどうでもいいよ pdfを画像化したい ↓ 調べてみるといろいろ追加する方法もあるけどブラウザコントロールに表示させたほうが簡単 ↓ ブラウザコントロールにpdfを表示させるとDOMが作られないので計画がorz ↓ URLとしてパラメタを与えれば簡易的な干渉は可能 ↓ 大きなウインドウ作ってキャプチャすればなんとかできるかも! ↓ うまくいかなかった・・・ ↓ 素直に仮想プリンタで画像出力できるやつにした・・・・ アドビがC#でもいじれるようにしてるんだけどネットででてくる物は古くて 最新のリーダーではうまくいかないんだよな・・・
ロジックと表現を分離しろって言われて直してるんですが モーダルダイアログでユーザーの応答を求める部分を分離することができませんどうすればいいでしょうか 失敗しうる処理をループで繰り返して成功したら終わり、失敗したらメッセージボックスでリトライしますか?と聞いたりするあれです 先輩に表現をたとえばCUIに置き換えてもロジックだけは書き換えないで済むようにできるからそう書き直せといわれました
アホな先輩でカワイソとしか... そんなの必用になった時点で書き直したって5分と掛からないんじゃないですかって言ってやれ。 まあ言っても分からないんだよなこういうタイプは。
391 :
デフォルトの名無しさん :2012/09/22(土) 00:41:47.56
日本人は型に拘りすぎだよな ITに関してははなかなかそういうのはうまくいかないのに MSが頑張って作ったWPFやSilverlightだってあのザマだぜ
>>392 サンプルも糞も、
>>389 の話を俺が誤解してなければ、
要するにHoge.ShowDialog()してるところをIHogeUI.AskUserToRetry()
みたいなメソッドに置き換えるだけじゃないの?
成功と失敗をイベントで渡してあげればいいんじゃね 表現はイベントを受け取った側の自由ってことで
>>390 それってテストも含めて5分でおわるん?
その手のダイアログはロジックでも ビューでもなくビューモデルに近い 概念なので、分離にはコツが要ります。 高度なUIはそれ自体がロジックの一種なので UI=表示のみという誤った考えは改めるべき。
>>391 XNAもな。
労力が塵と消えるのがソフトウェア。悲しい。
398 :
デフォルトの名無しさん :2012/09/23(日) 02:16:01.17
いまさらだけど for ( int i = 0 ; i < 10 ; i++) っていつも書いてたけど、 for ( int i = 0 ; i < 10 ; ++i) って書き方もできるんだね。
そのくらいだったらいいけどその辺は気をつけないと駄目なはず
int i = 0 ; for ( ; i < 10 ;){i++;}
401 :
デフォルトの名無しさん :2012/09/23(日) 08:05:56.30
>>398 Cでは、i++てかくけど
C++では、++iのほうがいいらしいぞ
402 :
デフォルトの名無しさん :2012/09/23(日) 08:58:47.94
>>401 C++の話はするな
ていうか、C++で ++i 推奨なのは
インクリメント/デクリメント演算子のオーバーロードで前置と後置が区別されず、同一のメソッドが結局呼ばれるため。
そういう奴は(=や+や-のオーバーロードに従えば)普通処理「後」の値なりオブジェクトなりを返すように作るので、後置のインクリメント/デクリメントだと見た目と挙動が違って混乱の元になるというしくみ
(最新規格では、前置と後置とで区別してオーバーロードできるのかも知れんが知らん
C#でオーバーロード可能な演算子には++や--は含まれないので関係無い
>>402 >ていうか、C++で ++i 推奨なのはインクリメント/デクリメント演算子のオーバーロードで前置と後置が区別されず、同一のメソッドが結局呼ばれるため。
本当か?
operator++() が前置、operator++(int) が後置なのでは?
404 :
402 :2012/09/23(日) 09:24:22.82
いやすまんここに書いてあったわ
ttp://d.hatena.ne.jp/cubicdaiya/20080606/1212695409 前置インクリメントの場合、インクリメント後のオブジェクト*thisのコピーを返しても良いが、*thisの参照を返すこともできるし普通そうする
例: std::string& Counter::operator() { this->str += "1"; return *this; }
後置インクリメントの場合、*thisはインクリメントされるのに、返さねばならないのはインクリメント前ということで、別オブジェクトになるのでコピーを返す他無い
例 std::auto_ptr<std::string> Counter::operator() { std::auto_ptr<string> p(new string(this->str)); this->str += "1"; return p; }
当然コピーを返す方が実行効率が悪い
405 :
デフォルトの名無しさん :2012/09/23(日) 09:29:16.31
>>401 なるほど。
C#なのでどっち推奨とかとくにないよね。
なんか、 ++i って書いてるコードみかけてなんか違和感を感じてたんだよねwww
406 :
402 :2012/09/23(日) 09:35:24.51
後置コード例がいろいろ間違っトルorz 直した、 前置の例: Counter& Counter::operator++() { this->str += "1"; return *this; } 後置の例: std::auto_ptr<Counter> Counter::operaotr++(int) { std::auto_ptr<Counter> p(*this); this->str += "1"; return p; } ただし、Counterクラスはstd::stringクラスのメンバstrを持ち、かつコピーコンストラクタCounter::Counter(Counter&)が定義されているとする
>>404 なるほど、後置インクリメント/デクリメントは効率よく参照(≒ポインタ)を返すわけにはいかないので、ちょいと不利なんですね。
operatotor++(int)とか KUSO言語はどうしようもないな
>>406 君にC++は向いてないから一生C#の世界に閉じこもっていてくれ
>>410 kwsk
つか言語によらず、参照を返すのべきか、コピーを返すべきか、それがもんだいだ
実行効率を考えたら参照返しが正義だが、呼ばれ側または呼び出し側の安全性に関する都合でコピーのが欲しい場合もある
C#は一見とっつきやすいがその実以下略
>>411 君の書いたコードはそういうレベルの問題じゃないぐらい壊滅的だからまずは効率を考えずに正しいまともなコード書くことから初めて
抽象的な話が始まったらもう話は纏まりません クソして笑える動画でも見ましょう
>>412 std::auto_ptr<T>(T(T&))があると思ったのはミスで、pの構築はstd::auto_ptr<Counter> p(new Counter(*this))
であらねばならないが、あとはconstがつけたほうが良い場所があるぐらい
auto_ptrのコピーとかオブジェクトの寿命には考慮が払ってあるわけだが
>414は抽象的な指摘しかしない(できない)>412向け動画
>>415 Counterのoperator ++でauto_ptr<Counter>を返す馬鹿はおそらく世界で君だけだよ?本当にそれで良いと思ってるの?
親切のつもりなんじゃない? あるいはauto_ptr覚えたてなんじゃない?
auto_ptr使うのはむしろ不親切なんだが?
Counter c; Counter d = ++c; // ok Counter e = c++; // error...dato...? 糞過ぎるwwwwww
静かになりましたね(ニッコリ
>>419 バカヤッロ
Counter e = *(c++); // error...dato...?
こうに決まってるだろ
>>416 あーわかりましたわかりましたこれでおk?
後置の例: Counter Counter::operaotr++(int) { Counter r(*this); this->str += "1"; return r; }
つかC++の話をするな
話をするなと言いつつ話を広げだした本人が何かイッテルデス
入力履歴を持つComboBoxを作ってたんですが、 ComboBoxは、テキストの入力時に自身の持つリスト項目にケース違いの項目があると、 入力を勝手に補正してしまい(リストの項目と同じケースを入力とする)ます。 ・入力履歴を、任意のタイミングでComboBox状にドロップダウンして表示したい。 (TextBoxのSuggestが、TextBoxへの入力のみを契機として表示されるので適さない) ・ケース違いの文字列も、ユーザの意図通りのケースで入力したい。 (ComboBoxではnot case sensitiveなリストの探索が行われてしまい、意図通りのケースで入力できない) という要求を満たすには、どうすればいいでしょうか。 現在は、次の二つの基軸にそって検討・調査していますが、どちらも行き詰まりつつあります。 ・TextBoxを継承したクラスに履歴を表示するドロップダウンを追加する →自コントロールの領域を越えてオーバーレイでリストを表示する方法が分からず、苦戦中。 ・ComboBoxを継承したクラスにてcase-sensitiveな入力を実現する →こちらも様々なイベント(実際はOnXXXのオーバーライド)で試しましたが、 TextChanged、Validatingなど上手く行かず。 どちらの方法でも構いませんので、実現方法を教えていただけないでしょうか。
424 :
423 :2012/09/23(日) 16:08:05.94
ComboBoxの方で作ったもの:
http://ideone.com/dMlwW イベント「AddingHistory」は現在使用しておりません。
TextBoxの方は似たような内容なので割愛。(必要であれば色々削ってさらします)
>402 そういう理由ならスタック変数をわざわざ前置きインクリメントする意味ないよな C++ってオブジェクトの++演算子オーバーロードする機会って多いのかな?
普通に doublePlusGood() とかメンバ関数を使うと思う‥‥
つかC++の話をするな
>>425 多いよ
プラプラはイテレータ作るからね
そんでくだらない小さいクラスにも注意すべきいろんな制約がある
規格読まないとなにも始まらないクソ言語だよ本当に
早くシャープのコードから最適化バリバリ効いたネイティブコード吐き出してくれるようにならないかな
夢より前を見ましょう
430 :
デフォルトの名無しさん :2012/09/23(日) 20:06:46.91
VS2010を使用しています。 下記構成でWindowsアプリを作成しております。 もともと(A)は、FW2.0として作成していたプロジェクトですが (B)のターゲットFWを4.0に変更するとビルドが通らなくなってしまいます。 (A) project_windows_form ・・・Windows Formアプリ (B) project_dll・・・DLLプロジェクト (B)については、 プロジェクトの上で右クリック > Propeties > Application > Target framework: にて、 .NET Framewor 4 という風にしてビルド対象となるFWのバージョンを 指定する事が出来るのですが、なぜか(A)では、FWの選択項目自体が なぜか表示されておらず切り替える事が出来ません。 具体的には、Application タブをクリックしてもその中に Target frameworkという項目がなぜか(A)の中には見当たらないのです。 ※つまり、(B)のFWバージョンが2だと正常に動作するけれども、 4にすると Imports (B) が(A)の中で記述しても認識されなくなってしまうのです。 以上 宜しくお願い致します。
>もともと(A)は、FW2.0として作成していたプロジェクトです もともと?今は?今は2.0なん?4.0なん?
4.0の方はclient profileになってるんじゃないの? プロジェクト->[プロジェクト名]のプロパティ(P)でプロジェクトのプロパティを開いて 大将のフレームワークをclient profileからclient profileなしに切り替えてみて
433 :
デフォルトの名無しさん :2012/09/23(日) 20:44:51.75
>>431 >>432 (A)は今もFW2.0です。 (たぶん)
また、(B)は、 client Pprofile じゃなくて通常の
.NET Framework 4になっています。
疑問なのは、DLLプロジェクトの(B)はFWの変更設定が出来るのに
Windowsフォームアプリケーションの(A)は、FWの切り替えが
出来ないのか?
という事です。VS2010のバグなんでしょうか。
※(A)は、もともとVS2005で開発していました。
最近になってVS2010を使い始めた次第です。
確か、アップグレードウィザードはかかったと思います。
切り替えは出来るのでバグじゃないでしょうか。 以上。 あとは自分で諦めるなり調べるなりしたらいい。 オレならcsproj直接編集するかな。
435 :
デフォルトの名無しさん :2012/09/24(月) 14:57:51.03
C#っつーかプログラミング言語の命名規則についての疑問 英語の出来ない日本人プログラマの多くがパス名を変数に格納するにさいして string str_delete = "*****"; とか、変な名前をつけるんだが文法的にも色々と崩壊している。 本来英語の文法的には、 string path_of_deleting = "***"; が正しいはずだ。英語のできない奴が日本のマには多いから仕方ないのかねぇ?
>>435 文法にこだわるなら
path_to_be_deleted
だろ。
変数名なら「delPath」で十分。
>path_of_deleting >path_of_deleting >path_of_deleting >path_of_deleting
439 :
デフォルトの名無しさん :2012/09/24(月) 15:25:32.07
>>436 >>437 多分、↓がベストだね。
path_being_deleted
英語の出来ない癖してコードを書く奴がいる事が
プロジェクトがデスマになる事の要因だ。
keiyaku_kbn ()
441 :
デフォルトの名無しさん :2012/09/24(月) 15:43:24.38
int kaisu_sakuzyo = 10; ↑高卒PG
string おっぱい = "無し";
443 :
デフォルトの名無しさん :2012/09/24(月) 17:44:05.07
Webbrowserコントロールの画面に モザイクを全体に掛けたいと思っています。 何か良い方法はありますか?
string keiyakuKbn = "2"; KbnKbnっておでんかよ と2ってなんだよ?あ?
446 :
デフォルトの名無しさん :2012/09/24(月) 18:20:50.13
>>445 サンキュー。
JavaScript 側でやるのですね。
447 :
デフォルトの名無しさん :2012/09/24(月) 18:52:30.37
DataGridVeiw上のスクロールバーを 下にスライドさせようとした場合に、 それを封じたいと思います。 どういうコードをかけばよいでしょうか? DataGridView.Enable = false; は最初からしたくありません。 イベント発生時に封じるイメージです。
スクロールバー消したら?
>>445 自分が管理できるhpはそれでいいけど他人の作ったhpに
干渉できたっけ?
>>449 そのための1行目だよ
つまり wb.Url=new Uri("javascript:...;");
451 :
449 :2012/09/24(月) 19:27:30.65
>>450 ほー
横からだけどありがとう
これで仕込めるなら結構いろいろできるな
452 :
デフォルトの名無しさん :2012/09/24(月) 19:35:22.51
>>448 諸事情により、一覧の上部分は見せるけど
特定のユーザ(暗証番号を入力して通った人のみ)には
スクロールをさせたいと思ってます。
つまり、認証がとおって無いユーザは
一覧の上部は見えるけれどもスクロールして下段を見る事は出来ない状態にしたいのです。
それはスクロールで解決することじゃなくて DataGridViewに表示するデータ量を絞ることで解決することじゃないか?
454 :
デフォルトの名無しさん :2012/09/24(月) 19:38:01.31
>>452 そういうのだったら認証通ってない人向けはDataGridViewに途中までしかデータを
セットしないとか
ウィンドウハンドル分かれば、汎用コントロールのデータなんか読みとり放題だしな
456 :
デフォルトの名無しさん :2012/09/24(月) 20:14:08.73
そうそう 認証が終わってないユーザーの端末へ全部データを送って 表示で制限って覗いてくださいって言ってるような物だしな
457 :
デフォルトの名無しさん :2012/09/24(月) 20:17:50.38
>>453 >>454 DataGridViewを2つ用意して
フルデータ
一部のデータ
の2ぱたーんを作って対応します。
まぁー、ユーザはオペレータレベルなので
いちいち解析はしないでしょうから。
そういう問題じゃないけど 知ったことではないな
459 :
デフォルトの名無しさん :2012/09/24(月) 20:32:44.42
まあ手を抜いても大丈夫だと思うならそれでいいんじゃね?
460 :
デフォルトの名無しさん :2012/09/25(火) 00:12:09.64
時間がないので とりあえず動けばOKとおもっとる。
検索元となるBitmapに格納された画像に、別のBitmapに格納された画像が含まれているかどうかを判定し、含まれていれば座標を取得する方法を模索しています。 BitmapDataに変換して地道に先頭から比較する以外の方法はあるのでしょうか?
そんなものは画像認識ライブラリ 使うに決まってんだろ。 自前でやるなんてクレイジーもいいところ。 少なくともC#スレで訊くことじゃない。
規則性が何にもないなら泥臭くやるしかないんじゃない?
自分で書くより100倍速くて高機能なライブラリが転がってるからなー
あくまでも自分で検索するのが目的なのであれば、画像処理の本でも読まれた方がいいと思いますわ。
話の内容からすると単純なバイナリ比較で十分と言ってるように聞こえるけど。 画像処理って何のことだよ。
どういう画像の比較かわからんけどさ・・・ たとえばソーシャルゲーの画像の一覧画像のようなのに 新規の画像が無いか確認とかで画像サイズに規則性があるのなら割と簡単だけどさ・・・ それでもbitmap状もしくは横ライン単位で広げるしかないだろうな 画像ってメモリ上では色情報を並べた単なる2次元配列だし 比較する画像の大きさが違うのならなお更・・・
元がjpgだったりすると厳密に一致する探索でいいのかも分からない
ComboBox内の文字列を選択すると 青背景、白文字になるんですけど これを 白背景、黒文字のままにするにはどうすればよいでしょうか?
editできるようにする
いわゆる「選択」してる状態なのでそれを解除できればいいわけだよね・・・ private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { SendKeys.Send("{RIGHT}"); }
475 :
デフォルトの名無しさん :2012/09/25(火) 11:38:12.66
クリック「ンーwwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
クリック「んほおおおおおおぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉっ!!!!!!!!!!!!!!!」
477 :
sage :2012/09/25(火) 15:44:58.37
TextBoxに100文字程度のテキストを次々に読み取り専用で複数行で表示させるツールを作成しています。 自動スクロールなどの機能も含めたいのですが、どうにもApeendText等を実行する度に負荷が高くなってしまい、 満足なパフォーマンスを得る事が出来ません。 最終的には1秒ほどのもたつきも出てしまいます。 WordWrapをオフにする、文字数制限をする等の改良を入れて行こうと思うのですが、 もっと他に根本的な良い改善方法が御座いましたら教えて頂けませんでしょうか。
どんな追加のし方してんの? 別で追記して一気に設定しては?
479 :
477 :2012/09/25(火) 16:00:49.80
foreach (string text in textBuffers) { textBox1.AppendText(text); } と言った実装です。 対象とするテキストを一度にTextプロパティに代入する方法だと、 文字数が増えた時にさらに遅くなってしまいました。
480 :
デフォルトの名無しさん :2012/09/25(火) 16:02:44.56
>>479 それだったら先にstring[]からstringになるように合体させてtextboxに突っ込めばいいよ
481 :
477 :2012/09/25(火) 16:09:55.21
NULL文字(\0)を多数含んでいる文字列なので、一度分割しないと、TextBoxが見つけた時点でその後のテキストを破棄してしまうようです…。 また、合体させて入れてみても、やはり連続での代入での負荷が高く、改善が見られせんでした。
>合体させて入れてみても、やはり連続での代入 合体してるのに連続ってどういうことなんだ・・・ コンソール的なものでも作りたいの?
483 :
477 :2012/09/25(火) 16:25:46.75
すみません、分割せずとも textBuffers = textBuffers.Replace("\0", ""); で置き換えてしまい、 textBox1.AppendText(textBuffers); でOKでした。 しかし、根本的に設定する量が多いのか、劇的な改善にはならなかったです。。
484 :
デフォルトの名無しさん :2012/09/25(火) 16:26:56.90
NULL文字が多数存在するのならリプレースしちゃえばいいじゃん
485 :
477 :2012/09/25(火) 16:27:48.50
>>487 > コンソール的なものでも作りたいの?
はい、まさにその通りです。
文字列のバッファを定期的に拾って表示し、内容を監視できるというツールです。
486 :
デフォルトの名無しさん :2012/09/25(火) 16:29:49.50
StringBuilder使えば?
TextBoxを使うと差分追加にならず TextBox.Text = TextBox.Text + s; みたいに 文字列全体を毎回作成することになると思うので リングバッファ+リストビュー(仮想モード)とかでやった方がいい気がする
488 :
デフォルトの名無しさん :2012/09/25(火) 16:37:15.15
ログはList<T>で管理してtextBoxの表示行数を調べてその分だけ その都度textboxへ突っ込めばいいじゃないの?
489 :
477 :2012/09/25(火) 17:12:26.53
ログのリングバッファ+textBoxもどきのリストビュー(仮想モード)が、要件を満たせそうです。 ありがとうございます。試してみます。
TextBoxに100文字程度のテキストを次々に読み取り専用で複数行で ↑ くその役にも立たないソフト作ってるな。
くその役にも立たない書き込みと同じだよ同じ
くその役にも立たないのが当たり前なんだよ 人生は無価値なのだから何をやろうがやらまいが役に立つも糞もない
役に立つ立たないは周りがとやかく言うことじゃない
感想を述べているだけじゃないか 人が意見を述べる権利を全力で守るのが民主主義だろう? 口に戸でも立てようってかい
口に戸は立てないけど 首は刎ねるよ
497 :
デフォルトの名無しさん :2012/09/26(水) 14:00:32.28
W
クリティカルヒット
*.XmlSerializers.dllが作成されないのですが、どうしてでしょうか? 一応、プロジェクトのプロパティ画面にて、シリアル化アセンブリの生成は「オン」にしています。 *.XmlSerializers.dllがないため、Exceptionがスローされてしまい、困っているのですが……
おいエスパー 早く答えて差し上げろ
Sgen.exe を /forseつけるとか
force だったごめん
503 :
デフォルトの名無しさん :2012/09/27(木) 23:30:28.25
504 :
デフォルトの名無しさん :2012/09/28(金) 02:07:22.15
お前らに質問。 ある他社製品のパッケージの導入が決まりました。 あまりに出来の良い商品で感動しました。 ここで質問。 ***.exe と同じディレクトリに入っている ***.dll を逆アセンブルして除く システム部の人間の割合は何%位だと思いますか? また、除いた上でパクろうとする割合は、何%だと思いますか?
そういうネタはふらっとでやってくれ。 妄想よりマシな答えは誰も持ってないよ。
ネタじゃねーんだよ。 あまりにも俺の作成したライブラリが良すぎて 心配なの。 ネタじゃなくて、マジな方。
508 :
デフォルトの名無しさん :2012/09/28(金) 03:45:24.52
>>507 それのクラック版どっかにないかな?
15万とか高すぎるぜ。
>それのクラック版どっかにないかな? 合点が行った。 自分が盗んでいるから、人に盗まれるのを恐れているのか。 開発者単位の5ライセンスで他のプロジェクトでも使えて、保護されたアプリをエンドユーザへいくら配布しても追加料金は一切なし。 これで高すぎるって事は、そのコードにはそのくらいの価値しかないと暗に言っているようなものではないか。 まぁ、予算がないなら適当なやつで難読化してパッカー使っとけ。
触るとうんこがつくと不平を言う前に 進んで水を流しましょう
最近silverlight、XNAと.NET関連にオワコン感が漂ってるんだが、 このスレ見るとC#もなのか?C++へ回帰するのか?
あくまでメインターゲットはエンタープライズ向けというのを忘れないように Web関連とか絶好調らしいし
>>509 否定はしない。
うーん。月5万円ずつ積み立てるか。
そもそもdllにしなきゃいいだけなのに
516 :
デフォルトの名無しさん :2012/09/28(金) 15:17:17.84
519 :
デフォルトの名無しさん :2012/09/28(金) 15:47:59.31
>>517 ありがとうぬら。
>>518 それやった事あるぬらぁが、
バグがあってマージに失敗したずら。
なんだこいつ気持ち悪
この手の質問する奴はこんな奴ばっか
>>504 17%
なんでみんな聞いてもいないこと答えてるの?
馬鹿じゃないの?
最後の2行で聞いてもいないこと答えてるね。馬鹿なんだね。
永遠の17%
C#でガンダム作れますか?
じゃあC#ってなんに使うんですかほかにあまりないですよね有意義なことって・・・
528 :
デフォルトの名無しさん :2012/09/28(金) 22:58:52.18
おいエスパー 早く答えて差し上げろ
ガンダムは作れないけどAGEシステムなら作れるよ
現実にガンダム作ってるアニメーターどもよりは大抵の職業が有意義だと思うよ
>>531 リンク先を読んでないが、
いつGCが走り出してプチフリするかもしれないロボットとか
ジーンシャフトの主役メカみたいな
RTOS持ち出さないといけないようなのはCに任せとけばいいよ。
.NET MFもそれなりに人気あるしな MFだとGC無効にできるらしいが
ふあえw9p
AndroidやiOSの上でMF動かせないかなあ Monoよりはるかに軽いはずだしタダだし
537 :
デフォルトの名無しさん :2012/09/29(土) 15:57:53.35
.NETのライブラリのDLLをネイティブコンパイルしてプライベート配置したら 明らかにライセンス違反だろ
540 :
デフォルトの名無しさん :2012/09/29(土) 17:02:02.10
ばれなきゃいいでしょ。
541 :
デフォルトの名無しさん :2012/09/29(土) 17:04:04.17
>>538 >>537 のソフトを使って.NETをネイティブ化してしまえば
逆アセンブルの心配も無くなるし、使う側もアプリの起動速度が速くなってベストだよね。
ngen以上に速くはならんだろ 元々JITじゃなくてIOバウンドなんだから
たしか実行ファイルが馬鹿でかくなるんじゃなかったっけ?
C# てか .net framework の質問なんですが、 Assembly クラスで、イントラネット上の アセンブリ (DLL) を読み込んで、そのアセンブリこーどからローカルファイルにアクセスさせたいのですが、FileIOPermission の例外が投げられるらしく、動作しません。 なんかウマい方法教えてください! 環境は .net 2.0 です。
部分信頼も糞もあったもんじゃないな
C# てか .net framework の質問なんですが、 Assembly クラスで、イントラネット上の アセンブリ (DLL) を読み込んで、そのアセンブリこーどからローカルファイルにアクセスさせたいのですが、FileIOPermission の例外が投げられるらしく、動作しません。 なんかウマい方法教えてください! 環境は .net 2.0 です。
まぁ、イントラネットなので… exe の実行とかはそもそもできますしねぇ。
スイマセン、連投はミスです… まさか戻るで連投されてしまうとは…
おちつけつ
バイナリ全部読んでから Assembly.Load( byte[] );でもダメなんかね
551 :
デフォルトの名無しさん :2012/09/29(土) 19:24:30.01
>>543 1MB が 1GB にはならへんやろうが。
プログラムの規模に線形比例するわけじゃないならどうでもいい
>>553 入力プログラムのステップ数に対して実行ファイルのサイズが指数関数オーダー(≠線形比例)で増えたらどうするんじゃ
どうするんじゃ じゃねえよ そのように増えるのかどうかはっきりさせてから物申してくれ
本当にそんな風に増えるなら検討に値しないだろうな 逆に考えて、商品化してる奴まで居るってことは、そんな問題は出てないってことだ
数メガ程度のデータを読み込むのにどうしてそんなに時間がかかるんだと
さあ?
559 :
デフォルトの名無しさん :2012/09/29(土) 21:17:10.94
>>552 10年前のマシンならともかく
今のスペックならまだ許せるぜ。ワイルドだろぉ
560 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2012/09/29(土) 21:55:53.22
>>552 >ハローワールドが1MBは嫌だろ
…ってーか、どっちにしてもWindowsAPI呼んでるんだから結果は同じだな。
ばっかみたいw
アウトプットが同じなら一緒という考え方、プログラマーとしては嫌いじゃない まあこの場合はフットプリントも「結果」として扱われてるけど
562 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2012/09/29(土) 22:04:59.12
C#使うぐらいだったら99BASIC使った方が結果が早い。 Cはバカが使うもの。
自己主張の強いプログラマーは嫌い
564 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2012/09/29(土) 22:15:34.15
俺プログラマーじゃないからw
調子に乗ったアマチュアはもっと嫌い
俺のお仕事だとROMは64MBくらいが限度なんで単独のモジュールで1MBはキツイ
そこで小型組み込み向けの.NET Micro Frameworkですよ
おれなんかコード64KB データー&スタック64KBだよ。
ちょっと話を整理すると
逆アセンブルさせない場合には、難読化どうこうじゃなくて
>>537 のツールを使ってネイティブアプリに変更すればOK?
あと、
>>537 を試した事のあるやつはいる?
身銭を切ってだれか試してください。
良さそうだったら小遣いを積み立てて購入を考えています。
馬鹿っぽいレス。 あんたにとって何がOKかなんてあんた以外の誰に分かると言うんだ。
>>550 おお、いけた!
コレは使える!ありがとー!!
Reflectorの代わりはILSpyでおk?
>>573 うん
無償版やめた途端に代替品作られて完全に逆効果w
逆アセンブルを言い出す奴の大半が逆コンパイルのことを言ってる気がしてならない
特に対策しなければ逆アセだけでも十分読めるから間違ってない
>>575 定義としてはそうだね。
でもILの逆アセンブルコードとx86なんかの逆アセンブルコードは質が違うからね。
ILがけっこう高級言語だから、IL→C#の逆コンパイルのステップはあんまり重要じゃなくて ちょっと整理して読みやすくする程度なので 逆アセンブルと呼ぶ方が適切だと思う
>>537 のツールで.NETアプリをネイティブに変換したとします。
あんた達は逆アセンブルする自信はありますか?
あるよ普通に そういうプロテクトが掛かってるものを仕事で解析したこともある
逆アセンブルだけなら小学生でもできるわ
小学生(程度の時給)でもできるわ
WPFでconsole.writeしてて ビルド後のexeを起動した場合、どこかにファイルとして出力されてるんですか?
標準出力にでてます コマンドプロンプトなんかから起動すれば分かりますよ
ファイルに出したければリダイレクトすることもできるけど それだったらTraceSourceでも使った方がいい
>>586 芦田愛菜でさえお前より稼いでるのに、なに言ってるんだ?
芦田愛菜が稼いでるんじゃない。事務所が稼いでいるんだ。
質問。 Windows Formがオーナーフォームを引数に取らない方のバージョンの Showで表示された場合、メインのフォームが閉じられてプログラムが終了するときに FormClosingイベントもFormClosedイベントも発生しない(当然OnFormClosingもOnFormClosedも呼ばれない) ようなんだけど、これって俺の環境だけ? っていうか、こんな変な仕様だっけ?MSDNのどこにも書いてない気がするんだけど... 仕様だとしたらこんな妙な仕様になってるのは何か理由があるんだろうか?
当たり前だろオーナーがいないのにどこにイベントを通知するんだよ
591 :
デフォルトの名無しさん :2012/10/01(月) 22:01:10.40
VisualC# 2010を使用しています 巨大なバイナリファイルを読み込もうとFileStreamを使用しているのですが int型の引数しか渡せないため2GBを超えるランダムアクセスができません public override int Read ( [InAttribute] [OutAttribute] byte[] array, int offset, int count ) どのように実装すれば良いのでしょうか?
Seekする
.NETは64ビット環境でも32ビットのインデックスでアクセスできるサイズの配列しか使えないよ 64ビット環境でオンメモリでやるなら(32ビット環境ではもともと無理) ジャグ配列で複数の配列に分けて持つようにする
595 :
デフォルトの名無しさん :2012/10/01(月) 22:11:59.90
即答ありがとうございます 例えば fs.Seek(4*1024*1024*1024, SeekOrign.Begin); fs.Read(buff, pos, length); を実行した場合は 4*1024*1024*1024+posからlength分読み込まれると理解すれば良いのでしょうか?
596 :
デフォルトの名無しさん :2012/10/01(月) 22:13:13.85
> 巨大なバイナリファイルを読み込もうとFileStreamを使用しているのですが 馬鹿確定
>>589 > Application.Run メソッド(Form)
> このメソッドは、Closed イベントの mainForm パラメーターにイベント ハンドラーを追加します。
> イベント ハンドラーは、ExitThread を呼び出して、アプリケーションをクリーンアップします。
で、ExitとExitThreadを見比べてみればイベントが動かない可能性は想像できる
>>595 Readのoffsetの意味を誤解してる
offsetはbuffに書き込むときの開始位置だよ
599 :
デフォルトの名無しさん :2012/10/01(月) 22:17:09.85
>>598 ありがとうございます
根本的な勘違いをしていました
Readの引数がintしか取らない理由もわかり、安心して利用できそうです
>>596 晒し上げるつもりはないが、なんでバカ扱いしてるのかが俺にはよく分からん。
教えてエロいひと!
うわこいつ最悪
すみません。保存するPNGの圧縮レベルを上げたいのですが上手くいきません。 保存は出来ているので、圧縮率が変わらないのは、EncoderParameterの設定値が間違っているだけだと思うのですが、 どのように指定すればいいのかわかりません。 環境はVS2010の.NET Framework4です。ご教授ください。 Bitmap img = new Bitmap("○○○.png"); // エンコーダのパラメータ設定 EncoderParameters eps = new EncoderParameters(1); // 圧縮レベルの設定 eps.Param[0] = new EncoderParameter(Encoder.Compression, 9); //イメージエンコーダに関する情報の設定 ImageCodecInfo ici = null; // イメージエンコーダに関する情報をすべて列挙 foreach (ImageCodecInfo enc in ImageCodecInfo.GetImageEncoders()) { //指定されたMimeTypeを探して見つかれば返す if (enc.MimeType == "image/png") { ici = enc; } } // 保存 img.Save("○○○.png", ici, eps);
ちょっとしたウェブブラウザを作ろうと思っているのですが、 プロの人がソフト開発をする場合、まずどこから作り始めますか? ・インターフェイス、抽象クラス ・具象クラス ・クラス図
>>604 暇そうなトコ悪いけどここは全然他じゃないよ
住人の9割は共通
C#関係ない 失せろ
>>603 EncoderParameterはjpeg/tiffにしか効かないよ
System.Drawing/GDI+のエンコーダでpngの圧縮レベルは指定できないんじゃないかな
608 :
デフォルトの名無しさん :2012/10/02(火) 00:04:55.45
生産性についてお前らに質問 VS2010でVsVim入れて開発してるだけど マウスを使わなくていいから生産性が高いと思っているんだけど どう思う? ※客観的な意見を頼む。
>※客観的な意見を頼む。 VSスレでやれ
>>608 そういうのが生産性だと思ってるならそれでいいんじゃない?
俺は、バグを作りこまないとか、手戻りが発生しないように作るとか、
以前作ったものが使いまわせるとか、そういうのが生産性だと思っている
客観的に他人のことなんてどうでもいい
ふかんしょうおつ
客観的に考えて人それぞれでしょ
Entity Framework(EF) + MySQL + VS2012(C#)の環境で データベースアプリを開発はじめました。 LocalDb使用時はEFがテーブル自動生成してくれるんですが MySQLの場合は、予め作っておかないとエラーが出るのが気になります EF + MySQL環境ではテーブルの自動生成は使えないんでしょうか? App.config は<connectionStrings>を追加しただけです。
>>617 参考になった。ありがとう。
MySQLもメジャーだけど、C#だとやっぱりSQL Serverが
多いのかな。
少数派の組み合わせだとやっぱり地雷踏むな
>まだ常用に耐えない予感
EFはマッピングしているだけで、接続はMySQL Connector/Netの
ADO経由になるから、常用するのは問題なさそうですよ。
開発の時にちょっと情報が足りないとか、
バグ地雷を踏むかもってくらいじゃないかな?
とりあえずおとなしくMySQL WorkbenchでGUIでテーブル作ります。
EFのFluent API使うよりわかりやすい気もするし
プロパティで公開するコレクションのの型なんですが、 列挙だけさせたいときはIEnumerable<T>返すじゃないですか。 Countで数も知りたいし、インデックスでgetさせたいけど、setやAddはさせたくない みたいなときはどうするんでしょうか。 IEnumerable<T>だとCountがないし かといってICollection<T>だとAdd/Removeできちゃうし みんな自分で作ってるの?
620 :
デフォルトの名無しさん :2012/10/03(水) 11:49:24.87
配列で返すとか?
ReadOnlyCollection<T>にラップする。 コンストラクタを使ってもいいし、ArrayやList<T>のAsReadOnlyを使ってもいい。 型はIEnumerable<T>かIList<T>が一般的だと思う。ICollection<T>はあんまり使わないな。 IEnumerable<T>で返す場合でも、相手が信用できないならReadOnlyCollectionにラップするべき。 そのまま返したらキャストすれば変更できてしまうからな。
foreachするだけじゃなくて要素数が知りたい場合って 大抵ランダムアクセスしたいときだから、ICollection<T>はあんまり意味ない MSの中の人もICollection<T>は失敗だったと言ってる
IEnumerable<T>でも拡張メソッドのCount()で要素数取得できるよ 実体がICollection<T>を実装してればCountプロパティが使われるからO(1) そうでなければO(N)だから安易に使うのは良くないけどな
>>622 そうでもない
空かどうかの判定に使う
そういう意味では要素数でなくIsEmptyがあれば十分だったんだけど
俺も要素数+列挙の需要はあると思うぞ。
626 :
デフォルトの名無しさん :2012/10/03(水) 17:32:44.05
for (int i = 0; i < 100000; i++) Progressbar1.Value = i; みたいな感じでプログレスバーを更新しても遅れて更新されます 何が原因なのでしょうか?
ループでスレッド独占しててProgressBarの更新する暇がない
アイドリングすべし
>>626 処理は別スレッドでやって
プログレスバーはそのスレッドからControl.Invoke経由で変更すればいい
BeginInvokeだろ
別スレッドからならどっちでもいいよ 終了 次の方
>>632 処理が早すぎるとキューに溜まりすぎて
キャンセルボタンが聞かなくなったり落ちたりする
.NetのBeginInvokeの実装はPostMessageだから、 Invokeと違って前回BeginInvokeした処理が完了してない場合は BeginInvokeを呼ばないような回避処理を入れないと環境次第で死ぬな。 知らずに使ってる奴も結構居るけど。
InvokeはInvokeで呼び出し中にうっかりメッセージループ回してしまってデッドロックとかあるけどな
DoEventsはそもそもスレッドをまともに扱えない素人用だぞ・・・。
638 :
デフォルトの名無しさん :2012/10/03(水) 21:16:27.39
↑ うっさい!
>>624 拡張メソッドのIEnumerable<T>.Any(引数なし)で空でないかどうか確認できるぞ
>>637 Refreshとかでも回ったりするからねー
InvokeとかDoEvents使ってるんですが どういうコード書いたときデッドロックするんですか?
>>635 どういうケースで「死ぬ」のかよく分からんな。
何か勘違いしてない?
>>642 キューに溜まりすぎて、許容できないほどレスポンスが悪くなるってことでしょ
645 :
644 :2012/10/03(水) 23:45:18.44
646 :
デフォルトの名無しさん :2012/10/04(木) 00:24:31.85
フリーソフトで.NETアプリをネイティブに変換する ソフトとかってありませんか? インストール端末に.NETをインストールしなくちゃならないので 何かと手間に感じております。
>>645 言いたいことは分かるけど、これって当たり前のような気が。
問題は前回BeginInvokeされた処理の終了を待たないことではなくて、
BeginInvokeの頻度が高すぎること。
必要以上の高頻度でUIを更新しても意味がないことが分からないプログラマが
そういると思えないし、そもそもそんなコードを書く動機がないと思うんだけど。
>>646 ないし、ネイティブかどうかという問題でもない
C++でも別途ランタイムやライブラリのインストールが要る場合は多いよ
インストーラ作れ
Windows Phoneってめちゃくちゃ開発簡単なような Androidと比べると、比較にならないくらいスピーディにできそうな気がした こりゃーすごいかもしれない
>>649 んなことない。プログラミングって結局ノウハウとライブラリの量が重要。
java/C++のandroidのほうが開発効率も自由度も高い。
WindowsPhoneはサンドボックスすぎて情報量少なくてやりづらいのなんの。
mono for android使えば.NETも使えて完全にandroidのほうが上。
>>650 うーん、そうなのか
Androidはエミュレータでのデバッグが遅いのと、デザイナがダメダメな所が好きになれないのね
Appleの信者にはなりたくないし
WPはアプリが少ないので、プログラミングをやったるでーという気持ちになるかも
プログラミングしようとした時、すでにアプリがあるとヤル気が失せるでしょ
>>647 その当たり前のケースを聞かれたから答えただけだが。
>>626 でBeginInvokeすればループ完了までキャンセルボタンもまともに反応しないと思うが?
>必要以上の高頻度で
1要素毎にカウントアップするようなアプリはよく見る。
時間で頻度調整するなら良いけど、10ループ毎,100ループ毎のような調整では
環境、CPU性能やグラフィック性能等の違いで簡単に頻度は変わる。
>>648 そもそもかもしれませんが、
.NETで作成したアプリはインストーラを作ったとしても
事前に.NET FW のインストールは必要ですよね?
無料が無いんであれば、
左程高くなければ金を出してもいいです。
ネイティブに変換出来るソフトを教えて下さい。
2.0が入ってないような環境はもう無視していいと思うけどな。3.5までは大抵のとこで入ってるだろ。 必須コンポーネントで.NET設定しとけばインストール時に導入してくれる。
>>651 アプリがないのは「つくれないから」という理由も多いのに気をつけて。
とにかく自由度が低いんだ、Phone8で多少はましになるだろうが。
androidエミュが遅いのはx86版でデバッグするとかでは駄目だろうか?
以下のコードがうまく動かないのですが、どこを直せば良いのでしょうか 復号化でこけているようで、戻り値の書き込みバイトも0となっています static void Main(string[] args) { byte[] a = new byte[16]; byte[] b = new byte[16]; byte[] c = new byte[16]; a[0] = 1; var aes = new AesCryptoServiceProvider(); aes.GenerateKey(); aes.GenerateIV(); aes.CreateEncryptor().TransformBlock(a, 0, a.Length, b, 0); aes.CreateDecryptor().TransformBlock(b, 0, b.Length, c, 0); }
TransformFinalBlockっていうかCryptoStream使えば?
>>657 ありがとうございます
よく分かりませんができました
Task使うとき、その中身も非同期メソッドを使わないとダメなの? 例えばWebClient.DownloadStringAsyncなど。 従来の非同期には、イベントパターンとIAsyncResultがあるようだけど それに対応しているクラスはそれを使えってTaskに置き換えろってこと? .Net 4.0
ラップして使うだけ
>>655 あぁ、確かにそのとおりかもしれませんね
自由度が低いから、アプリが少ないってのはいい線ついてますね
目の付け所がシャープと言ってくれたまえ
Linqを使うとfor + ifを省略できるって聞いたもんで、こんなコードを書いてみたのですが PerformanceCounterCategory[] category = PerformanceCounterCategory.GetCategories(); var c = from n in category where n.CategoryName == "Network Interface" select n; なんで、ここで怒られちゃうんですか > PerformanceCounterCategory network = c[0];
LINQの結果は配列やリストじゃなくてIEnumerable<T>だからインデックスは使えない 最初の要素を取得するには PerformanceCounterCategory network = c.First();
目の付け所が774さん てうまいこと付けたよな、言霊ってすごいや。
669 :
デフォルトの名無しさん :2012/10/06(土) 17:16:24.53
何のために(C#Wikiは)生まれて 何のために(C#Wikiは)朽ちるのか
鬼束ちひろ『月光』
何か書いてほしいならせめてフォーマットを示そうぜ
>>673 すまん、ちょっとずつ改善してく予定だから生暖かくな?
675 :
デフォルトの名無しさん :2012/10/06(土) 21:39:03.76
どぼんねっとが あるのに なんでC# wiki とか作るんだろ?
別にC#Wikiに賛同はしないが DOBON.NET、あれ古過ぎ
677 :
デフォルトの名無しさん :2012/10/06(土) 22:04:26.64
そんな事より出来るか出来ないか質問させてくれ。 さくらインターネットのWWWサーバを使って C#で作成したクライアントアプリからメールの送信をする事に成功しました。 で、YahooメールのSMTPサーバ使って送信とかって出来るものかな? なんかWEBメールは扱い辛いので自作のメール送信クライアントを作成しようと思っているんだが。
そりゃ他のメールクライアントでできるんだからC#でできないわけがない サーバーも特に必要ないはず
ソケットをゴリゴリせずにインターネット 経由でTLS暗号化しつつメールサーバーと やりとりできるかって訊いてるんだろ。 Yahooはstarttls使わずに通信全部がTLSだったかな。 できそうな気はするけど知らん。
680 :
デフォルトの名無しさん :2012/10/06(土) 22:38:39.78
Yahoo経由でメールを送る場合 これまでWEBブラウザをC#で操作しておくっていたけど 効率が悪いなぁーと思いました。 どぼんさんのページにあった System.Net.Mail.SmtpClient sc = new System.Net.Mail.SmtpClient(); このコードを Yahoo に対して適用する事が出来るのかな? と疑問な次第です。挑戦して出来なかったら時間の無駄になるので 最終的にできる、できないが知りたいです。 できるのであればこれから挑戦してみます。 迷惑メール業者に正義の鉄槌をお見舞いしたいのです。
俺には君こそ迷惑業者に見えて仕方ない
683 :
デフォルトの名無しさん :2012/10/06(土) 22:49:45.65
>>681 えすぱーのあなた達は、やった事ないの・
>>682 違う。業者への制裁人ですよ。
迷惑メールを送る相手を間違えましたね!
という事を十分理解させてあげようかと思ってます。
yahooメールなら設定で直smtpアクセスできるようになるよ 俺普通にbeckyでメール送受信してるもん
685 :
デフォルトの名無しさん :2012/10/06(土) 23:06:00.54
サンキュー!! 出会い系業者におしおきしたるか。
>>669 プログラミングネタはWikiは合わないだろう
C#の場合は、質・量ともにMSのドキュメントが最高レベルだし
漠然とC#のwikiをつくっても更新しようとするひとは少ないと思う。
他の方法のがいいとおもうけどな
自分で興味あるテーマのネタをブログに書いたり、
良いページのブックマークを集めるか(はてなブックマーク的な何か)
サンプルコードを作ってアップロードするとか
Wikiだと正常なコードをだれかが余計な修正いれて
だいなしにされたりする。
コードの変更は文章と違ってすぐには気が付かないからたちが悪い。
俺はサンプルコード書く場合あるが、wikiには先ず載せない。
見知らぬ人に改悪されるのがどうにも我慢ならんw
Yahooマジできるのか。 SmtpClient.EnableSslの説明見たらGoogleの様な「with TLS」はできても Yahooの「over TLS」はできなさそうに見えたんだけど、そもそも平文で送れるのね。 >事前に SSL セッションが確立され、その後にプロトコル コマンドが送信されるという、 >代替接続方法もあります。 この接続方法は、SMTP/SSL、SMTP over SSL、 >または SMTPS と呼ばれることがあり、既定ではポート 465 を使用します。 >SSL を使用するこの代替接続方法は、現在はサポートされていません
>>686 ideone へのリンクを張るのはどうだろう?
新しい技術をどんどん手に入れて 改善していく力がないならサイト閉じればいいのにね どぼんはこれからC#をはじめるひとにとって害しかない
691 :
デフォルトの名無しさん :2012/10/06(土) 23:43:53.56
Wiki作った人w どぼんの悪口いうな。 MSのドキュメントと比べればよっぽどわかり易くてよい!!
DOBONみたいなところの悪口をいう奴の気がしれんけど、それはともかく、 あそこはどっちかというとTIPS系の情報が主体でC#そのものにはウェイトが置かれてないだろう。
未確認飛行もさ、 「ここではもう一歩踏み込んで「そもそもなぜそういう機能が必要なのか」という部分に焦点を当てた説明をします」 と、偉そうに言っておきながら、デリゲートの説明は@IT並だしな コード読んでも説明読んでも、デリゲート無くてもそれぐらいできるし簡単だろとツッコミが入る 結局書いてあることは、MSDNを要約しただけに過ぎず、だったらMSDN見たほうがいいわって感じ なぜこの機能が必要なのか?それは実践で使われる場面があるから、だろ だったら、実践レベルの例題でやれよと デリゲートじゃなければダメな場面を想定して書けよと 必要性の説明じゃなくて、文法の説明が目的化しちゃった解説サイトだね
未確認飛行みたいなところの悪口を言う奴の気が知れない って言われちゃうよ?
javaの解説だと良質なサイトが結構あるんだが C#はコピペして使ってください的なのばっかり まず、実用レベルの問題を抱えているコードを見せて デリゲートを使うとこうなりましたのコードを書く そうでないと、読んでいる人は理解したことにならない わざわざ、if文の条件式にデリゲート使うバカがどこにいるんだってことだよ
宇宙仮面が紛れ込んでるな。
入門はオライリーのC#で十分なんでWebサイトとか誰も見ませんよ今時
とにかくMSのドキュメントがクオリティ高いからな。 特にMSの英語サイト。 動画のチュートリアルもたくさんある。 C#やASP.netはいろいろ本を読んだが、 たいていはMSDN、technetの情報に及ばなかった。
一方MSDNの10行でズバリなんかは短いながらも実践的
非同期処理など難しい概念も丁寧に書いてくれている
非同期タスク - タスクを使って非同期プログラミングを簡単に
http://msdn.microsoft.com/ja-jp/magazine/ff959203.aspx ここなんて実用的な例で、非同期するための幾つかの手法で改良しながら
それぞれのメリット・デメリットが書かれているので非常に参考になった
これぐらいのことを書かないとだめなんだよ
未来飛行みたいにクラスの名簿だとかww、車クラスとかww
わけのわからないこと書いているのは大抵糞で参考にならない
700 :
デフォルトの名無しさん :2012/10/07(日) 00:26:09.82
仕事で自社製品の一部を作るのとファンサイトを比べる意味がわからん 試しに君が作ってくれよ
誤 ファンサイト 正 オナニーサイト
頻出するロジックってあるじゃん 繰り返し文やダウンロードや文字列検索とか そういう実践例を挙げながら解説してくれると実力がついてくるのに なんで初心者向けのサイトって、需要がないようなコード書くわけ? Taroクラスとかなんなの?バカにしてるの? 学生名簿?誰が作るんだよバカ
>>702 絵本読んで、大人馬鹿にしてるのかって切れてる馬鹿
大人の絵本って、チョット前に流行ったけどさぁ
教え方が下手なことに文句言うのと 初心者向け内容が上級者に適さないことは 根本的に違うぜ
705 :
デフォルトの名無しさん :2012/10/07(日) 00:57:36.41
俺ライブラリの出来が良すぎて 生産性がむっちゃたかくなってんだけど グレープシティーにうった方がいいかな?
オリエント臭漂う部品は勘弁願います
初心者に対してだからこそ、実用例をあげないとだめでしょ 初心者はこの機能が何に必要なのかが一番知りたいんだから 三角関数の計算をしたくてプログラミングはじめたわけじゃないだろ? 学生名簿を作りたくていプログラミングはじめたわけじゃないだろ? 足し算するだけのデリゲートメソッドとかアホかと 未確認飛行はひと通り読んだがまったく頭に入って来なかったわ
学生名簿はアリだろ dobonに依存するような奴にとっては最も実用的な課題だ
独り言は自宅のメモ帳に。
.NET2.0で (データ型?) 画面.値 とかいうコードを見たのですが これってC#の文法にありましたっけ 三項演算子ではないです
null許容型
この問題はどうしたら解決できるんだろうと 考えさせられるような例題じゃないとだめなんだよ たださらっと読んで終わり 問題解決法を一緒に模索するようなシナリオが必要なんだよ 未確認飛行は幼稚な例題を出しているくせに C++やJavaを例にして解説したりするかな どの層をターゲットにしているんだよと
>>707 まああそこの文章は明らかに馬鹿向けじゃない。
ある程度応用の利く人が要領よくC#の概要を掴めることを意図して書いてるんだろうし、
だから俺は気に入ってるけど、1から10まで手取り足取り教えてくれないと気がすまない
自称初心者のアホには向かないのは間違いない
>>713 あそこで概要掴めるか?
書いてあることなんてほんの一部だぞ
最初からMSDN見たほうがいいでしょ
これを使うとこの問題が発生します・・・
ってことで終わって次の説明になってたりするからな
読んでいる方からしたら、だったらどうすんだよってのがあってイライラする
ロック自体がそれなりにオーバーヘッドのかかる処理なので、 この例の場合、並列化するとかえって遅くなる可能性があります
http://ufcpp.net/study/csharp/lib_parallel.html だったらどうすんだ?って話が全然書いてないし
そもそも、複数のスレッドから利用されるってのが一体どういうことを言っているのかさっぱりわからん
こんな局所的なコードで説明できていると思っているのか?
これ単純に記述の説明だけじゃん
機能説明でも、必要性の説明でもない
まったくサイトのコンセプトにあってない記事ばっかり
716 :
デフォルトの名無しさん :2012/10/07(日) 01:39:50.06
だから君が書いてくれよ。 サンプルは最小限のほうが分かりやすいだろ。 MSDNやその他の書籍と同じこと書いたら意味ないし。 基本が応用できません馬鹿ですと自分で言ってるようなものだぞ あのサイトは明らかに初心者を相手にしてないだろ 日本にはあまりない思想が入った書き方だけど Windowsの日本語化に携わった人よりまともだよ
>>713 概要説明だけなら、えらそうにMSDNを棚に上げて
MSDNとは違った観点で説明しますなんて偉そうにいうなと
補足にもなってないし、必要性の説明なんて全くない
実例がないのに必要性を説明できるわけがないアホかと
>>714 >最初からMSDN見たほうがいいでしょ
ならそうしろよ。
それが出来ないからクダ巻いてるんじゃないのかよ。
適当なこと言うな。
例えばおれなら ■概要 ■機能 ■様々な記述例 ■実践例 まずこの機能を使わなかった場合の問題のあるコードを例に出し この機能を使ってスマートになったコードを出して解説 ■実務レベルで利用される場面をいくつか紹介 ■まとめ だいたいこれぐらいは必要だろ 『C# の文法を知りたいだけなら Microsoft の公式文書だけで十分。 ここではもう一歩踏み込んで「そもそもなぜそういう機能が必要なのか」という部分に焦点を当てた説明をします。』 などと偉そうなことを言っているくせに、実用例でもMSDNに遥かに及ばない
>>699 のサンプルコード見てみろよ
ちょっとしたゲームや業務アプリを作るためのノウハウがつまったコードが見れる
こういう1つのソフトを作りながら解説するようなサイトがあればな
とあるサイトは2ちゃんねるブラウザの製作過程を書いてたけど
コードが糞すぎて参考にする気も起きない
落ち着けよ。 世の中KUSOなもので溢れかえっている。 だがいちいち 如何にKUSOかを 愚痴り続けていたらただの変な人だ。
休日も2chでプログラムの話ばかりしてる お前らも世間から見ると相当変人なわけだけど。
んなこといったら休日に趣味で音楽やってるやつらも変人だな
休日に車乗ってるやつきめえww車オタクかよwwww 休日にギター触ってるやつきめえwwwwww
休日に娘とドライブして動物園の帰りにファミレスで楽しくお食事www 娘オタクかよきめえwww
おい相談箱っていうのを見失ってるぞ
娘の相談をしてもいいですか?
ええんやで 誰も利用しないからな
なんだこのWIkiは 管理人の名前なんて用語集にいれてやがる 本当にこういうのは自分でサイトつくるか、ブログでやれよ 用語集:な行 ノヴァ C# Wikiの初代管理人。 プログラムやゲームなどの活動をするブロガーであり、 同時に学生である。
null は「ぬる」じゃなくて「なる」だろjk
>>733 ぬるぽっていうだろ?NullPointなんたらって
>>733 ドイツ語発音だと「ぬる」英語発音だと「なる」だった
GUIをグイと読むのもおかしい ガイだろふつう
>>734 左上にあるC#の画像は自分で作ったの?
>>740 公式のものを無断で転載しているという理解でいいですか?
最高の玩具だった
>>729 どうでもいいけど、あんたより俺の方がレベル上だから
使わんよ。
>>743 レベルの高い人には確かにいらんかも、だなぁ
おまいら『わんくま同盟』でぐぐれ 痛IDEは捗るぞ
わんくまのアイコン変わってたのか
>>746 MVPは技術よりコミュニティをリードする人を評価するもの
仲間内の紹介でなれるみたいだからたまに酷いのもいる
わんくまのサーバー半年くらい落ちてたけど、まだ続ける気なのか
わんくまは鯖がしょっちゅう落ちるから信用できない
わんくま って名称がそもそも なんであんな名称なんだろw
752 :
デフォルトの名無しさん :2012/10/07(日) 14:52:45.35
C# wiki よかましだろw
わんくまはネーミングもメンバーも微妙な人が多い でも一人だけマトモかなって思える人はいる
2chのスレでコテハンで的確な回答しまくってたらMVPになれるのかな?w
WindowsMobile6.5で外部MYSQLの接続について ODBCで接続したいと思ったが、.NETCompactフレームワークではできないっぽい。 (VBAでMYSQLポート3363を開いて接続はとっくに出来てる。) HTTP通信でリクエストだして、PHPでJSON生成して受信しようと思ったけど、 .NETCompactフレームワークにJSON解析するものがない、、、困った。
マルチポストか…、スルー推奨。
質問があります。 現在、A地点とB地点とでファイルを共有をするにあたり @DropBox を利用 AさくらインターネットにTortoseSVNをインストールして利用 を考えていますが、現実的にはどちらの方が良いでしょうか?
そうなんですよ川崎さん
ジェネリックって型が安全な以外で何かメリットありますか?
キャストしなくて済む
>>761 参照型の場合、余計な型チェック(=キャスト)が減るのでちょっとだけ速くなる
値型の場合、ボックス化がなくなるので超速くなる
767 :
761 :2012/10/08(月) 22:34:13.76
つまり、プログラマから見ればキャストの手間が減る以外には、 メリットはないということですね 普通のプログラマはCollectionのようなクラスを作ることも無いでしょうし ありがとうございます
768 :
デフォルトの名無しさん :2012/10/08(月) 22:42:14.47
アプリケーション構成ファイルの名前は、 App.config 固定なのでしょうか? どうもこの名前が気に入らないので、 別の名前に変更した上でアプリから認識される様にしたいのですが 何か方法はありますでしょうか?
アホなこだわりだな...
hoge.exe.config固定だよ
771 :
デフォルトの名無しさん :2012/10/08(月) 22:44:47.69
>>768 自分でConfigurationManager相当のものを書きなはれ
場所とかが嫌で書いてるひとは結構いる
>>768 テンプレートいじればいいだけだろバカチンが
773 :
デフォルトの名無しさん :2012/10/08(月) 22:54:28.90
>>771 あううう。そこまでやらないとダメなんですね。
てっきり読込先を指定するだけで良いのかと思ってたんですが。。。
うーん、おとなしく使います。
774 :
デフォルトの名無しさん :2012/10/08(月) 23:00:56.31
775 :
デフォルトの名無しさん :2012/10/09(火) 00:31:33.08
アプリケーション構成ファイルに設定情報を 画面上から設定出来る様にしています。 プロジェクトの上で右クリック > Settings Name:hoge_name として、名前を作りました。 そして、Windows画面上で保存ボタンを押した時に 次のコードが流れる様にしたのですが、valueに 設定した値が反映されていません。 どこがおかしいのでしょうか? Properties.Settings.Default["hoge_name"] = "tarou111"; Properties.Settings.Default.Save();
コードが流れるって流れ星じゃないんだから ポエマーかよw
正しくは、コードが萌える、な
流れるようなインターフェース馬鹿にしてんの?
779 :
デフォルトの名無しさん :2012/10/09(火) 01:58:55.12
VS Vim って何気にアップデートされてるんだな。
バグだらけだけどな
781 :
デフォルトの名無しさん :2012/10/09(火) 02:10:28.16
↑ i think that code is better than your made one.
Do You Sucker Fucker!
↑ i wonder why so his english skill is lowest.
>>775 ・本当にSaveは呼び出されているか
・設定した値が反映されないというのはいつ、どこでの話なのか どうやって確認したのか
>>784 ボタンの実行を押したタイミングで
Properties.Settings.Default["hoge_name"] = "tarou111";
Properties.Settings.Default.Save();
が実行され、それをうけて @ or A の中の value に "tarou111" が
反映されているはずだと思い、さくらエディタでのぞいてみましたが
反映されていませんでした。
bin/Debug/Hoge.exe
@ Hoge.exe.config
A Hoge.vshost.exe.Config
そもそも、アプリケーション構成ファイルには
画面上でアプリの設定をした場合にそれを ***.ini ファイルの様にして
使うというのは邪道なんですかね?
Settings.Default.Saveで保存されるのはユーザスコープのもののみだが
韓国の弾道ミサイルの射程制限が現行の300キロ・メートルから800キロ・メートルに緩和されることについて、
日本政府は、「東アジアの緊張が高まることに直結するものではない」と冷静に受け止めている。
防衛省幹部は7日、全域が韓国の弾道ミサイル射程内に収まることになる北朝鮮の強い反発が予想されることに関し、
「結果的に抑止効果が高まり、北朝鮮側は挑発行為を行いづらくなる」と語った。
日本にとっても、西日本地域が韓国の射程内に入ることになるが、自衛隊幹部は7日、「日本の安全保障にマイナスなら、
(射程緩和で合意した)米側が認めることはない。
日米韓の枠組みでの抑止力が高まれば、日本にとってもプラス面はある」と指摘した。
http://headlines.yahoo.co.jp/hl?a=20121008-00000564-yom-int
おィーン
790 :
785 :2012/10/09(火) 22:48:16.89
>>786 どうすれば画面上での設定内容をアプリケーション構成ファイルに反映させる事が出来ますか?
791 :
785 :2012/10/09(火) 22:52:23.35
Settings > Scope を User に変更した上で Properties.Settings.Default["hoge_name"] = "tarou111"; Properties.Settings.Default.Save(); を実行してみましたがそれでもやはりダメでした。
そんな方法じゃ無理 やりたいならOpenExeConfigurationを使う アプリケーション構成ファイルにユーザーデータを保存すること自体 あまり薦められる方法じゃないのでこれ以上は教えない
ユーザスコープのプロパティはsetも作られるからそれ使え ま、どうせ保存される先は%LOCALAPPDATA%の下の深いところになるから 多分お望みの物ではないけどな
794 :
デフォルトの名無しさん :2012/10/09(火) 23:05:21.25
薦めないとは言ったけど必要ならそれはやるべきだ 実利はポリシーに優先する
796 :
デフォルトの名無しさん :2012/10/09(火) 23:32:36.31
>>795 個人的には、手軽にアプリの設定を保存するには
アプリケーション構成ファイルがいいかなぁ〜なんて思ってましたが
どぼん.netにのってるバイナリファイルに保存する方法の方が
ユーザによって手動で書き換えるられるリスクを低減も出来るのでこちらの方が
簡単そうなのでこちらで行くことにしました。
アドバイスをどうもありがとうございました。
797 :
796 :2012/10/09(火) 23:38:07.17
うーん、我ながらすごく満足!! 設定ファイルをバイナリに保存するとか全然想像もしてなかったです。 どぼんさんに感謝! っていうかあの管理人は、あのコンテンツ全て一人で作成してるのかな? 一人であれだけのボリュームを作成したとしたら凄すぎる。 どれだけ時間がかかったんだろうか?
クソワロタwwwwwwwwwwwwwwwwwwwwwww もこが牛乳を飲もうと冷蔵庫を開けると誰かの生首が入ってました。 もこはビックリして思わず冷蔵庫のドアを閉めてしまいました。 きっと今のは何かの見間違いであろうと、思い直し再び冷蔵庫を開けるとなんとそこには誰かの生首が白目を向いていたのです。 もこは思わずドアを閉めましたが、きっと疲れていて見えもしないもの見てしまった のだと思い直し覚悟を決めて改めて冷蔵庫を開けました。 するとそこには何者かの生首が白目を向いてほのかにほくそ笑んでいるのです。 もこはビックリして冷蔵庫のドアを閉めましたが、きっと幻覚を見たに違いない、 最近あまり寝てないから見えもしないものが見えてしまったのだと思い直し、 冷蔵庫を開けました。するとそこのには白目を向いた生首が入ってたのです。 驚いたもこは気がつけば冷蔵庫の扉を閉めていましたが、気のせいだと思い直し 再びドアを開けると、やっぱり白目を向いた生首がほのかに笑っているのです。 思わず扉を閉めてしまいましたがきっと幻覚に違いありません、最近寝てなかったから。 と、思い直し冷蔵庫を開けると、やっぱり誰かの生首が入ってるのです。 思わず冷蔵庫を閉めたもこでしたがこれは何かの間違いに違いない。 疲れているから見えもしない者が見えたのだと思い直し冷蔵庫を開けると そこにはなんと白目を向いた生首が・・・、うわっと思い冷蔵庫を閉めましたが きっと疲れのせいで幻覚を見たに違いない、と自分に言い聞かせ再び冷蔵庫を開けると なんと誰かの生首が白目を向きながら笑っているのです。思わず冷蔵庫の扉を閉めましたが きっと気のせいで、何かと見間違えをしたのだと自分に言い聞かせ、扉を開け直すと なんとそこには何者かの生首が白目を向いて笑っていたのです。
SettingsSerializeAs.Binaryってのがあって
800 :
デフォルトの名無しさん :2012/10/09(火) 23:42:59.48
C#は10年くらいの歴史あったはずなので10年くらいの間に 実際のところは2.0のころまでにあらかた機能を出し切ったので それくらいまでの間かな
今日高校の同窓会行ってきたんだが、俺が当時からいけ好かないと思ってたクラスメートの男が 普段は同窓会なんか来ねーくせに今日に限って来てやがった。話しかけられるのも真っ平だった から極力離れた所に座って昔つるんでた連中とチビチビ呑んでたら、いけすかねー野郎が座った 辺りの席から「おーっ!」とか「マジで?」とか声が上がる。興味なかったけど声でかくて嫌でも耳に 入ってくるんで聞いてたら、どうやらいけすかねー野郎の娘が芸能関係の仕事してるって話だった。 すっかりオバサン化したクラスの女どもが「えー、名前はー?」とか「どんな仕事してるのー?」とか まるでワイドショーみたいに聞いてたが、名前を聞くとその場に居た同窓生の誰一人として知ってる 奴は居なかった。・・・俺一人を除いて。 さすがにロリコン向けグラビア&DVDが主戦場の小学生アイドルを知ってるとは言えなくて、俺も その場は知らないフリしたが、俺はテメーの娘のDVDで5回は確実にヌいてるぞドチクショウ 俺、もうロリ卒業するわ。さすがに無理だ
BinaryFormatterなんて時代遅れなのやめとけよ
バージョンアップで問題出たりしやすいし
バイナリなら
>>799 もあるしXmlSerializerやDataContractSerializerでバイナリXMLも使えるぞ
コピペ君って馬鹿だな、まで読んだ。
中学時代のパソコンの授業でインターネットを使った時 みんなが自分の好きな漫画や野球のページを見てる時に 自分だけこれみよがしに2chにつないでAAとかを周りに見せてたこと しかも「このページって何?」って聞かれた時に「ヤバイ奴らの集会所みたいなもん」とか答えたこと さらに友達に2chへの行きかたを教えるためにヤフーで2chって検索させて でてきたリンクをクリックして2chのトップページが表示された瞬間に そいつの耳元で「Welcome to Underground」ってささやいたこと
805 :
デフォルトの名無しさん :2012/10/09(火) 23:50:02.55
コピペしてるやつは度本が嫌いなのか?
というか、そもそもなんで普通にアプリケーション設定じゃダメなのかよく分からんね。 Program Files以下のディレクトリにはインストールしない前提で、 設定ファイルを実行ファイルと同じディレクトリに置いて、全ユーザーで 設定値を共有したい、みたいなちょっと時代錯誤な仕様にしたいのかな?
設定ファイルはSettings.settingで大抵の事が出来る が、なぜか忌避する奴が山ほどいる
変な場所に作られるからだろ AppData\Local下にフォルダ作って自分で管理するのが一番 exeもその中に入れてしまえ
Chromeが確かそんなふざけた仕様だったような
逆の方向性から手順を書くと、(はじめは最初です。つまり普通方向) 買いたてのバーガーを(袋のまま)買うだろ?で、開けるだろ? 大抵、横方向に対して普通方向に入ってるだろ?(違うこともある) 出す。 ゆっくりバーガー自体がまわりながらで持つ。 ここで、目的は、(バーガーをきれいに食べることだ。まとめると、 ソースを残さないこと・こぼさないこと・などなど よしじゃあ目的は、汚くならないために、 食べ終わる前から食べ終わる後にかけて、ぴったりと袋が(袋じゃないが) (何て言うのか分からん)が、その位置のままで、最後まで、バーガー次第で、 確実になるようにすることが目的だとわかった。 じゃあどうするか?考えると、ここは一つアイデアなんだが、(ポイント) 最後のポジションになるように、()縦方向からずっと下にかけて、 (後から回すわけだけど、)くるっとなってるかなにかで、もちろん実際は 何でもいいが、実際は手段が限られてくる。その中で、下のほうを最終形態に なるようがよくわかるわけだ・・・ とすると、その回し方は手前方向か、(上の方のレスで出てきたように) 回す→折るしかないわけだが、もちろんここで後者は(前者も)使えないので、 手前に回すことになる。奥じゃなくて、手前だ。
コピペマン参上!まで読んだ。
バージョン変えるとダメなのがなー
リモーティング系は純粋に通信用だからな データの保存とかに使うと死が待っている
DOBONは助かってる 正直C#という言語には興味ないので、やりたいことが実現できるTipsの方がありがたい
BinaryFormatter最強!!!!!!!!!でFA? それをREG_BINARYでレジストリに書きまくる、と
ふらっとレベルのどうでもいい話だな
無能ほどDobonに頼る
818 :
デフォルトの名無しさん :2012/10/10(水) 07:01:06.05
日本のIT土方の仕事なんざドボンのコピペでほとんど事足りるんだよ! .NETの思想なんかさらさら理解する気ありませんし十分稼げてます! って人はたくさん見た
酔って帰宅した姉ちゃんの寝言 「ランドルト環ってゆーんだってー」 と、嬉しそうに言われても何のことか解らず悩んだが、 ちょっと考えたら思い出した 視力検査で使ってた”C”マークの名前だ うちは両親が連れ子の再婚同士。 人見知りするガキだった俺は、 新しくできた姉ちゃんと早く仲良くなりたくて、 学校での出来事やテレビ番組の話題など、 何かときっかけを探しては頑張って話しかけてた。 それは学校で身体測定があった日の、たしか夕食時だ。 視力検査の話題になって、例のマークの名前について、 そういえばなんていうんだっけ?…と二人で首を傾げた。 その名前は親父やお袋に聞いても解らなくって、 そしたら「じゃあ学校の図書室で調べてくる」って、 姉ちゃん何かすごく楽しそうに笑ったっけ 後で聞いたら、姉ちゃんの方も 早く仲良くなるきっかけが欲しかったらしい いい加減忘れれば良いのに、 昔の夢でも見たのかそんな寝言を言うもんだから、 俺は懐かしくてつい笑ってしまった そんな姉ちゃん、今ではメガネの図書館司書 同じ職場の同僚さんの話では、 小さな子供とライトノベル好きの女子中学生に なにやら妙に人気があるらしい
Dobonをディスってる人は何見てるんだい
昔、酔拳に憧れてたんだが、当時俺はまだ小学生。 未成年だから酔拳は使えないなと踏んだわけだよ。 それなら諦めればいいものの、喧嘩ばかりか頭も弱かった俺は 自己流の拳法を編み出してやろうと考えちゃったわけだ。 で、思案の結果(つっても三日間くらいだけど)編み出されたのが 「高揚拳」つってね、別名が“ハイテンション拳”って言うのよ。 その酔拳を見た後に刺激して作られた拳法だから、 「○○すればするほど強くなる」みたいな要素が欲しかったんだよ。 それで俺は「気分が高揚すればするほど強くなる」って寸法で、 だから「高揚拳」と名付けたわけだ。 「人間テンション高ければ何でも出来る」 これが高揚拳の極意であり、真意だ。 スカート捲り然りピンポンダッシュ然り、テンションさえ高ければ その場のノリでやっちゃうだろ?勢い任せで。 普段は理性のブレーキが掛かっているが、 テンションの高揚でその理性のブレーキを取っ払って 普段の自分には無い力をフルパワーで出そうってやつだよ。 掛け声は、テンションの高さに応じてパワーアップしてく。 「イヤァァァッホォォオオウ!!」自分の部屋で。 「キエェェェェッフゥ!!」自宅で。 「キリャアアアアアァァ!!」校庭で。 「イヤァァァァアッヒュゥゥゥ!!」教室で。 テンションが高くなればなるほど普段出来ないことをやらかせる。 この高揚拳のおかげで、普段殺せないゴキブリが殺せました。 みんなもレッツトライ。みんなも友達いなくなれ。
823 :
デフォルトの名無しさん :2012/10/10(水) 12:51:03.29
C# wiki の作成者があらしとるな。 度本を僻むな。
どぼんの技術は2002年で止まってる
825 :
デフォルトの名無しさん :2012/10/10(水) 13:50:23.28
C# wiki の管理人さん嫉妬するな;
鳩 「豆くれるの?」「くれるの?」「豆?」「なに集まってんの?」「何くれるの?」「僕ももらえるの?」「何してるの?」「押すなよ ー」「どうかしたの?」 参拝客「あぁ、豆あげるよ」 鳩 「本当!?」「大丈夫なの!?」「BB弾じゃない!?」「何してるの?」「豆らしいよ」「ほしいな」「ほしいね」「本当に豆?」「 何くれるの?」「豆ってほんと?」 参拝客「あぁ、豆だから大丈夫だよ」 鳩 「そうかぁ!」「僕たち鳩だから!」「鳩だからポポッポーだから!」「ポポッポーだよね」「鳥だもんね」「わからないよね」「 豆ほしいよね」「何してるの?」「豆らしいよ」「僕ももらえるの?」 参拝客「そうだね。わからないね」 鳩 「うん!」「でも豆なんだ!」「そうなんだぁ!」「じゃぁ集まっていいんだよね!」「やっぱ豆だよね!」「豆だったの?」「豆ら しいよ」「何集まってるの?」「せまいよ」「豆なの?」「くれるの?」「どうしたの?」 参拝客「そうだよ。集まっていいんだよ」 鳩 「よかったぁ!」「じゃぁ集まろうね!」「足元に集まるよ!」「豆もらえるね!」「よかったね!」「豆なんだね」「僕はばたいち ゃうよ!」「僕真っ白だもんね!」「今きたよー」「なにがあるの?」「豆らしいよ」「豆ならいいな」 参拝客「うん、集まろうね」 鳩 「あぁ!豆くれるから足元に集まるね!」「集まるよ!」「僕ももらうよ!」「豆もらえるね!」「よかったね!」「僕ももらえる んだね!」「何をもらえるの?」「豆らしいよ」「僕もきたよ」「なにしてるの?」「豆かもしれないね」「なにかくれるの?」「豆なの?」 (子供が叫びながら走ってくる) 鳩 「子供だー!!」「うわー!!」「たすけてー!!」「逃げてー!!」「大変だー!!」「豆はどうなるのー!?」「なんなんだ ー!?」 「豆はー!?」「怖いよー!」「とりあえず逃げろー!」「僕も飛ばなきゃー!」「何だったのー!?」「わからーん!」「きた ばかりなのにー!」「とりあえず飛ぶよー!」
827 :
デフォルトの名無しさん :2012/10/10(水) 16:29:50.91
一つのexeを実行させると複数のexeが同時に実行されるというのは どうやればいいですか?
意味が分からん 取りあえずProcess.Startでプロセス起動はできるが
829 :
デフォルトの名無しさん :2012/10/10(水) 16:34:06.69
A,B,C,Dのexeがあったときに Aのexeを実行するとB,C,Dのexeが同時に実行方法 もしくは B,C,Dのexeを同時に実行させる方法 教えろ下さい
830 :
デフォルトの名無しさん :2012/10/10(水) 16:39:35.62
AからBCDをキックすればいいだけじゃないか。 あとは、バッチつくれや
831 :
デフォルトの名無しさん :2012/10/10(水) 16:40:31.09
ガキの頃 近所の縁日でカタヌキの達人なるおっさんに出会いました 酒焼けした布袋さまみたいな顔の五十くらいのおやじでしたが いやーすごかったす おっさんの技 カタ菓子砕け散るんじゃねーかと思うよな勢いでガッスガスガスガス 突きまくってたちまちカタ抜き成功!銭ゲトー!うおお! 伝授してもらったコツによるとカタ菓子は強く速く正確に突かないと 粉地の中の堅い粒がグラグラうごいて勝手に割れはじめるのだ とか 俺もおっさんのマネをしてつついてみたがまるでカタを抜けなかった そして20年後 ツアーで入った新横浜ラーメン博物館 なつかしの再現屋台の隅にカタ抜き屋をみつけ 冗談でオヤジの技で ガスガスとカタを刺していたら ストンと抜けてしまった 周りでみてた連れや子供たちの大歓声 「達人かよ!」とよばれ ただただ照れ笑い ああ、おっさん・・あんたの継承者にされちゃったyo!! ちなみに賞金ではなく駄菓子の詰め合わせを贈呈された・・
834 :
デフォルトの名無しさん :2012/10/10(水) 17:01:36.10
AからBCDをキックするとして Aのexe実行時に取得したコマンドライン引数を BCDで取得するにはどうすればいいですか?
ずっと昔見た新聞のコラムで、 かわいそうで本当に泣いてしまった話があった。 思い出して鬱なのでおすそわけする。 目の不自由なお祖父さん、お祖母さんと、 生活保護をもらいながら住んでいる女子中学生がいて、 二人の面倒を全部見てたんだが、生活保護のお金を引ったくりされた。 これが地方ニュースになって、カンパが集まったんだけど、 役所は、そのカンパが臨時収入だからと言って、生活保護を打ち切った。 カンパの何十万円かなんてすぐなくなって、 その子は役所に相談に来たんだけど、 役所は臨時収入があったから再開できないと伝えた。 何度か役所に姿を見せたのは確かだが、その度に追い返したようだ。 生活保護を再開してもらえなかったことは、祖父母に言えなかった。 心配をけたくなかったのか、どんな心境かは今となってはわからない。 目の見えない祖父母にはちゃんとオカズを作って食べさせながら、 その子はずっと、自分は塩とご飯だけ食べていたらしい。 ある時、祖父母がそれに気が付いて、 どうして自分だけそんな食事をしてるのか問いただした。 その子は笑ってごまかしたが、その夜、首を吊った。
836 :
デフォルトの名無しさん :2012/10/10(水) 17:08:55.73
>>831 だからバッチつくればいいだけだろ!かす!
死ねよ質問者
839 :
デフォルトの名無しさん :2012/10/10(水) 17:21:35.21
度本が大嫌いなC# うぃきつくったやつ
猫ちゃんをチンしました! いままで度胸がなくってできなかったんだけど遂に!遂にやりました! 想像以上の効きめです! 失禁脱糞対策にあらかじめ中のみえるビニール袋に閉じこめて500Wでまずは30秒にTRY! 仔猫とはいえコンビニ弁当より重いんだし余裕かなと思ったんだけど・・・ たった12秒で袋を蹴破りでてきました。目が逝っちゃってたのでとりあえず出してあげました。 犬みたいにハアハア出し入れしている舌は真っ赤です。顔を近づけてみたら吐く息が すっごく熱くてビックリ!耳もすっごく熱くなってて真っ赤でした。やっぱ肉の薄い部分だからかな。 案の定、中で失禁しちゃってました。失禁は日課なのですっかり慣れて手袋もせず処理しました。 いつもなら罰として更に厳しい愛の鞭を与えるんだけど、今日は頑張ったのでご褒美に 乾燥エサを10粒もあげました。3日間なにも与えてなかったので腹が減っていたのか ガツガツ喰ってました。まだ手や足の末端の肉の薄い部分は熱くなってます。 だいぶ回復してきたので手足耳をカーテンに糸で縫いつけて大の字型に宙づりにしてます。 また失禁しやがりました。むかついたのでエアガンを乱射してます。 ヘ(^^ヘ)(ノ^^)ノ
841 :
デフォルトの名無しさん :2012/10/10(水) 17:27:33.51
>>840 アウトだな。
警察に通報した。アウトな書き込みだな。
馬鹿じゃねーの?
いきなり氏ねって、どういう事ですか?君には社会の常識がないのですか? 普通は、『あのう、すいませんけれども氏んでくれませんか?』とか 『あなたには、氏ぬという選択肢もありますよ』とか言うものですよ、 あなたみたいに最初から喧嘩腰だと、 言われた方『じゃぁ氏んでみようかな』とかいう気持ちがなくなるものです。 まずは、親切丁寧に人に氏んでと頼むべきだと思いますよ。 そこから、人の輪と協調が生まれ、『よーし氏んでみるか』という気持ちが生まれるわけです
どうせuyの仕業だろ 一度警察に捕まればいいんだよこいつは
通報しました
uyざまあwwwwwwwwww
逮捕記念パピコ
コピペに通報とかww
俺も通報してきた
852 :
デフォルトの名無しさん :2012/10/10(水) 18:05:35.84
>>840 動物虐待はアウト。
俺も、これからガチで通報するわ。
通報が完了したらまたかくね。
電話で通報するのめんどくせ メールで受け取ってくれる窓口ないの?
856 :
852 だが :2012/10/10(水) 18:15:57.99
>>840 をガチで 110番通報しておいた。
事件ですか?事故ですか?
の後にこのスレッドのURLレス番号も全てガチで伝えたwww
>>840 はアウトだなwww刑務所の飯は不味いぞwww
857 :
デフォルトの名無しさん :2012/10/10(水) 18:16:48.51
まさか、ム板で逮捕者が出るのは初じゃないかw?
動物愛護団体にも通報した方がいいね そのほうが効果的だと思う
でもこういうレス群って、通報しましたって言ってるだけで殆どはその自分のレスを見てニヤニヤしてるだけなんです
アグネスにも通報した
ムツゴロウ王国の名誉国王にも通報しといた
864 :
デフォルトの名無しさん :2012/10/10(水) 18:56:31.02
>>860 多分そーいう奴もいると思うから
俺はガチで110番に通報しといたから安心してね。
>>860 強がってる暇があったら早く警察に行ったほうがいいよ
謝罪すれば逮捕されないケースもあるらしいから
逮捕状で手からじゃ遅いよ
何かいつもと違う方向に荒れてるな
867 :
デフォルトの名無しさん :2012/10/10(水) 19:09:41.44
俺以外でも2・3名はガチで通報した奴がいる悪寒
俺はVIPで通報者募集してるよ
>>865 ま、まてててて折れじゃない
俺じゃまいからね??
お前らスレ荒らすな
長文コピペしてたくせにすっかり大人しくなったなw びびってるのかねwwwwwwww
872 :
デフォルトの名無しさん :2012/10/10(水) 19:21:09.89
>>871 マジレスするとビビッてももう遅いわけだが。
少なくとも俺はガチで110番通報したし、
警察より捜査するとこの耳で聞いた。
スレを荒らすのが目的なんじゃない?
>>872 警察も最近誤認逮捕があるから
警察の威信をかけて本格的に捜査すると思われる。
取り敢えず ニュースに名前 が載るだろうから親に謝っておいた方がいいよ。
876 :
デフォルトの名無しさん :2012/10/10(水) 19:49:32.75
コピペだからといって免罪符にはなりませんw
uyは日頃の行いが悪いからこれだけ通報されるんだぜ 覚えとけ スレ立て荒らししやがって 俺もインターネット・ホットラインセンターに通報しといたから
QZも通報しろよ不公平だろ
uyのしわざかQZのしわざかわからないからURLで通報してるんだけど?
880 :
デフォルトの名無しさん :2012/10/10(水) 20:20:11.27
>>877 110番通報の方が効果的。
メール窓口はアルバイトがやってるから時間差がある。
至急逮捕に持ち込むには、110番で警察にこのスレを教える事が有効だ。
Visual Studio2012スレもネトウヨに荒らされている ID出ないし荒らされ放題になってるよな 忍法帳とかつかうとアク禁にできるの??
ネトウヨ
>>880 110番は何か怖いな
VIPに協力してもらう事くらいしか考えられない
ネトウヨ
らんらるー
あうー
るるー
煽動罪ってあるからな もしVIPを動員して110番通報してもらえば100人単位で乗ってくると思うけど それをさせたら俺が危ないんで出来ない
にゃーっ!!
わん!
あくまでも本人の意志に基づく通報が基本だな
892 :
デフォルトの名無しさん :2012/10/10(水) 20:47:21.36
あいつおとなしくなったな。 自宅に警察が訪れたかなw? だから俺の通報はガチだっていったろwww
これ通報通報言ってるの荒らし本人の自演だろ
895 :
デフォルトの名無しさん :2012/10/10(水) 20:50:49.65
ム板が確かにあれてとるwww 通報されて逮捕される前に 2ch荒らして逮捕を免れようと思ってるのかwww? 警察はお前を逃がさないよw 日本の警察を舐めるなよwww
世の中舐めてっとそのうち痛い目に遭うって事を分からせるしかないからな
897 :
デフォルトの名無しさん :2012/10/10(水) 20:56:04.22
流石に警察も夜中に訪問はしないかな? 明日の昼にでも行くだろ。
普通朝一だよ
uyよかったな タダ飯食えるぜ 臭い飯だけどな
900 :
デフォルトの名無しさん :2012/10/10(水) 21:00:10.10
そーなのか。しらなんだ。
>>840 残念だけどお前は、みなが言う様にもう終わりだね。
警察に逮捕 > ニュースで実名公開 > 2chミラーサイトに
>>840 の名前がずらーり > 親戚一同悶絶 ・・・
自業自得だな。
901 :
デフォルトの名無しさん :2012/10/10(水) 21:01:14.09
>>900 警察も逮捕した という実績が欲しいから
>>840 は一発でお陀仏だな。
動物にそんな事をしておきながら、実名報道と刑務所暮らしで済むだろうからお前は未だ幸せだよ。
TabControlのページすべてのプロパティを 一括で設定する方法はありますでしょうか。 forを使った構文しか自分では見つけられなかったので、 ご教授お願いします。
ありませんよ
>>904 そうですか。。。あきらめてforで実装しておきます
こんなスレ立て荒らしを続けると余罪として威力業務妨害も追求されるんじゃねーの 全部調べられるぞ 刑事裁判は甘くねーぞ
埋め立て荒らしすると今度は「証拠隠滅罪」に問われるぜ そんなに長く刑務所暮らししたいのか? まあ過去ログになっても●持ってれば見れるけどな 運営に言って証拠保全してもらっとくか
911 :
デフォルトの名無しさん :2012/10/10(水) 22:26:04.47
あんな投稿をした
>>840 が悪いわけだが。
荒らしたってお前の使用中の回線から
動物虐待投稿してんだから
逮捕はまぬがれねーよ。
2ch荒らしたって、荒らさなかったってお前の人生は お・わ・り
とりあえずもう次スレ立てたほうがいいんじゃない? 無駄にこのスレを消費してdat落ちさせたくないし
>>922 を
あらし報告してアクセス禁止に追い込もう
IDない板の場合どうしようもならんの?
>>923 警察にこのスレを通報したから緊急証拠保全してくれと規制議論板で書きこめばいい
このスレ書き込み禁止にしてくれる
コピペで逮捕されたよな? あの糞コテasdfこと稲葉 コピペ元の投稿はネカフェだから 真犯人は特定できてないと聞いた
930 :
デフォルトの名無しさん :2012/10/10(水) 23:29:53.93
>>929 コピペで逮捕された事象をしって
>>840 のキチガイが逮捕を免れようと2chを荒らしてる。
>>933 報告おつ
空白あらしまでやったからあらしてるやつはアクセス禁止までは
確定事項になっただろうな
dat落ちしても運営は一定期間は保全してるからな
935 :
デフォルトの名無しさん :2012/10/10(水) 23:42:42.51
>>840 猫虐待したバカ埋めても逮捕は免れんぞwww
580 名前:Xylocopa ◆2m./Sr.poc [sage] 投稿日:2012/10/10(水) 23:33:46.90 ID:Tkkwyfpo0 [5/6]
dat落ちしても証拠として消えるわけではないので
110番通報したなら逮捕されることを祈るばかりですはい。
あとは単純に空白レスの埋立なら
936 :
デフォルトの名無しさん :2012/10/10(水) 23:45:39.97
一応いっとくが俺はガチで
>>840 の投稿を警察に通報した。まじな話。
俺は動物が好きだからね。虐待なんてしてるバカは許さん。
937 :
デフォルトの名無しさん :2012/10/10(水) 23:50:38.25
警察は忘れたころにやってくるぜ。
>>840 お前は逮捕を免れる事はできない。
日本の警察は、北朝鮮とは違うんだぞ。
>>840 タイーーーーーーーーホ
まるで意に介さず埋められていくスレの前になす術ないのであった
943 :
デフォルトの名無しさん :2012/10/11(木) 00:10:37.13
マ板に来ておいて消えたらIP潰せますって?あなた本当に業界の人?
IPアドレスを記録してあるから 動物虐待をなかったことにするために荒そうとしても無駄
名実ともに2代目APIスレにふさわしい
952 :
デフォルトの名無しさん :2012/10/11(木) 00:21:11.25
あほだなw 埋めてもIPが消えるわけじゃねーのにw 警察が逮捕する日までまとうじゃないか。
あ
にんにく
じゃがいも
れたす
にんじん
なにかと思ったら、虐待証拠の隠蔽したかったのか。自分で紹介してどうする。 ま、流したところでツボ持ちは過去ログみれるんだけどな。 ガチに通報する。
荒らしは生協ネットか
どっかで見れるの?
あらら 猫虐待した馬鹿は逮捕・・・
動物愛護法違反
生協ネットにも不法行為(動物虐待)と迷惑行為(連続書き込み)で連絡してきた。
974 :
デフォルトの名無しさん :2012/10/11(木) 02:03:23.66
動物にかね使うなら人間に使ってくれ 餓死する若者がいるのに一方でセレブ犬が食っちゃねしてるとか狂ってるだろこの国 どんだけ格差社会なんだよ
SilverLight と ExpressEncoder と連携させようと考えています。 (1) ExpressEncoder の DLL の参照追加で、ExpressEncoder のライブラリを 使うことは可能でしょうか? (2) ExpressEncoder のライブラリに、画像変換のライブラリはあるでしょうか? 例:BMP -> PNG など
>>975 1.できるかも知れませんがやめてください。
SilverlightでEncoder制御という発送が
デンジャラスです
2.ねーよ。たぶんだけど
会社も首で警察に逮捕される馬鹿発見
正直
>>840 程度の書き込みで
警察が仕事するとも思えないけど。
警察に夢見すぎ。
というか「タイーホ」と騒ぐ奴の方が
荒らしに見える。
C#と関係ない祭りは他でやってくれ。
>>978 警察は通報を受けたら「必ず捜査しなければならない」決まりになっている
逮捕があるかどうかは知らないが少なくとも
>>840 を書いた奴の家には行くよ
どっかの馬鹿大学生が生協インターネット使って荒らしてる。
ソース
>>969 生協インターネットから締め出されるのは確実に痛い。
つまり警察にメール送るより、迷惑行為の線で
>>968 に通報する方が効くんじゃね?
コピペ荒らし、動物虐待文、空白レスの連投 これだけ揃ったら十分迷惑行為で行けるだろ。
>コピペ荒らし、動物虐待文、空白レスの連投 2ちゃんの日常じゃねーか。 余罪が無い限りこの程度で 警察が家まで行くとは思えない。 「はいはい受け付けました今多いですよね」程度。
警察が動かなくてもプロバイダから警告や追い出し食らうのもよくある話
>>840 以降の逮捕と叫んでるのは
2人ぐらいの自演だろ。
頭悪そうなあおり文句だし、おまえ等が迷惑。
じゃあ俺も不法行為してやるよ。
ひとをころしました。
↑ほら通報してみろ
覆水盆に返らず
とりあえず、パソコン押収されるだろうし もしP2Pやっていたら、アウトw
>>985 生協インターネットw
お父ちゃんのところにも連絡行くぞ?
てすてす
>>989 乙
次スレはC#のスレに戻りますように
正直これくらいで警察が動いてくれたらいのしおりは死なずにすんだ
プログラム板を荒らすからこれだけ人に恨みを買うんだぞuy
そういうお前がスレを荒らしてるんだろ
梅
梅
梅
梅
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。