C#, C♯, C#相談室 Part79

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
2デフォルトの名無しさん:2013/03/19(火) 03:52:24.78
ふらっとVisual C#,C♯,C#(初心者用) Part103
http://toro.2ch.net/test/read.cgi/tech/1362540503/

WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part15
http://toro.2ch.net/test/read.cgi/tech/1359863558/

【VB.NET】LINQ友の会【C#, C♯, C#】
http://toro.2ch.net/test/read.cgi/tech/1202568694/

C#,C#の宿題片付けます。
http://toro.2ch.net/test/read.cgi/tech/1197620454/

ASP.NET + Atlas or Ajax について
http://hibari.2ch.net/test/read.cgi/tech/1150036430/

Microsoft Silverlight その9
http://toro.2ch.net/test/read.cgi/tech/1321150267/

Visual Studio 2010 Part20
http://toro.2ch.net/test/read.cgi/tech/1354608228/

Visual Studio 2012 Part6
http://toro.2ch.net/test/read.cgi/tech/1362471619/

こんなC#, C♯, C#ライブラリ無いですか?
http://toro.2ch.net/test/read.cgi/tech/1342672311/
3デフォルトの名無しさん:2013/03/19(火) 03:53:08.38
参考リンク

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

@IT Insider.NET
http://www.atmarkit.co.jp/fdotnet/
Insider.NET 会議室 ディレクトリ
http://www.atmarkit.co.jp/fdotnet/index/bbs/
MSDN フォーラム
http://social.msdn.microsoft.com/Forums/ja-JP/categories/

pinvoke.net: the interop wiki!
http://pinvoke.net/
宇宙仮面の C# プログラミング / C# Programming
http://uchukamen.com/
WisdomSoft C#入門
http://wisdom.sakura.ne.jp/programming/cs/
WisdomSoft Microsoft .NET入門
http://wisdom.sakura.ne.jp/system/msnet/
どっとねっとふぁん
http://dotnetfan.org/
緑のバイク 初めてのC# 〜 覚え書き 〜
http://homepage3.nifty.com/midori_no_bike/CS/
どぼん!の .NET Tips (話題にすると荒れます)
http://dobon.net/vb/dotnet/
4デフォルトの名無しさん:2013/03/19(火) 03:53:41.68
質問する前に"必ず"WikiやFAQ集を参照し、同じような質問がないか確認してください。

初歩的な質問はPC初心者板で・・・
http://pc11.2ch.net/pcqa/
参考リンク(よく出てくる情報リンク)
Windows Vista Wiki
http://windowsvista.ms/index.php
Windows VistaFAQ
http://vistafaq.stdo.net/index.html
〜インストールから設定・活用まで〜 すべてが分かるWindows Vista大百科
http://journal.mycom.co.jp/special/2007/windowsvista/menu.html
Windows 7 Wiki
http://www15.atwiki.jp/win7/
Windows 8 Wiki
http://www18.atwiki.jp/win8/
Windows8 移行まとめwiki
http://windows8.wiki.fc2.com/

コードの量が多い場合は下記サイトを使うなどしたほうがいいかも。
コードを貼り付けてRun codeのチェックを外し、submitボタンを押すと専用のアドレスが発行されます。

http://ideone.com/
http://pastebin.com/

直接貼る場合はhtmlエンコードした方がインデントも残って見やすいです。

http://kawama.jp/php/encode_html.php
5デフォルトの名無しさん:2013/03/19(火) 03:54:27.69
くっそ意外と面倒くさかった。
>>3>>4はリンク先見てない
6デフォルトの名無しさん:2013/03/19(火) 07:23:21.98
まあ乙
7デフォルトの名無しさん:2013/03/19(火) 15:55:05.68
今さっき、
String.Split(params char[] separator);
に"params"がついていることを知ったorz
ずっと new[]{'='} みたいにいちいち配列にして渡してたよ orz orz orz
8デフォルトの名無しさん:2013/03/19(火) 15:57:58.75
>>7
>String.Split

ムダに長いステートメントだなw
9デフォルトの名無しさん:2013/03/19(火) 16:36:56.58
へ?
10デフォルトの名無しさん:2013/03/19(火) 17:35:31.68
起動中にタスクバーで自身のアプリのアイコンを右クリックすると出てくるメニューに
新たな項目を追加するのはどうすればいいんですか?
例えばChromeでいうと「新しいウインドウ(N)」や「シークレットウインドウを開く(I)」です
11デフォルトの名無しさん:2013/03/19(火) 17:38:33.46
上2行の言わんとする事がわからん
Form1 f = new Form1();
f.Show();
じゃないのか
12デフォルトの名無しさん:2013/03/19(火) 17:40:19.84
馬鹿かと思ったw
13デフォルトの名無しさん:2013/03/19(火) 18:02:29.23
>>10
Chromeで言われても分からんが、最大化とか移動とかがあるメニューでいいのか?
WinFormのライブラリではサポートされてないからWin32API使う必要がある
GetSystemMenuでメニューのハンドル取ってきてInsertMenuItemする
ちなみにウィンドウの左上のアイコン部分をクリックすると出るメニューと共有される
14デフォルトの名無しさん:2013/03/19(火) 18:56:27.13
>>13 ありがとう
15デフォルトの名無しさん:2013/03/19(火) 21:49:29.92
ゴミいらねw
16デフォルトの名無しさん:2013/03/19(火) 22:15:04.34
2chの情報をありがたがってるようでは無能の域を抜け出せないよ
17デフォルトの名無しさん:2013/03/19(火) 22:19:49.13
などと無能のしたり顔でお送りいたしました
18デフォルトの名無しさん:2013/03/19(火) 22:29:03.23
煽ることはできても反論はできないんだw
19デフォルトの名無しさん:2013/03/19(火) 22:36:09.67
以上が単芝の生涯である
20デフォルトの名無しさん:2013/03/19(火) 22:38:37.64
馬鹿のやること
煽り、罵倒、レッテル貼り
21デフォルトの名無しさん:2013/03/19(火) 22:39:29.72
Twitterに投稿してろ
22デフォルトの名無しさん:2013/03/19(火) 22:40:55.67
チキンにはそれが出来ない
23デフォルトの名無しさん:2013/03/19(火) 22:44:11.71
僕はそう考えていた、だが・・・
24デフォルトの名無しさん:2013/03/19(火) 22:46:33.20
CやC++から見たらC#なんて赤ちゃん言語だよねw
25デフォルトの名無しさん:2013/03/19(火) 22:50:55.73
以上が単芝の性生活である
26デフォルトの名無しさん:2013/03/19(火) 22:55:36.41
プログラムが大規模になったらからプログラマが扱いやすいように簡単な言語が生まれたんじゃなくて
プログラマ人口が増えるにつれ馬鹿が増えたからってことだから
27デフォルトの名無しさん:2013/03/19(火) 22:58:11.97
この書き込みは追い出し部屋からお送りしております
28デフォルトの名無しさん:2013/03/19(火) 23:25:48.21
以上ドカタのストレス発散でした
29デフォルトの名無しさん:2013/03/20(水) 03:59:10.91
>>13
ありがとうございます
その方法を試してみたところ、ウインドウ左上のメニューには追加されましたが、タスクバーの方のメニューには何も追加されていませんでした
それと、またChromeの例で恐縮ですが、Chromeではウインドウ左上とタスクバーのメニューでは別々の項目が入っており、どうも共有されていないように思います
30デフォルトの名無しさん:2013/03/20(水) 04:59:33.51
ならChromeと同じ言語でやれば?
31デフォルトの名無しさん:2013/03/20(水) 05:04:27.17
>>13
すみません、どうやら自分がタスクバーで見ていたのはいわゆるメニューではなくジャンプリストというWindows7からの新機能のようです
C#からはWindows API Code Packというライブラリを使って追加することができました
32デフォルトの名無しさん:2013/03/20(水) 05:04:31.49
同じ言語で同じコード書けば同じになるんじゃね
33デフォルトの名無しさん:2013/03/20(水) 05:13:46.89
Windows API Code Packなんてゴミそのまま使う奴なんているのかよ
バグだらけで放置されてるのに
あんなのソースを参考にする程度の代物だろ
34デフォルトの名無しさん:2013/03/20(水) 05:35:56.81
  .ni 7      /ノ   ヽ\   壁に向かってしゃべってろゴミ
l^l | | l ,/)   / /゚ヽ  /゚ヾ\      .n
', U ! レ' / /   ⌒   ⌒  \   l^l.| | /)
/    〈 |  (____人__)  |   | U レ'//)
     ヽ\    |lr┬-l|   /  ノ    /
 /´ ̄ ̄ノ    ゙=ニ二"   \rニ     |
35デフォルトの名無しさん:2013/03/20(水) 06:40:11.81
そんなに悔しかったのか
36デフォルトの名無しさん:2013/03/20(水) 07:44:28.43
>>10の質問でジャンプリストが最初に頭に浮かばないのは低能で即刻死んだほうがいい最悪に醜悪な産廃
37デフォルトの名無しさん:2013/03/20(水) 07:46:52.70
ワソクマ掲示板に出現するハウリングという奴、見当違いの書き込みばかりでうざい。
スレ汚しも甚だしい。
もっとも、質問者の質問の内容もアレなんだが。
38デフォルトの名無しさん:2013/03/20(水) 07:57:01.10
>>24
>CやC++から見たらC#なんて赤ちゃん言語だよねw

こいつは
CもC++もC#もどれ一つとしてまともに書けない
C#は,ほぼすべてのC機能を包含してますが何か。
39デフォルトの名無しさん:2013/03/20(水) 08:29:37.32
うんこに触るやつもうんこ
40デフォルトの名無しさん:2013/03/20(水) 08:52:44.15
↑うんこ
41デフォルトの名無しさん:2013/03/20(水) 08:58:35.69
いまどきC#なんてやってる奴は何をやらせても駄目
42デフォルトの名無しさん:2013/03/20(水) 09:02:26.94
VBやJavaとは違って、C#しかできないからC#やってるって人はそう多くないんじゃない?
複数使えて当然
43デフォルトの名無しさん:2013/03/20(水) 09:48:21.79
いまどきC#できない奴は何をやらせても駄目
44デフォルトの名無しさん:2013/03/20(水) 11:52:51.51
そんな自己否定しなくていいのよ
45デフォルトの名無しさん:2013/03/20(水) 11:57:04.76
てかマジレスすると、なんでも出来て初めて半人前だしね。
46デフォルトの名無しさん:2013/03/20(水) 16:00:37.53
単発が湧いてきたな
47デフォルトの名無しさん:2013/03/20(水) 17:21:12.54
そのネタさっき見た
48デフォルトの名無しさん:2013/03/20(水) 17:49:11.27
底辺ドカタが脳内エリートプログラマーになりきって自分を慰めるスレはここですか?
49デフォルトの名無しさん:2013/03/20(水) 17:51:25.17
いいえ
ドカタではなく引きこもりですから
50デフォルトの名無しさん:2013/03/20(水) 18:02:00.53
Java 土方
C++ 大工
C 設計士
C# 自称自営業
51デフォルトの名無しさん:2013/03/20(水) 18:09:36.65
Java 設備屋
C# 自宅警備員
VB 土方
Objective-C 電気屋
52デフォルトの名無しさん:2013/03/20(水) 19:30:56.26
最後だけちょっとよくわかんない
53デフォルトの名無しさん:2013/03/21(木) 18:33:53.95
過疎
C#終わったな
54デフォルトの名無しさん:2013/03/21(木) 18:35:40.01
まるで今まで始まっていたかのような口振りじゃないか
目が節穴のようだな
55デフォルトの名無しさん:2013/03/21(木) 18:59:01.21
WPFとLINQがこけたのが痛い。
56デフォルトの名無しさん:2013/03/21(木) 20:07:30.63
痛いのはお前。
終了。
57デフォルトの名無しさん:2013/03/21(木) 20:11:10.96
Winform && Linq禁止プロジェクトばっかじゃん。
58デフォルトの名無しさん:2013/03/21(木) 20:16:45.69
行末の句点も禁止だ
59デフォルトの名無しさん:2013/03/21(木) 20:26:14.18
>>57
(´・∀・`)ヘー 土方の周囲ではそうなんだー
60デフォルトの名無しさん:2013/03/21(木) 20:56:29.35
MFC同様、PG偏差値60以上じゃないとWPFの保守は無理だね。
61デフォルトの名無しさん:2013/03/21(木) 22:49:26.36
もうwinformなんて使わせてくれないぞ
62デフォルトの名無しさん:2013/03/21(木) 23:11:43.74
それは地獄だな。ご愁傷様。
63デフォルトの名無しさん:2013/03/22(金) 06:25:47.23
>>57
Winform && ( Linq禁止)

なのか

(Winform && Linq)禁止

なのかはっきりしろ。それでもプログラマか?
64デフォルトの名無しさん:2013/03/22(金) 06:44:26.07
>>63
という書き方だと演算子の優先順位は関係ないが

演算子の優先順位が関係ない記述方法(逆パスカル? こういうの→ 4 5 + 2 - 4 / = 8.5 )
でも無さそうだからやっぱり後者じゃね?
65デフォルトの名無しさん:2013/03/22(金) 06:47:37.18
うわ、コピペミスった。

一般的に単項演算子のほうが2項演算子より優先順位が高いから後者じゃね?

演算子の優先順位が関係ない記述方法(逆パスカル? こういうの→ 4 5 + 2 - 4 / = 8.5 )
でも無さそうだからやっぱり後者じゃね?
66デフォルトの名無しさん:2013/03/22(金) 06:50:39.68
OTL何もかもが間違ってる。支持したいのは前者の方だ。
Win8 de nazeka IME ga ugokanai orz orz orz
67デフォルトの名無しさん:2013/03/22(金) 06:56:25.33
  .ni 7      /ノ   ヽ\   壁に向かってしゃべってろゴミ
l^l | | l ,/)   / /゚ヽ  /゚ヾ\      .n
', U ! レ' / /   ⌒   ⌒  \   l^l.| | /)
/    〈 |  (____人__)  |   | U レ'//)
     ヽ\    |lr┬-l|   /  ノ    /
 /´ ̄ ̄ノ    ゙=ニ二"   \rニ     |
68デフォルトの名無しさん:2013/03/22(金) 08:02:44.83
           / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
    ○y-~~ <    あんまり気にすんなよ
    |\     \  
_| ̄|○ ̄|     
>>66
69デフォルトの名無しさん:2013/03/22(金) 10:13:58.22
WinformってWindows Formsのこと?
これつかわずにC#でどやってWinアプリ作るのさ?
70デフォルトの名無しさん:2013/03/22(金) 10:20:46.72
Winforms = Windows Forms = Win32API + コモンコントロール、GDI, GDI+ のラッパー。

WPFのこともたまには思い出してあげてくださいね
71デフォルトの名無しさん:2013/03/22(金) 10:28:47.30
GDI==Gasoline Direct Injection
72デフォルトの名無しさん:2013/03/22(金) 10:34:12.24
C#のFormsの生産性に感動してたC#初心者ですが
マジでFormsの使用禁止にしてる会社ってあるわけ?
C#でどーやってアプリつくんの?
FormsってのがまたまたMSの都合で廃止されるとか?
73デフォルトの名無しさん:2013/03/22(金) 10:37:51.39
WinFormsは永久に不滅です
74デフォルトの名無しさん:2013/03/22(金) 11:27:11.31
wpfに完全移行してる人居る?
75デフォルトの名無しさん:2013/03/22(金) 11:28:45.64
業務ならASP.NETに移行してる人は山ほどいると思う
76デフォルトの名無しさん:2013/03/22(金) 12:02:50.32
GTK#に移行している人は・・・・きっといないと思う。
77デフォルトの名無しさん:2013/03/22(金) 13:36:38.77
>>75
ASP.NETサーバーコントロールかASP.NET MVCか悩むところ。
<% %> タグ全開でコード自家書きだったらチトへこむ。
78デフォルトの名無しさん:2013/03/22(金) 13:48:00.72
今のMVCはRazorの@記法だろ
VSのテキストテンプレートもあれに置き換えればいいのに
79デフォルトの名無しさん:2013/03/22(金) 14:28:19.74
いや拡張子をaspxからそのままaspに変えてもそのまま動きそうなのがごろごろ
メンテしたくねぇ〜
80デフォルトの名無しさん:2013/03/23(土) 00:36:55.76
データによって値型、参照型分けた
と同時に格納領域もスタックとヒープにそれぞれ分けた
もうこれだけでC#>>C++。あーすっきりした
ジェネリックの演算子の多重定義だけなんとかならんか?
81デフォルトの名無しさん:2013/03/23(土) 01:22:02.77
それやると実行時のジェネリックの特殊化がC#の言語仕様に依存してしまうから無理。
どうしても必要ならdymamicが使える。dymamicは実行時に言語仕様に応じたコードを動的生成する仕組み。
82デフォルトの名無しさん:2013/03/23(土) 01:24:31.28
BinaryFormatterってやたら遅くね?
内部でXMLに一度変換してんの?
83デフォルトの名無しさん:2013/03/23(土) 01:50:09.21
自分でソース読め
84デフォルトの名無しさん:2013/03/23(土) 06:37:12.51
>>82
XmlSerializerよりは速いと思うけど。。
85デフォルトの名無しさん:2013/03/23(土) 08:43:05.82
>>81
教えてくれてTHX
そーかdynamicか。早速やってみたらとりあえず動いた。
C++のdynamicキャストみたいなもんと勝手に思い込んでたワ orz
86デフォルトの名無しさん:2013/03/23(土) 14:21:22.03
.NET(C#)におけるシリアライザのパフォーマンス比較
http://neue.cc/2010/05/29_261.html

やっぱり極端に遅いみたいだから、爆速のProtocol Buffers使うわ。
87デフォルトの名無しさん:2013/03/23(土) 14:28:29.63
Deserialize BinaryFormatter
00:00:59.1693980
Check => OK
Deserialize XmlSerializer
00:00:02.7073623
Check => NG

XmlSerializerのほうが全然速い。Deserialize失敗してるけどw
88デフォルトの名無しさん:2013/03/23(土) 15:53:40.91
 






“【史上最悪の放送事故】” ウジテレビがまたやらかした!


21日放送の某番組で、無修正の“アレ”をモザイクかけずに放送!その時のキャプチャが話題に!”



http://twi.im/picture2013_0323_image_01_jpg    (※キャプチャ)


(゚A゚;)ゴクリ 









 
89デフォルトの名無しさん:2013/03/23(土) 16:38:21.52
コピペ君って馬鹿だな、まで読んだ。
90デフォルトの名無しさん:2013/03/24(日) 00:50:41.53
くそっ騙されたwww
91デフォルトの名無しさん:2013/03/25(月) 09:19:15.15
dynamic は参照に対してはNGなんだな
マトリックスクラスつくって,Matrix<T>として,
T== double or Complexで配列の型を切り替えたいだけなのに。
92デフォルトの名無しさん:2013/03/25(月) 09:31:22.85
いやT[]をdynamicで扱うのは別に問題ないはずだけど何がNGなんだ?
それより問題は処理速度で、その手の計算にdynamic使うのは重くなりすぎるからやめとけ
どうしてもコピペが嫌ならVSのテキストテンプレートでも使えばいい
93デフォルトの名無しさん:2013/03/25(月) 09:46:37.07
>>91
2つだけならジェネリック型使うより、2つクラス作ったほうが良さげだな。
ってかComplex型で(real)doubleも代用させればいいんじゃね?
dynamic使っていいなら、虚数部分の無駄があっても十分ありな選択肢だと思うよ。
94デフォルトの名無しさん:2013/03/25(月) 14:13:24.70
class Matrix{
dynamic data;

public Matrix( string type, int col, int row ) {
  if( type == "double" ) {
   data= new double[ col, row ];
  } else if( type == "Complex" ) {
   data = new Complex[ col, row ];
 }
}

コンストラクタは
こんな感じ?
95デフォルトの名無しさん:2013/03/28(木) 01:42:41.17
C++/CXが普及することはあり得ないので
代わりにネイティブコード吐くC#が出てきそうに思うんだが?
96デフォルトの名無しさん:2013/03/28(木) 01:55:40.99
それなら新言語投入すんだろ
97デフォルトの名無しさん:2013/03/28(木) 02:00:53.08
>>87
これって.net4.5でも直ってないの?
98デフォルトの名無しさん:2013/03/28(木) 06:45:37.69
採用してる仕組みが違うから速さが違うだけで別にバグじゃないし、
BinaryFormatterは.NET Remotingの一部で今やレガシー扱い。WCFに置き換え。
99デフォルトの名無しさん:2013/03/28(木) 09:48:18.08
Store辺りだとJavaScriptが既にVB超えて2番手に
来てたりするから心配になってくる
100デフォルトの名無しさん:2013/03/28(木) 11:58:54.64
C#で中間コードかネイティブコードかは仕様に言及されてないだろ
つぎはぎC++よりよほどいいと思うが
101デフォルトの名無しさん:2013/03/28(木) 13:00:49.48
>>98
.netはCoreでシリアル化サポートしないってことかよw
102デフォルトの名無しさん:2013/03/28(木) 20:22:14.64
WCFにシリアル化の仕組みは当然付いてるしXmlSerializerもあるだろ?何が不満なんだ?
だいたいC#のBCLにシリアル化は無いぞ
103デフォルトの名無しさん:2013/03/28(木) 20:55:48.92
objectクラスになんでSerializableAttributeがついてると思ってんだよ。
MFCから逆行してる。
104デフォルトの名無しさん:2013/03/28(木) 20:58:16.69
XmlSerializerは糞遅い。しかもDeserializerできないものがある。
105デフォルトの名無しさん:2013/03/28(木) 21:00:23.17
実際バイナリより速いのに何と比べて言ってるの?
106デフォルトの名無しさん:2013/03/28(木) 21:04:21.82
XmlSerializerって起動時にコンパイルするから遅く感じるけど
プリコンパイルしたら爆速
107デフォルトの名無しさん:2013/03/28(木) 21:11:48.38
sgen.exeが無かった頃の印象が強かったからなぁ
108デフォルトの名無しさん:2013/03/28(木) 21:15:40.38
ストアアプリの方の新しい実装だとプリコンパイルなしで速いよ
WCFの方と同じく、csc使わないで直接IL吐くから
109デフォルトの名無しさん:2013/03/28(木) 21:41:32.68
なにこのシリアル化の意味すら分かってないようなレスの嵐

釣りだよな
110デフォルトの名無しさん:2013/03/28(木) 21:44:16.89
なにを喚こうがRemotingが公式にレガシー扱いされている事実は変えられないよ
111デフォルトの名無しさん:2013/03/28(木) 21:44:25.52
確認しないと分からないのか
112デフォルトの名無しさん:2013/03/28(木) 21:49:30.30
シリアル化したいときにアホみたいに効率の悪いXMLとかアホも大概にしろ。
ここに圧倒的な差が示されてるだろ。速度、サイズ比べ物になるか。

>.NET(C#)におけるシリアライザのパフォーマンス比較
>http://neue.cc/2010/05/29_261.html
113デフォルトの名無しさん:2013/03/28(木) 21:51:55.24
特に比べる気もないので、帰っていいよ
114デフォルトの名無しさん:2013/03/28(木) 21:52:40.25
私の記憶が正しければBinaryFormatterの話だったと思うのですが…
115デフォルトの名無しさん:2013/03/28(木) 21:53:25.91
XmlSerializer意外に優秀だなぁ
BinaryFormatterのデシリアライズおせえなぁ
って感想しか出ないな
116デフォルトの名無しさん:2013/03/28(木) 21:53:49.70
圧倒的な結果を見ることもせず馬鹿が現実逃避を始めました。
117デフォルトの名無しさん:2013/03/28(木) 21:54:05.10
世間の常識とか、MSの認識とか、そんなもの興味ないす
118デフォルトの名無しさん:2013/03/28(木) 21:55:31.28
シリアライザっていうのは基本的に通信用なので、
シリアル化の速度なんかよりサイズを抑えることの方が重要
XmlSerializerはXML文書を扱うことに主眼が置かれているのでいわゆるシリアライザとはちょっと違うが
119デフォルトの名無しさん:2013/03/28(木) 21:55:43.55
そんなヘンテコな状況のパフォーマンスなんてどうでもいー、という人は、各シリアライザの基本的な使いかたの参考にでもしてください
120デフォルトの名無しさん:2013/03/28(木) 21:56:31.82
XmlSerializerが速く見えるのは失敗してnewしてないから。勘違いしないように。
121デフォルトの名無しさん:2013/03/28(木) 21:58:36.67
見てもいないから勘違いしようがない
122デフォルトの名無しさん:2013/03/28(木) 21:59:10.43
そもそもXmlSerializerをBinaryFormatterやDataContractSerializerと比べるのが間違い。
XmlSerializerと比べるなら役割的にはXML DOMやLINQ to XMLだろ。
123デフォルトの名無しさん:2013/03/28(木) 22:03:47.31
>>118
通信ってのはプロセス間通信も含まれるし、外部記憶装置に対しても読み書きする。
普通はバイナリのままでサイズは小さい。さらに圧縮するのはかなり特殊。
124デフォルトの名無しさん:2013/03/28(木) 22:06:55.96
実装者が落とし穴に気をつけなきゃいけないようなものをセキュアだなんだと言って欲しくない
可能なら、頑張っても落とし穴に落ちることができない仕組みにすべきなんだから
125デフォルトの名無しさん:2013/03/28(木) 22:07:17.11
誤爆した
126デフォルトの名無しさん:2013/03/28(木) 22:10:02.31
で、WCFのシリアライザで何の問題が?
君の好きなバイナリにも対応してるし起動も遅くならないし動作も速いよ
127デフォルトの名無しさん:2013/03/28(木) 22:10:51.24
何の問題もないことは使う積極的な理由にはならんのです
128デフォルトの名無しさん:2013/03/28(木) 22:11:20.71
要件が2.0なのです。
129デフォルトの名無しさん:2013/03/28(木) 22:13:20.94
引導が渡った所で寝ましょう
130デフォルトの名無しさん:2013/03/28(木) 23:59:47.47
XML厨が作ったBinaryFormatterとXmlSerializerは欠陥品です。
改良されたのがDataContractSerializerなのでそちらを使ってください。
131デフォルトの名無しさん:2013/03/29(金) 00:08:00.89
ファイルサイズドン!さらに倍!
132デフォルトの名無しさん:2013/03/29(金) 17:01:08.34
133デフォルトの名無しさん:2013/03/31(日) 22:27:38.62
ECMA-335のCLI仕様書って.NET4相当?
最終更新がJune 2012ってなってるけど
134デフォルトの名無しさん:2013/04/03(水) 21:45:03.49
http://www.forest.impress.co.jp/docs/yashiro2013/20130401_593812.html?ref=garank
>たとえば「JAWA(ジャワ")」と呼ばれる言語の開発者でも容易に利用できるという。
そっとしておいたほうがいいかな?
135デフォルトの名無しさん:2013/04/04(木) 09:47:31.62
よう終わりの見えない四月バカ
136デフォルトの名無しさん:2013/04/09(火) 08:33:48.14
唐揚げ
137デフォルトの名無しさん:2013/04/10(水) 07:29:00.98
>>132
また何かやらかしたようだぞ

ttp://bbs.wankuma.com/index.cgi?mode=al2&amp;namber=66218
138デフォルトの名無しさん:2013/04/11(木) 06:25:40.31
本当に内容をよく読んでいないなw
139デフォルトの名無しさん:2013/04/11(木) 11:11:17.24
>>134
>JAWA(ジャワ")」と呼ばれる言語
おまえ情弱過ぎ
C→C++
JAVA→J++
なんてのは古い
ぶいぶい言わせてるJAVAプログラマのための
新生 JAVVA 言語
語源的には W == UU(ダブルユー)だけどなwwwwuuuu
140デフォルトの名無しさん:2013/04/11(木) 11:25:25.86
JAUUA
141デフォルトの名無しさん:2013/04/11(木) 11:26:26.41
いつまでエイプリルネタを引っ張るんだ
142デフォルトの名無しさん:2013/04/11(木) 12:42:55.11
>>137

スキルもなく、何が問題なのかも分からずに答えようとするからこうなるのさ。
未だに自分の犯した過ちに気付いていないようだね。
143デフォルトの名無しさん:2013/04/11(木) 14:39:18.94
式木とdynamicの使い分けがよく分かりません。
どちらも動的処理に使う認識なのですが
それぞれに適した用途はどんなのがあるのでしょうか?
144デフォルトの名無しさん:2013/04/11(木) 14:54:45.16
>>143
まったく違うものだと思うのだが、どう同じだと持ったの。
式木はDlinqやEFで使ってる奴だよね?
145デフォルトの名無しさん:2013/04/11(木) 16:01:48.53
>>137

> 自分が当初他の方の発言を一部ではあれ、横から口出ししてしまったことによって起こってしまったことだとは反省しています。
> ただ、正直なところ、じゃあその発言が悪かったのかと聞かれると、「そんなことはない」と今でも思っています。
> とはいえ、あそこで反論して炎上させて一騎打ち、なんてしても個人的には構わないですが、

かなり痛いなw
そんなにボコられたいのかwww
146デフォルトの名無しさん:2013/04/11(木) 18:53:30.57
アズレさんを怒らせたようだな
147デフォルトの名無しさん:2013/04/11(木) 20:36:28.74
未だにシリアル使われるんだよなあ
何でだろ
148デフォルトの名無しさん:2013/04/11(木) 21:31:56.10
コピペするってことはシリアル化するってことすら理解してないならふらっと池よと。
149デフォルトの名無しさん:2013/04/11(木) 22:15:46.35
Sendkyes.send("abc");
とかをクロームブラウザで表示されたページの
テキスト入力欄とかに送るとフリーズする人いる?
aaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbcccc...
みたいな感じで数千数万文字入力が送られる感じで
150デフォルトの名無しさん:2013/04/11(木) 22:18:25.56
他のアプリでKEYUP殺してんだろう。
151デフォルトの名無しさん:2013/04/11(木) 22:19:53.96
送るためのメソッドを実行するショートカットキーがAだったりして
152デフォルトの名無しさん:2013/04/11(木) 22:33:32.12
メモ帳に送ってみて問題なければブラウザのせいだろう。
153デフォルトの名無しさん:2013/04/12(金) 19:07:36.68
2010Express、.NET4.0です。

private void myform_FormClosing(object sender, FormClosingEventArgs e)
{
Properties.Settings.Default.RET = RET.Checked;(1)
Properties.Settings.Default.Save();
}

toolstripmenuitemのRETというインスタンスのChecked値をsettingsに保存したいのですが、
RETのプロパティバインディングで、バインディングしているので、
(1)はもはや不要だと思うのですが、(1)がないと、formclosing時における
RETのChecked値がsettingsファイルに保存されません。

どうしてでしょうか。
154デフォルトの名無しさん:2013/04/12(金) 19:20:23.62
以前同じ事をやってうまくいったときのソースとくらべてみたら、
以前のには、DataBinding.Addというのが追加されていました。
しかし、これが何だったのか思い出せません。
これはどうやったら追加されたのか思い出せません・・うーん
155デフォルトの名無しさん:2013/04/12(金) 22:05:56.02
拡張メソッドが「拡張子」ってVSで表示されるのって誤訳だよね
156デフォルトの名無しさん:2013/04/12(金) 22:11:48.76
MS語に誤訳もクソもあるかよ
157デフォルトの名無しさん:2013/04/12(金) 22:12:02.84
MSが拡張子だといったら拡張子なんだよ
MSは神だから
158デフォルトの名無しさん:2013/04/12(金) 22:25:51.08
インテリセンスされちゃったんだろ
159デフォルトの名無しさん:2013/04/13(土) 23:36:08.82
hoge()の戻り値がTask<bool>のとき
if(await !hoge())と書きたい

if(!await hoge())だと違和感ありまくり
160デフォルトの名無しさん:2013/04/13(土) 23:40:36.74
なにそれ気持ちわるい
161デフォルトの名無しさん:2013/04/14(日) 05:57:09.61
どっちも キ モ イ
162デフォルトの名無しさん:2013/04/14(日) 06:02:44.04
お前がキモイ
163デフォルトの名無しさん:2013/04/14(日) 09:52:05.12
翻訳してるのは普通に翻訳会社だよ。
誤訳の類はベータの段階で気づいた人が報告入れないといけないんだけど、
日本ってベータ使う人少ないみたいで製品になってから初めてクレーム来る。
164デフォルトの名無しさん:2013/04/14(日) 10:19:39.99
Extension Methodの訳語として何が正しいかを決めるのはMS
MSは「○○子」って名称良く使うし意図的にやってんだろ
165デフォルトの名無しさん:2013/04/14(日) 10:51:00.66
あれは明らかにバグだよ。
C#の仕様書日本語版では拡張メソッドになってるもの。
166デフォルトの名無しさん:2013/04/14(日) 10:56:39.25
長いだろ
167デフォルトの名無しさん:2013/04/14(日) 11:01:36.85
なら、「拡張」でいい。
元の英語リソースは「Extensions」だったはずだし、あそこの表示。
168デフォルトの名無しさん:2013/04/14(日) 11:13:48.82
日本語で「拡張」というと拡張する行為を指すからなあ
extensionのように拡張した一部という意味では使わないから違和感がある
169デフォルトの名無しさん:2013/04/14(日) 12:19:36.92
Filename extensionを拡張子と訳すのもバグだと主張してこい
170デフォルトの名無しさん:2013/04/14(日) 12:23:41.99
Stringの1文字ずつを処理する時に日本語が文字化けしないようには
どうしたらいいんでしょうか?
単に元に戻るだけのような下の処理でも文字化けしてしまうのですが

String str = "こんにちは";
StringBuilder sb= new StringBuilder();
for(int i = 0; i < str.Length; i++) {
sb.Append(str[i]);
}
Console.WriteLine(sb.ToString());
171デフォルトの名無しさん:2013/04/14(日) 12:32:06.63
しないだろ
172デフォルトの名無しさん:2013/04/14(日) 12:32:30.65
しねえよ
処理じゃなくてソースファイルの文字コードがおかしいんじゃないの
173デフォルトの名無しさん:2013/04/14(日) 12:36:16.75
あれ、と思って単純に
Console.WriteLine("テスト");
ですら文字化けしてしまいました
もしかしてPlayStation Mobile SDKでは日本語は使えない・・・とか?
174デフォルトの名無しさん:2013/04/14(日) 12:49:05.60
環境を先に書けよボケが
175デフォルトの名無しさん:2013/04/14(日) 12:49:08.19
すいません、解決しました
C#を全然理解できていないのでプログラムに問題が
あるのかと思ってしまいました
176デフォルトの名無しさん:2013/04/14(日) 12:52:21.95
勉強ならそんな変な環境でやるよりPCのVC#で済ませたほうが効率いいよ
しかもPSMって今のはもうすぐ無くなってUntyになるんでしょ?
177デフォルトの名無しさん:2013/04/14(日) 13:20:21.98
178デフォルトの名無しさん:2013/04/14(日) 13:23:00.99
書き込む前にリロードしろよ、な?
179デフォルトの名無しさん:2013/04/14(日) 21:31:06.21
こんにちは・・・
webbrowserコントロールを使ってページが表示されるまで待機したいのですが、Ajaxを使ったページのロード中の待機はどのようにすればよいのでしょうか?
180デフォルトの名無しさん:2013/04/14(日) 21:38:43.53
どうしようもないだろ。Ajaxのページがロード中かどうかはページを作った奴が決めること。
181デフォルトの名無しさん:2013/04/15(月) 04:44:22.00
SQL Server Compact 4.0で
insert into table (column) values (value1),(value2);
のように複数行の挿入、更新を1つのクエリで実行できないのでしょうか?
182デフォルトの名無しさん:2013/04/15(月) 05:25:55.95
Compactは;で区切ったクエリ並べられなかったっけ?
183181:2013/04/15(月) 05:51:21.78
>>182
;で並べると解析エラーが出ました
それぞれのクエリ単体では正常に動作します
184デフォルトの名無しさん:2013/04/16(火) 11:15:03.39
Listの内容でcomboBoxの中身を作るコードを書いています。

とりあえず希望通りのcomboBoxは出来上がったのですが、
comboBoxのDisplayMemberとValueMemberプロパティに自作クラスの名前を文字列で指定するのがちょっと不安です。
C#の世界ではこういうものなのでしょうか?

List<MyClass> MyList = new List<MyClass>();
//MyListの中身を作成する
(略)
comboBox1.DataSource = MyList;
comboBox1.DisplayMember = "Name"; //MyClassのNameプロパティ
comboBox1.ValueMember = "Code";//MyClassのCodeプロパティ
185184:2013/04/16(火) 11:17:18.60
×自作クラスの名前を文字列で
○自作クラスのプロパティ名を文字列で
186デフォルトの名無しさん:2013/04/16(火) 17:30:19.97
C#の世界というかフレームワークの世界じゃないかな
汎用的なデータバインディングのためにリフレクション使ってるのでプロパティ名が必要になるのは仕方ない。

VisualStudioがプロパティ名の変更時に置換サポートしてくれないのが問題なのであれば、
式木からプロパティ名拾うような拡張メソッド生やすといいかも。
http://ideone.com/tJtpaN
多少式木構築で遅くなるけど、バインディングする時だけだし問題になるほどではないはず。
関連した話としてはCallerInfoがあるけど、変更通知と違ってこの場合は使えないね。
187デフォルトの名無しさん:2013/04/17(水) 01:35:25.27
Parallel Programming in .NET 4. Coding Guidelines の4pageの例に挙げられてるけど
ループ内で生成したタスクにループカウンタを手渡したい場合は、
いったんローカル変数にコピーしてから使えというのを知らなかったばっかりに3日悩んだ。
北山洋幸のParallel プログラミング in .NET Framework 4.0読んでから
TPL使い出したんだけど、この本には一切書かれてないんだな(見落としてただけかも?)
はまった人居る?
188デフォルトの名無しさん:2013/04/17(水) 02:14:56.37
>>187
それはTPL特有というわけでなく、
.NETのクロージャ一般に見られる現象なのだが。
189デフォルトの名無しさん:2013/04/17(水) 04:44:00.20
凄く基本的かもしれませんが、アクセスレベルをC++のようにまとめて指定することはできないんでしょうか。
例えば、
public int a;
public int b;
public int c;


public:
int a;
int b;
int c;
のように、いちいちpublicと付け足さずに済む方法を知りたいです。
190デフォルトの名無しさん:2013/04/17(水) 07:23:10.13
カンマ
191デフォルトの名無しさん:2013/04/17(水) 07:49:43.87
盲点でした。ありがとうございます。
192デフォルトの名無しさん:2013/04/17(水) 08:29:53.12
>>188
ループカウンタのまま使うのと
いったんローカル変数にコピーするのと
内部ではどういう処理の違いがあるの?
現象だけ見てるとタスク生成と、変数のハンドリング同期の問題だと思うけど。
193デフォルトの名無しさん:2013/04/17(水) 08:46:38.07
スコープの違いだよ
ループ開始時に作られて終わるまで生きてる変数と
ループブロックの中で毎回作られてる変数の差
194デフォルトの名無しさん:2013/04/17(水) 08:54:36.82
var list = new List<Func<int>>();
for (int i = 0; i < 3; i++) {
&nbsp; &nbsp; list.Add(() => i);
}
Console.WriteLine(list[0]()); // 0を期待

これをコンパイルするとこんな感じになる

class temporary {
&nbsp; &nbsp; public int i;
&nbsp; &nbsp; public int Do() { return i; }
}

var list = new List<Func<int>>();
temporary tmp = new temporary();
for (tmp.i = 0; tmp.i < 3; tmp.i++) {
&nbsp; &nbsp; list.Add(tmp.Do);
}
Console.WriteLine(list[0]()); // 3
195デフォルトの名無しさん:2013/04/17(水) 11:11:48.32
>>187
そうだ、いいこと思いついた。俺のケ・・・
for (int i = 0; i < 5; i++) {
 Task.Factory.StartNew(() => Console.WriteLine(i)).Wait();
}
196デフォルトの名無しさん:2013/04/17(水) 11:17:58.82
すっごく同期です……
197デフォルトの名無しさん:2013/04/17(水) 14:32:02.50
COMはAppDomainを使ってドメイン分離しても1プロセスに1つで無意味なのでしょうか?
198デフォルトの名無しさん:2013/04/17(水) 14:43:29.75
意味が分からん クライアントなのかサーバなのか
まあCOMは.NETとは無関係の技術なんだからプロセスに1つきりの何かならAppDomainとは無関係に1つだろ
199デフォルトの名無しさん:2013/04/18(木) 13:08:48.01
var cts = new CancellationTokenSource();
var ct = cts.Token;
var t = Task.Factory.StartNew(() => {
while (true) {
ct.ThrowIfCancellationRequested();
Console.WriteLine("working");
Thread.Sleep(1000);
}
}, cts.Token);

StartNewの2番目のCancellationTokenは何に使われてるのでしょうか?
無くてもキャンセルはされますし、
逆にThrowIfCancellationRequestedが無い場合はキャンセルされません。
200デフォルトの名無しさん:2013/04/18(木) 20:42:49.34
>>199
http://msdn.microsoft.com/ja-jp/library/dd997396.aspx
>ユーザー コードによってスローされた OperationCanceledException を確認した場合は、例外のトークンと関連付けられたトークン
>(タスクを作成した API に渡されたトークン) とを比較します。 これらのトークンが同一であり、トークンの IsCancellationRequested
>プロパティから true が返されると、タスクはこれをキャンセルの受信確認と解釈し、Canceled 状態に遷移します。


>または例外のトークンがタスクのトークンと一致しない場合、OperationCanceledException は標準の例外のように扱われるため、タスクは Faulted 状態に遷移します。
201デフォルトの名無しさん:2013/04/18(木) 20:46:43.82
Task<T>.Statusの値が変わるわけだな
202デフォルトの名無しさん:2013/04/18(木) 20:49:27.78
どうでもよすぎワロタ
203デフォルトの名無しさん:2013/04/18(木) 21:33:07.78
>>200
長年のもやもやが消えました。ありがとうございます。
>>202
そういうところこそ妙に気になるもので(汗
204デフォルトの名無しさん:2013/04/18(木) 23:05:33.49
Windows 認証
(基本認証) ダイアログが起動した場合に

ユーザ名
パスワード

を入力し「OK」ボタンをwindows API を使って処理したいのですが
どうすれば良いでしょうか?
205デフォルトの名無しさん:2013/04/18(木) 23:58:46.20
DataSetを使って開発すると何かいいことありますか?
DataTableはかなり使うのですが、DataSetは使ったことありません
206デフォルトの名無しさん:2013/04/19(金) 00:00:25.29
WindowsAPIならP/Invokeという仕組みで呼べます
207デフォルトの名無しさん:2013/04/19(金) 09:33:42.64
mysqlの入力フォーム作ろうとしてるけど
もしかしてC#じゃない方が良いのではと思ってきた
208デフォルトの名無しさん:2013/04/19(金) 14:50:46.78
お好きな方法でどうぞ
209デフォルトの名無しさん:2013/04/19(金) 18:44:11.40
好きにしろ
210デフォルトの名無しさん:2013/04/19(金) 23:37:02.79
そんなもんPHP(笑)とかRuby(笑)とかで十分
211デフォルトの名無しさん:2013/04/21(日) 22:32:39.66
ネットワーク上のファイルを表示したListViewからドラッグ&ドロップで
エクスプローラにファイルをコピーしています。
現在、ドラッグ開始時に一時ファイルにダウンロードし、
一時ファイルのパスをDataObjectに格納してDoDragDrop()を呼び出すようにしています。
この方法だとファイルが大きい場合に固まってしまうので、
ドロップ時にダウンロードするようにしたいのですが、良い方法はありますでしょうか?
212デフォルトの名無しさん:2013/04/22(月) 10:26:30.57
一時ファイルのパス文字列(実物は存在しない)だけ作っておいてそれでDataObject作ってDoDragDrop,
ドラッグソースのQueryContinueDragイベントでe.Action == DragAction.Dropだったらそこでダウンロード開始、でいけないか
213デフォルトの名無しさん:2013/04/22(月) 10:37:49.72
実証コード

private void panel1_MouseMove( object sender, MouseEventArgs e )
{
  if( e.Button != 0 )
  {
    var d = new DataObject();
    var sc = new System.Collections.Specialized.StringCollection();
    sc.Add( @"C:\Users\Hage\Desktop\存在しないファイル.txt" );
    d.SetFileDropList( sc );
    this.panel1.DoDragDrop( d, DragDropEffects.All );
  }
}

private void panel1_QueryContinueDrag( object sender, QueryContinueDragEventArgs e )
{
  if( e.Action == DragAction.Drop )
  {
    System.IO.File.Create( @"C:\Users\Hage\Desktop\存在しないファイル.txt" ).Close();
  }
}
214デフォルトの名無しさん:2013/04/22(月) 12:17:41.63
Entity framework 5.0を使うと、Exceptionが発生してしまいます。
--Exceptionメッセージ--
Message=テーブル 'B' に FOREIGN KEY 制約 'FK_dbo.B_dbo.A_A3_Id' を設定すると、パスの循環や複数のカスケード パスが生じる可能性があります。ON DELETE NO ACTION、ON UPDATE NO ACTION、を指定するか、他の FOREIGN KEY 制約を変更してください。
制約を作成できませんでした。以前のエラーを調べてください。
--Exceptionメッセージ--


どうしたら、解決できるでしょうか。
コードはこれ。
/ideone.com/s8ZbPW


宜しくお願いします。
215デフォルトの名無しさん:2013/04/22(月) 12:48:38.94
Entity frameworkはよくわからんのだが
クラスAの中でクラスBを使用して、クラスBの中でクラスAを使用してるけど
それコンパイル通るの?
216デフォルトの名無しさん:2013/04/22(月) 13:01:17.95
>>213
>>213
ありがとう(^^
private void panel1_QueryContinueDrag( object sender, QueryContinueDragEventArgs e )
{
  if( e.Action == DragAction.Drop )
  {
    Thread t = new Thread(...);

    while (!IsDownloadEnd()) {
      Application.DoEvents();
    }
  }
}
で実現できました。
ただ、このままだと、CPU100%なってしまうですが、
ループ中にSleep()を入れると今度はアプリの反応が鈍くなります。
今度はこの解決方法を模索中です。
217214:2013/04/22(月) 16:50:43.66
>>215
はい、通ります。
218デフォルトの名無しさん:2013/04/22(月) 17:21:31.54
compact framework 3.5 のDataGridで質問です。

ヘッダーの幅を変更するプロパティはあるんだけど、
高さを変更するプロパティが見つからない・・・
ぐぐっても出てこないのでヘッダーの高さを変更する方法を教えて下さい。
219デフォルトの名無しさん:2013/04/23(火) 22:21:55.25
MDI親(Form1)の子(Form2)にpictureBoxを作って、
別のclassから描画用メソッドを呼んで線を描きたいのですが、
動かしてみると何の反応もありません。

MDIフォームにせず、Form2から別のclassの描画用メソッドを呼ぶと描けます。

なぜMDIフォームの子からは描けないのでしょうか?

サンデープログラマなので、見当もつきません。

詳しい方、よろしくお願い致します。
220片山博文MZパンク ◆0lBZNi.Q7evd :2013/04/23(火) 22:26:47.00
>>216
同期のイベントを使え
221片山博文MZパンク ◆0lBZNi.Q7evd :2013/04/23(火) 22:36:45.04
>>219
子ウィンドウの描画は子ウィンドウで
222218:2013/04/23(火) 22:38:52.69
質問取り下げます
223デフォルトの名無しさん:2013/04/23(火) 22:46:45.05
コテってやっぱクソの訳にも立たないカスだな

>>219
「描画用メソッド」の中身が分からんと何とも言えない
とりあえずInvalidate()でもしてみたら?
224219:2013/04/23(火) 23:23:56.94
ご回答ありがとうございます。

>>221
子ウィンドウを複数作る予定なので、classに共通メソッドを書こうと思った所、
今回の問題に突き当りました。

後学のためにも、原因を知りたいなと思っております。

>>223
描画用メソッドとは書いていますが、
g.DrawLineで、呼び出し元の子フォームのpictureBoxに
線を描き出すだけです。

Invalidateは初めて見たので、調べたいと思います。
225片山博文MZパンク ◆0lBZNi.Q7evd :2013/04/23(火) 23:41:56.63
グラフィックスを引数で渡す関数を作って使え
226デフォルトの名無しさん:2013/04/23(火) 23:45:44.40
>>224
描画するときはOnPaintイベント内ですると幸せになれそう
OnPaint()に描画処理を書いて、外部からInvalidate()とかRefresh()とかしてOnPaintイベントを起こせばいい
227デフォルトの名無しさん:2013/04/23(火) 23:48:10.46
おい片山
便所から出てくんなよ
228デフォルトの名無しさん:2013/04/23(火) 23:48:52.89
>>224
gってことはCreateGraphicsとか変なの使ってんじゃない?
Paintイベントのe.Graphicsが正解だよ
229デフォルトの名無しさん:2013/04/23(火) 23:59:41.75
あっごめんOnPaintじゃなくてPaintイベントね
230デフォルトの名無しさん:2013/04/24(水) 20:56:25.54
下みたいなプログラムで、最も新しい日付のSampleクラスインスタンスを取ってきたいんですが、
どうやってとってきたらいいでしょうか。Linqでかっこいー書き方を教えてください。

    public class Sample
    {
      public DateTime DateTime { get; set; }
    }

    private void Test()
    {
      IEnumerable<Sample> samples = new List<Sample>
      {
        new Sample { DateTime = new DateTime( 2013, 1,1)},
        new Sample { DateTime = new DateTime( 2013, 3,2)},
        new Sample { DateTime = new DateTime( 2013, 1,3)},
        new Sample { DateTime = new DateTime( 2013, 2,1)},
        new Sample { DateTime = new DateTime( 2013, 3,1)},
      };

      // samplesからもっとも新しい日付のSampleを取ってきたい。
    }
231デフォルトの名無しさん:2013/04/24(水) 21:19:50.68
samples.OrderBy(c => c.DateTime).Last()
232デフォルトの名無しさん:2013/04/24(水) 22:00:00.89
Enumerable.LastはO(n)だからsamples.OrderByDescending(c => c.DateTime).First()のが速いよ
カッコ悪いけど
233デフォルトの名無しさん:2013/04/24(水) 22:05:37.39
これが有名な暗号化言語C#。他人のコードはとても読めない。保守不能。
234デフォルトの名無しさん:2013/04/24(水) 22:14:34.26
読む気がない人には読めないだけだよ
235デフォルトの名無しさん:2013/04/24(水) 22:23:28.50
理解不能。
236デフォルトの名無しさん:2013/04/24(水) 23:17:32.33
>>231-232
C++やRubyよりは、わかりやすいと思う。
他の言語は知らん。
237デフォルトの名無しさん:2013/04/24(水) 23:24:25.42
Last()の値がほしいけど、First()のほうが速いから逆ソートするのである。

実装の知識がないとコードから読み取るのは不可能だな。
238デフォルトの名無しさん:2013/04/24(水) 23:25:55.10
Listはこの場合仕方ないね
239デフォルトの名無しさん:2013/04/24(水) 23:27:46.01
なんでジャップはVBとかRubyとか無駄に複雑な言語を好むのか
そのくせ難しい機能は使わないという
240デフォルトの名無しさん:2013/04/24(水) 23:36:38.67
>>239
祖国にお帰りください
241デフォルトの名無しさん:2013/04/24(水) 23:49:01.69
>>237
知らなくても感覚で分かるとは思う。
でもとっさに自分で書ける気がしない。w

感覚的に読めても、感覚的には書けないというか。自分で書く必要が出たときには忘れてるというか。
242デフォルトの名無しさん:2013/04/24(水) 23:57:15.30
ほとんどの人はLast()のままだろうな。
243デフォルトの名無しさん:2013/04/25(木) 00:02:54.40
>>232
.LastがO(n)だっていうソースと.OrderByDescendingがそれより早いというソース教えてくれ
244232じゃないお:2013/04/25(木) 00:05:57.25
早さはよくわからないけど、一番大きいのが欲しいのなら
大きい順にならべて先頭を取るほうが自然だと思う
245デフォルトの名無しさん:2013/04/25(木) 01:13:55.81
LINQはオーバーロード充実している割に直接的に書けない場合も多いんだよね
今回のケースではこういうのがあればよかったんだろうけど
http://ideone.com/FBa2Gy
246デフォルトの名無しさん:2013/04/25(木) 08:46:31.23
自然かどうか早いかどうかでなくカッコいい書き方が要件である
よって審美眼について触れてない解答は全て0点である
247デフォルトの名無しさん:2013/04/25(木) 09:18:45.12
本来は、最大値を求めた上で、その最大値の要素すべて列挙するのが正しいのかな?
248デフォルトの名無しさん:2013/04/25(木) 09:38:23.65
LINQっておもろそう。
samples.Where(p => p.DateTime == (samples.Max(q => q.DateTime)))
カッコいっぱいつかってるかカッコいい書き方っすかねw
249デフォルトの名無しさん:2013/04/25(木) 09:39:48.44
>>245
俺の知ってるC#と違う
250デフォルトの名無しさん:2013/04/25(木) 09:43:39.17
>>248
O(n^2)
251デフォルトの名無しさん:2013/04/25(木) 09:56:02.18
samples.Where(p => p.DateTime == (samples.Max(q => q.DateTime).ToList()));

ならどうか
252デフォルトの名無しさん:2013/04/25(木) 09:59:45.60
C#2.0止まりの雑魚なのでさっぱり読めないお
253デフォルトの名無しさん:2013/04/25(木) 10:04:47.91
from q in samples where q.DateTime == samples.Max(r => r.DateTime) select q
254デフォルトの名無しさん:2013/04/25(木) 10:14:11.71
変数を2つ使ってる時点で重いだろ
255デフォルトの名無しさん:2013/04/25(木) 10:23:53.30
>250
2nなので O(n)ですよ
256デフォルトの名無しさん:2013/04/25(木) 10:40:11.01
O(n)ってのは、処理件数と処理時間が正比例するってだけで、1件当たりの処理時間は問題にしてない
早いか遅いかは1件当たりの処理時間と件数できまるのであって、1件あたりの処理時間が長い処理ならO(n)の方が遅いこともありうるんだが
257デフォルトの名無しさん:2013/04/25(木) 10:43:22.50
なんかエラーが出やがる

s = samples.Where(p => p.DateTime == (samples.Max(q => q.DateTime)));
Console.WriteLine("{0}", s.DateTime.ToString("d"));
s = samples.Where(p => p.DateTime == (samples.Max(q => q.DateTime).ToList()));
Console.WriteLine("{0}", s.DateTime.ToString("d"));

Program.cs(40,11): エラー CS0266: 型 'System.Collections.Generic.IEnumerable<Linq2.Sample>' を 'Linq2.Sample' に暗黙的に変換できません。明示的な変換が存在します。(cast が不足していないかどうかを確認してください)
Program.cs(42,45): エラー CS1061: 'System.DateTime' に 'ToList' の定義が含まれておらず、型 'System.DateTime' の最初の引数を受け付ける拡張メソッドが見つかりませんでした。using ディレクティブまたはアセンブリ参照が不足しています。
258デフォルトの名無しさん:2013/04/25(木) 10:48:28.93
>>257
sの型が変

日付型をなんでToListしようとしてんの?
259デフォルトの名無しさん:2013/04/25(木) 10:50:46.11
>>248>>251をそのままコピペしただけなんだけど
何が悪いんだろ
260デフォルトの名無しさん:2013/04/25(木) 10:52:21.72
あ、

class Sample {
public DateTime DateTime { get; set; }
}

Sample s;

はあるよ

Sample s = samples.OrderBy(c => c.DateTime).Last();
Console.WriteLine("{0}", s.DateTime.ToString("d"));
s = samples.OrderByDescending(c => c.DateTime).First();
Console.WriteLine("{0}", s.DateTime.ToString("d"));

これはちゃんと動く
261デフォルトの名無しさん:2013/04/25(木) 10:57:01.58
samples.Where は  Sample型じゃない。
262デフォルトの名無しさん:2013/04/25(木) 11:02:28.05
>>248>>251は複数になる可能性あるから
ToList()したのをList<Sample>で受けてforeachで引っ張り出さないとだめなんでねか?
263デフォルトの名無しさん:2013/04/25(木) 11:07:26.24
ちがうよ
264デフォルトの名無しさん:2013/04/25(木) 11:44:56.89
もっとも新しい日付のSampleが1つでいいのなら >>232 でいい。
複数必要なら、Interactive ExtensionsのMaxBy()を使うとシンプル、標準だけだと一時変数必要かも。
LINQはデータ処理の流れがそのまま表現できるのがいいとこなので、標準で表現し辛いなら拡張メソッド生やすべき。
265デフォルトの名無しさん:2013/04/25(木) 12:05:57.29
>>255
え、Maxは1度しか実行されないの?
266デフォルトの名無しさん:2013/04/25(木) 19:10:00.56
全く違う操作で計算量比べても意味がないんだけど
線形探索のO(n)とソートのO(log n)でどちらが速いとか比較してどうすんだよ
267デフォルトの名無しさん:2013/04/25(木) 19:28:38.03
は?w
268デフォルトの名無しさん:2013/04/25(木) 19:34:56.85
どうもしねーよ
ズレた発言して粋がんなカス
269デフォルトの名無しさん:2013/04/25(木) 19:38:16.68
>>266
だれもそんなことしてないだろ
270デフォルトの名無しさん:2013/04/25(木) 19:46:15.70
夢でも見たのか?
271デフォルトの名無しさん:2013/04/25(木) 20:17:28.36
もちつけ
272デフォルトの名無しさん:2013/04/25(木) 20:59:00.64
LINQは素人には計算量が読めないってこった。
273デフォルトの名無しさん:2013/04/25(木) 21:06:07.64
操作も分かってないのは致命傷だろ
274デフォルトの名無しさん:2013/04/25(木) 21:10:45.98
LINQとラムダで一気に糞言語と化したよな。
分かりにくい言語トップでも狙ってんのかね、ヘジは。
275デフォルトの名無しさん:2013/04/25(木) 21:20:20.33
馬鹿に無理ってこった
276デフォルトの名無しさん:2013/04/25(木) 21:25:36.60
LINQなんてオブジェクト指向とか普通の制御構文とか
そういうのの学習に費やすコストに比べたら全く難しくないよね
なんでそこまで頑張ったのにそこで学習やめるのかと
277デフォルトの名無しさん:2013/04/25(木) 21:37:03.83
>samples.OrderByDescending(c => c.DateTime).First()

こんなコード大量生産してるほうが馬鹿。
278デフォルトの名無しさん:2013/04/25(木) 21:50:53.00
>>272-277
なんでラムダ式に否定的な方々はみんな。が付いてるんですかねえ?
279デフォルトの名無しさん:2013/04/25(木) 21:53:16.38
>>278
同一人物のseikyou.ne.jpだからだろ
280デフォルトの名無しさん:2013/04/25(木) 21:55:41.44
は?なに安価付けてんの?しばかれたいの?
281デフォルトの名無しさん:2013/04/25(木) 22:17:55.17
通報した
282デフォルトの名無しさん:2013/04/25(木) 22:18:13.54
もうバレバレなんすよ
uyかQくらいしかいないから
283デフォルトの名無しさん:2013/04/25(木) 22:19:18.50
で、どうすんの?また「コンロバーナーww」とか荒らすのか?
284デフォルトの名無しさん:2013/04/25(木) 22:35:01.25
Max()やMin()なんて結構いいじゃん
For文で全部走査して比較してってやるよりコード減らせるし見た目わかりやすくなるやん
285デフォルトの名無しさん:2013/04/25(木) 22:41:09.53
>>279
適当な事言うなよ
286デフォルトの名無しさん:2013/04/25(木) 23:21:31.87
Linq使うのとふつうにfor文回してMax, Minを求めるのとどっちが速い?
特にTPLの比較が興味あるわ.
Prallel.ForEachでMax, Min求めようとすると最終的にそれぞれのコア出力値を
排他制御してもう一度比較しないといかんのよね
287デフォルトの名無しさん:2013/04/25(木) 23:29:25.51
配列ならunsafe使うのが早い
288デフォルトの名無しさん:2013/04/25(木) 23:43:53.04
na
289デフォルトの名無しさん:2013/04/26(金) 00:02:31.76
PropertyGridで文字列のプロパティを「ファイルを開く」ダイアログで設定できるようにする方法はあるけど、
これフィルタかけられないのかな?
pngファイルだけ読み込ませたい時とかに大変だし…
290デフォルトの名無しさん:2013/04/26(金) 00:17:00.43
>>289
UITypeEditorを継承したクラス作る
ttp://jsworld.jp/surasura/mgh?contentid=prg001p008
291デフォルトの名無しさん:2013/04/26(金) 00:34:32.86
FileNameEditorを使ってんのならInitializeDialogをオーバーライドすればいい
292デフォルトの名無しさん:2013/04/26(金) 00:50:37.24
>>290
まさにそれだ!ありがとう!
これで作業が進むよ
293デフォルトの名無しさん:2013/04/26(金) 13:29:24.76
データがshortの巨大な配列をファイルから読み込む場合
ReadUInt16をループさせるよりReadBytesで一気に読み込んで
変換していく方がいいのかな?
294デフォルトの名無しさん:2013/04/26(金) 13:35:30.08
>>293
配列をメモリーストリームにすればファイルと同じようにアクセスできるでしょ
295デフォルトの名無しさん:2013/04/26(金) 20:27:01.25
>>293
一番パフォーマンスがいいのは、byte[]で読んでunsafeで
byte[](配列の先頭のポインタ)をshort[]にキャストする方法らしい。
296デフォルトの名無しさん:2013/04/26(金) 21:20:25.64
>>214
もういないかもしれんけど

素直にエラーメッセージの解決法に従うか、DB設計し直す

個人的には後者がオススメ
横に長くなってるからAとBの関係を表すテーブルを間に
はさんだほうがいい。
297デフォルトの名無しさん:2013/04/26(金) 22:07:29.60
>>294-295
ありがとう
勉強不足でunsafeとか知らなかった
298デフォルトの名無しさん:2013/04/27(土) 00:34:46.56
>>295>>297
Buffer.BlockCopyを使えよ
unsafe使わなくていいしCLR組み込みだからunsafeより速いぞ
299デフォルトの名無しさん:2013/04/27(土) 05:42:11.84
BinaryReaderでファイルから文字列を読んでコンソール出力すると
それ以降、まったくコンソールから出力できなくなるんだけどなんでだろ…
エンコードしてもそのまま出力してもファイルから読み込んだ文字列を
表示した後は一切、出力されなくなってしまう
300デフォルトの名無しさん:2013/04/27(土) 06:20:47.36
独り言なら穴掘っていくらでもほざいてろ
301デフォルトの名無しさん:2013/04/27(土) 07:42:16.99
>>299
最後に\0読み込んでないか?

>>300
カルシウム取れよ
302デフォルトの名無しさん:2013/04/28(日) 01:33:31.37
ARIB STD-B24 のエンコードのC#の実装ってある?
303デフォルトの名無しさん:2013/04/29(月) 00:58:28.84
ドキュメントコメントを書くときに下記のようには書けないのでしょうか?
なにか代替手段があれば教えてください。
ちょっと変な例ですがやりたいことのイメージです。

/// <remarks>
private int calc(int a, int b)
{
/// 1. aを10倍する<br/>
int tmp = a * 10;
/// 2. bをたす<br/>
return tmp + b;
}
/// </remarks>
と、かいて
<remarks>
1. aを10倍する<br/>
2. bをたす<br/>
</remarks>
を得たいです。
304デフォルトの名無しさん:2013/04/29(月) 01:03:08.49
代替手段というより考え方を変えた方がいい
不必要に実装を晒す非常に悪いドキュメントだ
ドキュメントコメントは外から見てどういう動作をするかがわかればいいの
305デフォルトの名無しさん:2013/04/29(月) 01:08:39.80
同じ板の別スレッドにマルチポストして意味あるのかw
やっぱり変な奴ってやることなすこと変だよな
306デフォルトの名無しさん:2013/04/29(月) 01:38:32.99
303です。

304さん, ありがとうございます。
「ドキュメントコメントは使う人が読むもの」と理解しました。
保守する人が読むものは普通のコメントで書くことにします。

305さんはじめ皆さん、失礼しました。
「長すぎます」のようなエラーが表示されたので書き込まれていないと勘違いしました。
リロードしたらもっとふさわしいスレッドがあったので、そちらにも書き込んでしまいました。
申し訳ありません。今後、気をつけます。
307デフォルトの名無しさん:2013/04/29(月) 02:02:15.39
C#でこれに相当するドキュメントってどこかにない?
http://msdn.microsoft.com/ja-jp/library/vstudio/ms235255.aspx
308デフォルトの名無しさん:2013/04/29(月) 02:37:47.23
あるよ。
309デフォルトの名無しさん:2013/04/29(月) 07:43:50.08
310デフォルトの名無しさん:2013/04/29(月) 13:58:58.05
>>309
仕様書の存在は知ってるんだけど、できれば厳密じゃなくてももっと簡潔な説明が欲しい。
311デフォルトの名無しさん:2013/04/29(月) 14:32:12.10
型のリファレンス表 (C# リファレンス)
http://msdn.microsoft.com/ja-jp/library/vstudio/1dhd7f2x.aspx

ここから辿って全部見れば?
もっと簡潔なのがほしいとか言われても知らん
VBの方は馬鹿にも分からなくちゃいけないという至上命題があるから親切なのかもね
312デフォルトの名無しさん:2013/04/29(月) 14:33:59.53
後出しは良くないよ
各型の定義域が知りたいのかと思いきや
それは知ってる。もっと簡単なの。

じゃあこの辺?
http://msdn.microsoft.com/ja-jp/library/vstudio/exx3b86w.aspx

次は同じフォーマットじゃないとダメとか言うの?
313デフォルトの名無しさん:2013/04/29(月) 14:34:47.36
かぶった
314デフォルトの名無しさん:2013/04/29(月) 15:04:24.16
>>312
後だししてるつもりはないよ。
俺が欲しいのは>>307のリンク先のVB用のドキュメントに対応するC#er向けのもの。
つまりひと言で言うと、算術演算子のオーバーロードの解決法に関するドキュメント。

やっぱり、少なくともMSDNには存在しないみたいだね。
完全独自仕様のVBと違って「基本的にCと同じです」でほとんどのプログラマに
通じるからだろうけど。

どーでもいいけど「仕様書読め」ってよくある応報だけど、そういう奴に限って自分が読んでない。
読んでたら仕様書読めなんて普通の神経してたら絶対に言えないよw
315デフォルトの名無しさん:2013/04/29(月) 15:11:18.85
でたよ普通
お前の都合のいい言い訳に使われる普通なんて知ったことか
規格が普通なんだよ
316デフォルトの名無しさん:2013/04/29(月) 15:30:47.60
後だししてるつもりはないなら補足レスなんかしないだろ。
普段からこうやって言い訳してるんだろーねー。
317デフォルトの名無しさん:2013/04/29(月) 15:31:43.11
>>314
キチっすなぁ
318デフォルトの名無しさん:2013/04/29(月) 19:06:59.55
>>314
仕様書読んでないの?!
普通酒の肴にして読んだり寝る前に読んだりするでしょ!
319デフォルトの名無しさん:2013/04/29(月) 19:28:03.14
仕様書を読まないとかあり得ないだろ…?
320デフォルトの名無しさん:2013/04/29(月) 21:18:58.83
何もかも逆引きで済ましますよ
仕様書とかありえないっすねw
会社の書棚も逆引き本ばっかりでしたよ
そんなもんでしょw?
321デフォルトの名無しさん:2013/04/29(月) 22:10:01.44
DB接続って何使ってる?
322デフォルトの名無しさん:2013/04/29(月) 22:10:06.45
>>320
こう言うのが居るから相対的に自分の評価が上がるなんて若い頃は思ったものだが
人を使うようになるとこんなんばっかで何が作れるんだよってキレたくなる
323デフォルトの名無しさん:2013/04/29(月) 23:27:32.79
ふっつーにSqlConnection/Commandかな
324デフォルトの名無しさん:2013/04/30(火) 00:55:45.41
JavaからC#に来たけど、MSDNのドキュメントはすごく見づらい。
>>307 あたりで貼られているMSDNのリンク先でも、画面左のペインでサブ項目を折りたたみできるが、
ある項目を展開すると、他の項目が消えてしまう。
隠さないで全部表示してほしい。Ctrl-F で検索もできるし。

Javaはウンコとかいろいろ言われているが、javadoc (APIリファレンスだけでなく) はものすごくたどりやすい。
るりま、pythonなどもいろいろ見てきたが、言語のオンラインドキュメントでjavadocが一番。
325デフォルトの名無しさん:2013/04/30(火) 01:17:43.52
>>324
それは間違いなく慣れの問題ですw
どっちも慣れた後ならJavaのドキュメントの方が糞に思えてくると思うよ。

あと個人的見解だけど、ブラウザで見るオンラインのドキュメントは、あくまで
オマケもしくは最新情報的な意味合いしかないと思う。

ローカルのビューワは間違いなくMSDNの方が見やすい。
まあ2010以降は劣化が激しい気がしないでもないけどw
326デフォルトの名無しさん:2013/04/30(火) 01:19:04.66
ちょっと質問させてください。
C#(プログラム)からルータの管理画面を開いて
自動で切断 > 接続 を繰り返していると
たまに 「ページが見つかりません」というエラーメッセージがWebbrowser上に
表示される様になります。
こうなった場合には、ルータとVDSLの電源をオン、オフにしなければ
192.168.2.1 にアクセスしようとしてもフリーズした状態になります。

VDSL+ルータでの接続をしている事が原因なのでしょうか?

どうすれば、切断、接続を繰り返しても今回の様な事象に
なる事を防ぐ事が出来ますか?
327デフォルトの名無しさん:2013/04/30(火) 01:38:06.51
ハードの問題だと思うよ
328デフォルトの名無しさん:2013/04/30(火) 02:24:09.42
ソフトでも ハードでも

コンタクトレンズをつけたまま
329デフォルトの名無しさん:2013/04/30(火) 06:21:07.52
>>324
MSDNがより糞になったその仕様は最近のものなんだよね
少し前まではクラシック表示が選択できた
その前は、読み込みが少し遅いけどツリーが全部表示されていた

現状のオンライン版MSDNが最高のクソなのは確か。
330デフォルトの名無しさん:2013/05/01(水) 13:31:10.17
ASP.NETとC#のバージョンに関係性はありますか?

ASP.NET3じゃないとC#3.0以降は使えないとかありますか?
331デフォルトの名無しさん:2013/05/01(水) 14:27:14.08
ASP.NET3ってつまり.Net Frameworkが3って事だと思うんだが
対象のフレームワークバージョンで動くアセンブリ作るなら動くんじゃね
でもIISの設定とかあるから合わせる方が楽だと思う
332デフォルトの名無しさん:2013/05/01(水) 17:38:20.62
ASP.NETは.NET Frameworkの一部なので
独立したバージョンでは呼ばないな。
もしかしてASP.NET MVC Frameworkのことか?
333326:2013/05/01(水) 19:36:47.74
>>327
ルータのファームウェアを更新して
1日程度問題なく動く様になったのですが
また再び動作が怪しくなりました。


なんで、切断、接続をするだけで WEBページが見つかりません なんてエラーが出るのでしょうか?
デフォルトゲートウェイであるルータまでが見えないなんてすごく納得いきません。
334デフォルトの名無しさん:2013/05/01(水) 19:46:11.88
どう考えてもまともな用途じゃないんだから人に聞くなよ
335デフォルトの名無しさん:2013/05/01(水) 19:48:23.74
kakorokuでニコ生を録画したいのか?
336デフォルトの名無しさん:2013/05/01(水) 19:48:31.71
ルーター側だって簡単なOSが動いてんだよ
ドライバのできが悪いんだろうさ
これ以上くだらない話を続けるなよ
337デフォルトの名無しさん:2013/05/01(水) 19:50:35.35
ちなみにどこのルーターですか?
ババを引かされるのは嫌なので後学のために教えてください
338デフォルトの名無しさん:2013/05/01(水) 19:59:49.33
質問者もどうかと思うけど、これだけの情報でルーターの問題だと断定する奴も
どうかと思うけど。

とりあえず自動で接続とか切断とか、俺には何のことを言ってるのかさっぱりわからない。
普通なら疑うところはまずここだろうに
339デフォルトの名無しさん:2013/05/01(水) 19:59:50.66
>>336
ドライバの出来が悪いの?
しかし切断・接続を繰り返すだけでアクセス出来なくなるなら
HPに書いてろよ!!

>>337
教えない。地雷を踏んでください。
340デフォルトの名無しさん:2013/05/01(水) 20:00:33.38
ついでにファームのことをドライバとかいう奴も信用してはいけない
341デフォルトの名無しさん:2013/05/01(水) 20:00:54.90
>>339
「できが悪いルーターです」と書いたらお前が買わないだろww
342デフォルトの名無しさん:2013/05/01(水) 20:01:32.17
>>340
素人かよ
ファームとドライバは別もんだ
343デフォルトの名無しさん:2013/05/01(水) 20:02:33.06
>>338
今時ルーターの設定画面も見たことないようなお爺ちゃんはすっこんでればいいよ。
お前以外全員理解してるから。
344339:2013/05/01(水) 20:03:28.40
ファームウェアとドライバは別物なのですが
そんな事も分からない人はレスしないでください。


回線のつなぎ変えを繰り返すだけで
接続の出来なくなるのはやっぱり
プログラム外の問題ですか?
345デフォルトの名無しさん:2013/05/01(水) 20:04:39.20
>>342
馬鹿だろお前
346デフォルトの名無しさん:2013/05/01(水) 20:05:58.49
>>344
だから、その「回線のつなぎ変え」とは具体的にどういう操作なんですか?
そこが肝心だろう。
347デフォルトの名無しさん:2013/05/01(水) 20:08:31.69
>>346
全然肝心じゃねえよ頭腐ってんのかてめぇ。
348デフォルトの名無しさん:2013/05/01(水) 20:09:00.61
つか相手すんなよ
ぶち殺すぞ
349339:2013/05/01(水) 20:11:21.47
>>346
ルータ管理画面を開いて

切断 を押した後しばらくして 接続 を押す

それをプログラムで自動でやっているだけです。

>>347 >>348
お前らバカは他のスレに池
350デフォルトの名無しさん:2013/05/01(水) 20:12:42.78
WebBrowserでルーターの接続画面開いて切断ボタンやら接続ボタンやら押してるって話だろ?
WebBrowser使って自動ログインしたいとかその辺と同じ話で、そんな所にC#側の問題が介在する余地はねえだろ

諦めてメーカーに突撃しろ
351デフォルトの名無しさん:2013/05/01(水) 20:13:48.09
>>349
ルーターの管理画面ってどういうものですか?
そこも大事だぞ。
352デフォルトの名無しさん:2013/05/01(水) 20:14:21.40
>>349
ルーターの管理画面にそんなのある?
無線のイーサ子機の設定か何かと勘違いしてる気がする
353デフォルトの名無しさん:2013/05/01(水) 20:14:41.47
さすがC#
低レベル御用達
354デフォルトの名無しさん:2013/05/01(水) 20:15:57.31
>>352
お前こそさっきから何を言ってるんだ
355デフォルトの名無しさん:2013/05/01(水) 20:16:45.79
>>352
あんた自分の家のルーター設定したことないのか?
356デフォルトの名無しさん:2013/05/01(水) 20:17:55.59
>>354-355
ルーターの設定でどことどこを接続/切断するか設定するんだよアホか。
357デフォルトの名無しさん:2013/05/01(水) 20:19:43.09
>>356
冗談もそこまで行くと詰まらん
358デフォルトの名無しさん:2013/05/01(水) 20:21:39.66
ルーターの設定でどこに繋ぐって
グローバルIPを割り当てるサービスに繋ぐんだろう
普通プロバイダーだと思うけどな
359デフォルトの名無しさん:2013/05/01(水) 20:22:20.00
ITパスポートより酷い
360デフォルトの名無しさん:2013/05/01(水) 20:24:25.42
1日に何回もログインする人がいるとは思いませんでしたので、
ログイン履歴をそのまま放置していました。
10回もログインすると、メモリーが不足して、動作が不安定になります。


ルーターではないが……こんな製品もあるんだ……
361デフォルトの名無しさん:2013/05/01(水) 20:25:17.09
>>360
僕なら10リクエストごとにApacheを再起動しますね
362デフォルトの名無しさん:2013/05/01(水) 20:28:42.31
エレコムのルーターにバックドアが存在するって昔あったじゃん
安い製品なんてあの程度の作りだと思うけどねえ
かろうじて動く程度のしろもの
363デフォルトの名無しさん:2013/05/01(水) 20:34:38.24
                     /j
                   /__/ ‘,
                  //  ヽ  ', 、
                    //    ‘  ! ヽ        …わかった この話はやめよう
                /イ       ', l  ’
               iヘヘ,       l |  ’
               | nヘヘ _      | |   l       ハイ!! やめやめ
               | l_| | | ゝ ̄`ヽ | |〈 ̄ノ
               ゝソノノ   `ー‐' l ! ¨/
            n/7./7 ∧        j/ /     iヽiヽn
              |! |///7/:::ゝ   r===オ        | ! | |/~7
             i~| | | ,' '/:::::::::::ゝ、 l_こ./ヾ..     nl l .||/
             | | | | l {':j`i::::::::::::::::`ーr '         ||ー---{
              | '" ̄ ̄iノ .l::::::::::::::::::::::∧       | ゝ    ',
      , 一 r‐‐l   γ /、::::::::::::::::::::::::〉ー= ___  ヘ  ヽ   }
    / o  |!:::::}     / o` ー 、::::::::::::i o ,':::::::{`ヽ ヘ     ノ
   / o    ノ:::::∧   /ヽ  o  ヽ::::::::| o i::::::::ヽ、 /   /
   /    ノ::::::/    /::::::::ヽ  o  ヽ:::| o {::::::::::::::Υ   /
364デフォルトの名無しさん:2013/05/01(水) 21:00:45.90
いわゆる黄金厨
365デフォルトの名無しさん:2013/05/01(水) 21:20:12.14
>>349
他人の釣り場で勝手な事しないでもらえますか
366デフォルトの名無しさん:2013/05/01(水) 21:25:03.42
やはりkakoroku絡みだったか
367デフォルトの名無しさん:2013/05/01(水) 21:29:55.80
「ルーターの管理画面」でこんなに食いつかれると思わなかった
さすが
368デフォルトの名無しさん:2013/05/01(水) 21:36:52.38
ルーターなら普通TELNETでも接続できるから
TELNETで切断/接続するようにしたら?
そっちのほうが安定しそう。
369デフォルトの名無しさん:2013/05/01(水) 21:37:18.88
ELECOMとCANONは粗悪品多し
370デフォルトの名無しさん:2013/05/01(水) 21:39:46.21
まだ言ってるのか。
だから切断/接続ってどことどこの間のことだよ。
371デフォルトの名無しさん:2013/05/01(水) 21:39:46.32
>>368
マジか!?

参考サイトプリーズ
372デフォルトの名無しさん:2013/05/01(水) 21:43:24.78
>>371
え?
普通にtelnet 192.168.0.1
とかやってみたら?
373デフォルトの名無しさん:2013/05/01(水) 21:46:17.94
telnet で ルータの再起動とかって出来るんだねw
勉強になりましたwww

ブラウザベースでやる必要とかねーってことか。

一人の賢い人 と その他のバカども サンキュー
374デフォルトの名無しさん:2013/05/01(水) 21:50:27.19
ブラウザの問題じゃねーって言ってんのに
何で接続しようがお前のルーターはウンコだよ
375デフォルトの名無しさん:2013/05/01(水) 21:51:41.53
>>370
お前の首と胴体かな
376デフォルトの名無しさん:2013/05/01(水) 22:04:54.93
解決したならいいやん
377デフォルトの名無しさん:2013/05/01(水) 23:38:45.32
もう二度と来るなよ
378デフォルトの名無しさん:2013/05/01(水) 23:48:14.25
ブロードバンド回線が、CATVなどのDHCPだと、PPPoE のような接続/切断 の概念がないから、
>>356 みたいな人がいるのもあながち間違いではない気がする。
379デフォルトの名無しさん:2013/05/01(水) 23:59:11.14
>>378
だから、それはルーターの機能じゃなくてモデムの機能。
何を寝ぼけたこと言ってんの
380デフォルトの名無しさん:2013/05/02(木) 00:02:01.50
ISDNの時代、ルーター内蔵TAなんてあったからあれで勘違いしてるのがいるのかね。
よーわからん
381デフォルトの名無しさん:2013/05/02(木) 00:06:48.86
よくわからんがうちのAterm WR8150Nには
接続/切断あるよ
382デフォルトの名無しさん:2013/05/02(木) 00:22:55.30
天然スレッドストッパーの私が通りますよ
383デフォルトの名無しさん:2013/05/02(木) 01:49:23.83
>>379
おまえこそ何言ってるんだ?
最近のブロードバンドルータは PPPoE モードや DHCPモードなど WAN 側のいくつかあるが、
WAN側の設定を DHCP にすると、PPPoEの時と違ってルータの管理画面から接続/切断ボタンが消えるものが多い。

DHCPモードの時にブロードバンドルータの電源入れると、WAN側のポートにケーブルがつながっていれば、
即座にDHCPでIPアドレスを取りに行こうとする。

もちろん、PPPoEモードにすれば、管理画面に切断とか接続ボタンが復活する。
おれのもっている NTT-ME MN8300と NEC の WR8700N がそうだ。

だいたい、いまどきルータとモデムを別々に使っている人なんてほとんどいないだろ。
ブロードバンドルータにモデム機能も内蔵されているし、
ユーザから見て、PPPoE だろうが DHCP だろうが、モデムを使っているという意識はない。
いまどきモデムなんて言葉を知っているのは、我々を含めた一部のマニアだけだ。
(と、ブロードバンド時代の前にパソコンでネットにつないでいたひとたち)
384デフォルトの名無しさん:2013/05/02(木) 01:54:27.71
>>331-332
ありがとうございました
385デフォルトの名無しさん:2013/05/02(木) 01:57:50.49
だめだなこりゃ。
ネタでなく本気で>>383のように思ってるのならバカの壁としか言いようがない。
386デフォルトの名無しさん:2013/05/02(木) 02:31:44.42
例外のおっさんは相変わらず粘着質だなあ
387デフォルトの名無しさん:2013/05/02(木) 02:54:55.85
回線の接続切断とISPの接続切断がごっちゃになって齟齬が起きてるだけだろう。
故意のようにも見えるが。
388デフォルトの名無しさん:2013/05/02(木) 09:27:58.37
ウルトラマンさんがお怒りだぞ
389デフォルトの名無しさん:2013/05/02(木) 10:50:48.64
ルータで切断・接続なんてあたりまえだろ。
理解出来ないヤツはバカ

あと今の時代モデムを知らないヤツなんていねーよ
390デフォルトの名無しさん:2013/05/02(木) 11:03:22.42
なんでずっとC#と関係ない話してんの?
391デフォルトの名無しさん:2013/05/02(木) 11:33:57.11
切断・接続なんて無いっていってる人がいるから
392デフォルトの名無しさん:2013/05/02(木) 15:07:05.15
>>390
そもそも糞スレだから
393デフォルトの名無しさん:2013/05/03(金) 14:41:44.43
流れぶった切って悪いが、質問です
javaで書かれてる動画処理(モーショントレース)のやつをc#かc++に移植しようと思うんだけど、どちらがいいかな(互換性、拡張のし易さそして、コンパイルしたプログラムの軽さ的に)
394デフォルトの名無しさん:2013/05/03(金) 15:00:01.23
C#
395デフォルトの名無しさん:2013/05/03(金) 15:02:30.14
C#スレでそういう質問をするのはナンセンスだな。C++スレでは別の答えがあるだろう。
396デフォルトの名無しさん:2013/05/03(金) 15:04:46.43
少なくともJavaで書かれて使われているってことは
それで満足な速度が出るんだろうと言う想像はつく
397デフォルトの名無しさん:2013/05/03(金) 15:09:01.25
別にそんな意地の悪い回答をするような質問じゃないと思うが...
誰が考えてもパフォーマンス以外の要素ではC#が圧倒的に有利に決まってる
398デフォルトの名無しさん:2013/05/03(金) 15:54:18.29
うるさいゴミ
399デフォルトの名無しさん:2013/05/03(金) 15:57:09.30
398 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん
400デフォルトの名無しさん:2013/05/03(金) 16:04:12.07
>>396
逆なんだな…
開発者がスペックに物言わせて、メモリリーク並みのメモリ消費を放置、機能抜いて改善する感じの状態ww

一応、c++でも聞こうかとは思うけれど、マルチになるかなぁと思いまして…
401デフォルトの名無しさん:2013/05/03(金) 16:08:53.79
パフォーマンス改善したいのならC++しかない
だたし、時間がかかる部分だけC++で、その他はC#というのもあり
402デフォルトの名無しさん:2013/05/03(金) 18:26:15.93
J#とかIKVMとか答えるのが風流
403デフォルトの名無しさん:2013/05/03(金) 19:35:09.42
>>401
ハイブリッドか
c#から呼び出すってことやろ?
404デフォルトの名無しさん:2013/05/03(金) 19:43:21.42
>>403
おうおうにして間にC++/CLIが挟まるけどそういうこと
405デフォルトの名無しさん:2013/05/03(金) 20:00:30.44
P/Invokeか
大変だぞあれ
共有メモリとMarshalを使えばそうでもないかもしれんけど
406デフォルトの名無しさん:2013/05/03(金) 20:03:59.13
>>405
いや、C++/CLIでC#用のラッパを作るだけよ
407デフォルトの名無しさん:2013/05/03(金) 20:29:45.25
>>404
なるほどね。
ちょ、調べてやってみるわ
408デフォルトの名無しさん:2013/05/03(金) 22:24:43.62
お前らはインターフェイスを宣言して使ったことがありますか
インターフェイスってどういう時に役に立つのかわからないなーって思った
409デフォルトの名無しさん:2013/05/03(金) 22:27:19.26
IDeepCloneable
IThisLock
ぐらい
410408:2013/05/03(金) 22:37:06.15
javaの本とか見ていると、ポリモーフィズムを使いまくっているよね
java屋はポリモーフィズムのことを、あんなに考えてプログラム組んでるのか?
411デフォルトの名無しさん:2013/05/03(金) 22:59:16.59
目に見えて役に立つのは、
多重継承回避と、一部の機能のしかさわらせたくない場合かな
あとは、リフレクションを使ったプラグイン的なことをする時とか

まあ多重継承回避以外はクラスでもできるんだけどね

実装を直接公開すると、お互いのクラスがすごく密に繋がってしまう
メンバを増やすと、実装を公開している全ての箇所で直ちに使えるようになるし

インタフェースでそのあたりが解消される
密でもいい状況なら別にいいんだけどね
412デフォルトの名無しさん:2013/05/03(金) 23:24:55.77
こういう質問をする人にそんな抽象的な話が理解できるとは思えませんがw

インターフェイスで何ができるかを理解するのは難しくないと思うけど、
C#の場合機能が一部重複するデリゲートがあったりするので
Javaより一段話がややこしいかも
413デフォルトの名無しさん:2013/05/04(土) 00:07:44.27
>>412
デリゲートは実装を強制させたりする事が出来ないし、リスナーの代替機能として使われているだけなので
インターフェイスとは役割が違うような気がする

デリゲートってタイプセーフな関数ポインタでしょ
関数ポインタは「インターフェイスと機能がかぶっている」と言っているのと同じじゃない?
414デフォルトの名無しさん:2013/05/04(土) 00:55:19.23
リスナをJavaではインターフェイスで実現してC#ではデリゲートで実現する訳で、その部分は同じ役割でしょ
415デフォルトの名無しさん:2013/05/04(土) 01:14:31.36
>>413
何を反論されてるのかよくわかんない。
役割が同じなんて言ってないよ。
機能が一部重複すると言ってるんですが。
416デフォルトの名無しさん:2013/05/04(土) 01:21:08.86
まぁた言葉の定義に踏み込んでああでもないこうでもないってムダに話が長くなる

☆ 予 ★ 感 ☆
417デフォルトの名無しさん:2013/05/04(土) 05:15:49.87
C#を使った開発で、XAMLを使うらしいんですが、
やけにやや古いバージョンでの開発経験があるかどうか確認されました。

C# + XAMLで、.NET 2.0 (=C#2.0)で開発することなんてあるのでしょうか?
WPFもsilverrightも.NET3.0からですよね?
418デフォルトの名無しさん:2013/05/04(土) 05:24:14.42
(Formsから移植しろとか言うのかな)
419デフォルトの名無しさん:2013/05/04(土) 08:41:26.71
>>408
とりあえずMEF
420デフォルトの名無しさん:2013/05/04(土) 10:10:50.14
なんか現場のマネージャーが元開発者だったらしくて、すげぇうえから目線で会話してくんだけどさ。
でももうコーディングしてないし、自分からPGのキャリアパス捨てといてまだ現役気取りとかうざすぎる。
しかも質問してもまともな回答まったくないからレベル低いと思ってんだけど、どうやったら確かめられるかな?
諸先輩方はこういうときどうやってやり込めますか?
421デフォルトの名無しさん:2013/05/04(土) 10:20:20.32
争いは、同じレベルの者同士でしか発生しない
422デフォルトの名無しさん:2013/05/04(土) 11:33:42.13
あーはいはい、って答えとけばいいんだよ。
まあすっっっっっごく同情するけど。
423デフォルトの名無しさん:2013/05/04(土) 12:08:03.02
答えると「お前みたいに甘やかすカスがいるからレベルが低くなるんだ」とイチャモン付ける
頭のイカれたuyが常駐してるもんな
424デフォルトの名無しさん:2013/05/04(土) 12:10:32.38
マ板でやれ
425デフォルトの名無しさん:2013/05/04(土) 12:59:33.77
と図星を突かれた粘着が発狂しております

お前がいつもマ板でやるべきネタレスをしたりネタスレを立ててる癖に、人がやると
途端に目くじら立てるのな

分かりやす過ぎ
426デフォルトの名無しさん:2013/05/04(土) 13:15:17.33
なんでもいいけどもうせめてもう少し笑えるネタを書いてよ
427デフォルトの名無しさん:2013/05/04(土) 13:35:07.58
春ですね
428デフォルトの名無しさん:2013/05/04(土) 13:36:16.69
妄想ならいくらでも書けそうだが

現実の現場にゃ笑えないネタしかないんだよ
429デフォルトの名無しさん:2013/05/04(土) 13:43:38.14
現実現実ってそのしょっぱい現実にお前を導いたのはお前自身のくせに何を
430デフォルトの名無しさん:2013/05/04(土) 13:50:20.80
そそ元と言えばそういう現実にしか行けないお前が悪い
431デフォルトの名無しさん:2013/05/04(土) 13:56:57.36
まあ、無能な自分を棚に上げて「ブラックガー」って吹き上がってる馬鹿、2chには多いねw
432デフォルトの名無しさん:2013/05/04(土) 14:02:22.10
そうそう。↑とか。
433デフォルトの名無しさん:2013/05/04(土) 14:10:15.41
そうそう。↑も
43472:2013/05/04(土) 14:28:28.02
Rev Sync On (笑)
435デフォルトの名無しさん:2013/05/04(土) 14:34:29.53
>>434
笑いのツボが人とずれてる自分を、その自覚もなく平気で晒している様が
逆説的に笑える(かもしれない)、というネタでしょうか。

悪いけどやっぱり全然面白くないよ
43672:2013/05/04(土) 14:38:05.66
Rev Sync On (笑)
437デフォルトの名無しさん:2013/05/04(土) 14:40:47.38
ハブられた435w
438 忍法帖【Lv=40,xxxPT】(1+0:5) :2013/05/04(土) 14:42:18.86
PGのキャリアパス
PGのキャリアパス
PGのキャリアパス
439デフォルトの名無しさん:2013/05/04(土) 14:43:18.23
C#の話しようぜ
419で思い出したけどMEFってどうなん?
C#に人気アプリなんて無いのに誰がプラグインを供給する設定?
440デフォルトの名無しさん:2013/05/04(土) 14:44:06.83
自分の主観と客観が区別が付かなくなったら人間終わりだね。
残念ながら2chにはそういう終わってる(その上終わってる自覚もない)奴が多い。
バブルのちょっと後に脳内革命って本が流行ったけど、あの本の主張が今頃になって結実したんだろうか
441デフォルトの名無しさん:2013/05/04(土) 15:22:36.07
[Mac/NUC] AGK / DarkBASIC / Basic4GL / 99BASIC 2013 Part.1
http://jbbs.livedoor.jp/bbs/read.cgi/computer/43761/1367197701/l100
442デフォルトの名無しさん:2013/05/04(土) 15:48:42.64
なるほど自分が変だから世の中が変に見えるとは思わないんだ。
まあ変な奴はたいがいそうだが。
443デフォルトの名無しさん:2013/05/04(土) 16:05:24.24
>>439
積極的に供給されてるのはVisual Studioの拡張くらいしか知らない
VisualStudioの拡張は2010からMEFのはず
444デフォルトの名無しさん:2013/05/05(日) 17:49:29.31
プラグインというかMEFは実行時にコンポーネントを掻き集めてアプリを構成してくれる仕組み
画面ごとにDLL分けてるような業務アプリなんかで使うと便利なんだと思う
公開プラグインに使おうと思うと、MEFに任せて終わりじゃなくて
AppDomainを分離して落ちにくくしたりとかいろいろ考慮すべきことが多いんじゃないかと
445デフォルトの名無しさん:2013/05/07(火) 12:27:20.08
コンポーネント間の依存関係がぐっちゃぐっちゃな場合・・・
というか、柔軟性が求められる場合に活躍するのがMEFだな。

大規模アプリでも綺麗な設計ができる天才には必要ないけど
平凡なプログラマにとっては非常に助かる存在。
446デフォルトの名無しさん:2013/05/07(火) 15:13:47.85 ID:+CoJPM/b0
MSはDI Frameworkに否定的だったから、
MEFはSystem.AddInの代替的な位置づけだね。
System.AddInは使いづらかった。
447デフォルトの名無しさん:2013/05/07(火) 19:39:01.86
手軽だけど柔軟かなぁ
例えばアセンブリ署名のチェックとか出来ないよね
結局自分で書いてもDLL読み込んで公開インターフェースで型検索してインスタンス化するだけだから楽したい時用だと思うんだけど
それともアセンブリアンロードとかMEFでしか出来ないような事があるの?
448デフォルトの名無しさん:2013/05/07(火) 21:57:57.91
>>447
ホットスワップ対応ってことかな
使ってる途中でプラグインdllの入れ替えが出来る
449デフォルトの名無しさん:2013/05/08(水) 15:35:46.47
C#の質問より.NETの質問かもしれませんが、
C#でタッチパネル対応のアプリケーションを作るにはWPF4以降じゃないと駄目なのでしょうか?

なんかC#でタブレットのアプリの開発を任されたのですが
C#の古いバージョンでの開発経験があるかどうか問われたので
今更LINQもないC#で開発するのか気になったのですが
450デフォルトの名無しさん:2013/05/08(水) 18:08:13.11
タッチパネルのどの機能が欲しいんだ?
451デフォルトの名無しさん:2013/05/08(水) 19:00:31.65
>>450
普通にタッチしたりとかスマホみたいなUIです
452デフォルトの名無しさん:2013/05/08(水) 19:02:41.39
いや、>>451は取り消してください

タッチパネルだからといって、スマホみたいなインターフェースとは限りませんね・・・
453デフォルトの名無しさん:2013/05/08(水) 22:32:03.26
だから何の機能がほしいんだよ
必要な物くらい把握してないのか?
454デフォルトの名無しさん:2013/05/09(木) 00:40:10.86
はい
455デフォルトの名無しさん:2013/05/09(木) 09:03:40.68
>>453
おまえには教えない
456デフォルトの名無しさん:2013/05/09(木) 10:02:39.12
たっちょんぱ
457デフォルトの名無しさん:2013/05/10(金) 21:33:21.99
質問です

FtpWebRequestを使ってFTPでファイルをアップロードする際に、
ディスクフルを検知する方法はありますか?

ディスクフル時にWriteの出す例外は
ディスクフル以外でも出うるようなIOExceptionでしかなかったので……
458デフォルトの名無しさん:2013/05/12(日) 04:44:18.43
459デフォルトの名無しさん:2013/05/13(月) 20:50:06.79
来月中にC#覚えないと首だといわれたのですが、C#とVIJUAL C# って別物?
一般的にC#って なにをさすのですか?
460デフォルトの名無しさん:2013/05/13(月) 20:51:29.86
中1レベルの英語から始めたほうが良いと思う
461 忍法帖【Lv=40,xxxPT】(1+0:5) :2013/05/13(月) 20:53:07.56
C#の勉強より退職届をきれいに書く練習したら?
462デフォルトの名無しさん:2013/05/13(月) 20:56:10.09
VIJUALwww
463デフォルトの名無しさん:2013/05/13(月) 21:00:21.54
変数名すごいことになってそう・・・
464デフォルトの名無しさん:2013/05/13(月) 21:25:35.47
>>459
悪いことはいわないから、覚えずにクビになりなさい。
465デフォルトの名無しさん:2013/05/13(月) 21:27:55.54
覚えてもろくな事にならない
466デフォルトの名無しさん:2013/05/13(月) 22:03:21.54
PC遠隔操作事件に関して質問です。

1月5日に江ノ島の猫の首輪についていた「iesys.exe」のソースコードを
つけたのは、遠隔操作犯とは別の便乗犯であり、
そのソースコードは「iesys.exe」のバイナリを逆コンパイルしたものを
解析、コメントを付与し、あたかも自らが作ったように偽装したもの
だったという説があります。

この説は明確な根拠を以て否定できるのでしょうか?


否定の例)
 逆コンパイルソースには必ず○○という情報がついてしまう。
 C#に詳しい捜査官であれば、この点を見逃すことは無いはずである。
467デフォルトの名無しさん:2013/05/13(月) 22:04:10.43
C#なら逆コンパイル簡単にできるしありえるな
468デフォルトの名無しさん:2013/05/13(月) 22:07:42.13
逆コンパイルしたソースってただのテキストだぞ
469デフォルトの名無しさん:2013/05/13(月) 22:09:30.86
>>468
当然ながら便乗犯は、偽装のために.slnや .csproj は手製で作成していた
ということが前提の説ですよ。
470デフォルトの名無しさん:2013/05/13(月) 22:11:04.20
*.csしか入ってなかったんじゃね
471デフォルトの名無しさん:2013/05/13(月) 22:37:50.34
まだこんな探偵ごっこしてるのか
進歩ねえ脳味噌だな
472デフォルトの名無しさん:2013/05/13(月) 22:39:06.66
つかあの時点でアプリ名とかどのアプリだったとか
一般人は知らなかったのでは?
473デフォルトの名無しさん:2013/05/13(月) 23:10:33.85
>>472
11月の時点でこんな記事がある。

internet.watch.impress.co.jp/docs/news/20121109_571902.html
474デフォルトの名無しさん:2013/05/13(月) 23:12:25.94
>>466
裁判官なんて、結論ありきで後から理由付けするんだから、そんなのどうでも良いよ。
もちろん結論は気分次第な。
475デフォルトの名無しさん:2013/05/13(月) 23:28:39.56
>>474
「実」より「情」で判決が出ちゃう現状だからこそ、
技術論で真実を探求しておく必要があるんじゃないか?
476デフォルトの名無しさん:2013/05/13(月) 23:32:56.66
探偵ごっこすんなとか、裁判なんていいかげんとか言ってる奴って
結局、技術的な見解が言えないから管を巻いてるだけなんだよなw

かく言う俺も技術さっぱりだけどなw
477デフォルトの名無しさん:2013/05/13(月) 23:33:35.63
逆アセンブラなんか誰でもできるんだから
その辺りの知識があればソース作るなんて無駄なことはしないわな
478デフォルトの名無しさん:2013/05/13(月) 23:33:52.19
裁判官は「真実」に拘束されないんだよ。
物理法則に逆らってもOKだし、黒を白と言ってもOKなんだよ。
479デフォルトの名無しさん:2013/05/13(月) 23:36:39.05
>>477
以前、ニュー速+で逆アセンブル説を紹介したら、
「荒唐無稽な説」とか言われたけど、そうでもないの?
480デフォルトの名無しさん:2013/05/13(月) 23:38:45.54
>>478
日本の司法は、自由心証主義を採用しているからねw

Wikipedia 自由心証主義
ja.wikipedia.org/wiki/%E8%87%AA%E7%94%B1%E5%BF%83%E8%A8%BC%E4%B8%BB%E7%BE%A9
481デフォルトの名無しさん:2013/05/13(月) 23:39:40.19
中間言語のままのほうが読みやすいし
482デフォルトの名無しさん:2013/05/13(月) 23:44:46.31
真実を見極める目がないから質問してるくせに笑っていい所なのか?
483デフォルトの名無しさん:2013/05/14(火) 00:26:20.64
特定のexeやdllファイルから抽出するのではなく、拡張子ごとに
関連付けられている、48 x 48 とか 256 x 256の
特大アイコンを取得したいんですが、手掛かりがありませぬ。

ググると出てくるのが下記のページ。
http://iamignorant.blog11.fc2.com/blog-entry-22.html
肝心のOpenSourceのサイトがリンク切れで、
どのライブラリ(クラス)をどう使ったのか、さっぱりわかりません。

この情報、もしくは他の方法で、関連付けられたアイコン取得方法、
どなたか知っておられましたらお願いします。
484デフォルトの名無しさん:2013/05/14(火) 00:32:03.86
SystemImageListSizeでググるとなんか出てくるけど有償だな
まあInternet Archiveで見れるが
485デフォルトの名無しさん:2013/05/14(火) 00:51:16.26
SHGetFileInfo とか? 使ったことないし .net じゃないけど。
ぐーぐる先生がたくさん知ってるぞ。

いっそフリーソフトとかで取って来ちゃう方が楽じゃね。
486デフォルトの名無しさん:2013/05/14(火) 01:20:32.78
SHGetFileInfo だと、32 x 32までしか取れないのだそうです。
ファイル一覧を表示するために動的に?取得したいと思いまして><

で、
>>484 さんのヒントから
"SystemImageList"で検索したところ、それっぽいのが見つかりました。
なんとかなりそうです。

http://code.ohloh.net/file?fid=hED4hQU88mgoBYgQS8RvTofj4q0&cid=jTTGV077TBw
487デフォルトの名無しさん:2013/05/14(火) 08:18:55.67
結局、逆コンパイルの件について確かなことが
言える人はいないのか…
488デフォルトの名無しさん:2013/05/14(火) 08:43:07.52
はいはい終了終了
489デフォルトの名無しさん:2013/05/14(火) 13:02:27.55
>>488
そうやって無理やり終わらせようとする

さては犯人だな?
490デフォルトの名無しさん:2013/05/14(火) 13:05:11.42
記念真紀子
491デフォルトの名無しさん:2013/05/14(火) 18:18:19.84
馬鹿って罪深いな
492デフォルトの名無しさん:2013/05/15(水) 13:01:02.18
MenuStripにAltを押したときのみ表示というような機能はありませんか?
493デフォルトの名無しさん:2013/05/15(水) 14:23:55.42
あるかもしれないけど、なければvisibilityとbindingしなよ。
494デフォルトの名無しさん:2013/05/16(木) 20:06:14.18
どこに聞いてよいか分からないので、こちらで質問させてください。

SQLServerのCLR関数を使いたくdllを作っているのですが、
Assembly.LoadFromの関数を使うとエラーになってしまいます。

どのように設定すればLoadFromが使えるようになるのでしょうか?
よろしくお願いいたします。

以下エラー文
ユーザー定義のルーチンまたは集計 "Test" を実行中に .NET Framework エラーが発生しました:
System.IO.FileLoadException: LoadFrom()、LoadFile(、Load(byte[]) および LoadModule() はホストによって無効にされています。
System.IO.FileLoadException:
場所 System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
場所 System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
場所 System.Reflection.Assembly.LoadFrom(String assemblyFile)
場所 TestDll.Class1.Test(SqlInt32 patientNumber)
495デフォルトの名無しさん:2013/05/16(木) 21:18:12.28
LoadFrom では、指定されたパスに対する Read と F:System.Security.Permissions.FileIOPermissionAccess.PathDiscovery、または WebPermission が必要です。
496デフォルトの名無しさん:2013/05/16(木) 22:42:29.27
>>494
SQL CLRを動かす際には、SQL Server側の設定も必要なんだよ
初期の状態では権限が足りなくて、.NETからファイルの読み書きとかが出来ないようになっている
有償のEditionだとGUIから設定可能だけど、ExpressEditionはSQL打って設定を変えなきゃいけない

VisualStudioから設定してもうまく動かない時があった。
SQL CLRの設定はSQL Serverで確認してみてね!!
SQL Serverの設定と.NETストアドの配置がめんどいよー
497デフォルトの名無しさん:2013/05/20(月) 18:33:31.39
C#の解析を防止したいのですが、どうするのがいいのでしょうか?
498デフォルトの名無しさん:2013/05/20(月) 18:34:53.08
解析した者に対する呪いを込めながらプログラミングする
499デフォルトの名無しさん:2013/05/20(月) 18:35:43.73
平文で書いた暗号を敵に読まれたくないのですが
500デフォルトの名無しさん:2013/05/20(月) 18:38:08.57
>>498
ソースコードを見られたくないです
501デフォルトの名無しさん:2013/05/20(月) 18:48:10.15
俺みたいに解析防止されているものをさらに解析するお仕事の人間もいるので
ぶっちゃけ素人の対策なんて玩具に等しい
502デフォルトの名無しさん:2013/05/20(月) 18:50:11.48
そして今のところ呪いは功を奏していないようだ
503デフォルトの名無しさん:2013/05/20(月) 18:56:40.62
死ね〜(呪い)
504デフォルトの名無しさん:2013/05/20(月) 19:05:02.94
C#でウィンドウズフォームアプリを作ってるんですけど、
コントロールの名前ってどうつけたらいいんですか?

textBox1, textBox2ってかっちょわるいし、具体性にかけるとおもう
505デフォルトの名無しさん:2013/05/20(月) 19:16:25.76
検索ボックスならtxtSearch
名前欄ならtxtName
506デフォルトの名無しさん:2013/05/20(月) 19:19:15.92
>>505
なるほど
ハンガリアン記法風がよさそうですな
ありがとうございます
507デフォルトの名無しさん:2013/05/20(月) 19:20:06.86
先頭からtxt001,txt002,...とつけてexcelで管理
新しいコントロールの追加は決められた書式で
申請して許可を取ること
508デフォルトの名無しさん:2013/05/20(月) 20:46:50.55
かっこいい名前

txt漆黒ノ呪文サーチティニング
txt女王より賜りし剣の名前
509デフォルトの名無しさん:2013/05/20(月) 22:00:44.88
ORMを使って開発している人いますか?
510デフォルトの名無しさん:2013/05/20(月) 22:01:55.00
txtじゃテキストボックスなのか文字列なのかいまいち分からない
511デフォルトの名無しさん:2013/05/20(月) 22:16:15.25
C#では通常ハンガリアン記法は使わないからstringに
txtプレフィクスをつけるようなことはしない。
例外的にフォーム上のコントロールなどは
ハンガリアン記法が有効なケースがある。
よってtxtを文字列と勘違いすることは無い。
512デフォルトの名無しさん:2013/05/20(月) 22:18:14.62
ハンガリアン記法という言葉は誤解を生むので
単にプリフィクスと言えば良い
513デフォルトの名無しさん:2013/05/20(月) 22:19:06.01
韓が李安
514デフォルトの名無しさん:2013/05/20(月) 23:13:04.07
モンゴリアンチョップは関係ないか・・・
515デフォルトの名無しさん:2013/05/20(月) 23:34:00.37
wpfよりwindowsformsの方が楽だなー
flexはすごく楽なのに
516デフォルトの名無しさん:2013/05/21(火) 00:00:39.61
まゆしぃ「л ψ こんがりぃ」
517デフォルトの名無しさん:2013/05/21(火) 14:21:12.17
txt後藤真希
txt矢口真里
txt石川梨華

ってサンプルなら見たことある
518デフォルトの名無しさん:2013/05/21(火) 15:25:48.01
chbHoge
tbHage
btnHige
cmbFoo
pnlBar
gbBaz
519デフォルトの名無しさん:2013/05/21(火) 17:25:57.34
古くせえネーミングだな
今は省略も英訳もしないのが普通

textBox_名前
comboBox_都道府県
520デフォルトの名無しさん:2013/05/21(火) 17:56:44.86
きめえw
521デフォルトの名無しさん:2013/05/21(火) 18:15:35.52
読む時は良いけどコーディングするとき面倒じゃない?
長ったらしいコントロール名の後に日本語入力モードにして・・・って
522デフォルトの名無しさん:2013/05/21(火) 18:22:55.21
IntelliSense前提だろうなあ
523デフォルトの名無しさん:2013/05/21(火) 18:25:45.15
支那チョンから漢字orハングルだらけのソース受け取ったらどんな気分になるかね
524デフォルトの名無しさん:2013/05/21(火) 22:18:40.80
ソースファイルを分けることでのデメリットってありますか?
分けすぎると重くなったりしますか?
525デフォルトの名無しさん:2013/05/21(火) 22:34:56.30
そんな寝言を言ってるようなレベルで重さとか気にする意味は全くない
必要に応じてどんどん分けろ
526デフォルトの名無しさん:2013/05/21(火) 22:42:26.04
「重くなったりしますか?」という考え方が間違ってる。
実際問題なく動作してるならどんな非効率なコードでもいいんだよ。それより動くものをさっさと作れ。
ファイルというかクラスを分けることによってオーバーヘッドが増えたりメモリ使用量が増えたり
というのも全くないとは言わないが、普通はまず問題にならない。そういうのは問題になってから考えること。
527デフォルトの名無しさん:2013/05/21(火) 23:14:22.68
普通軽くするために分けるんじゃね
528デフォルトの名無しさん:2013/05/21(火) 23:29:17.57
実行効率よりVSが重くなるのが先
1人で作る分には問題無いだろうが
529デフォルトの名無しさん:2013/05/21(火) 23:38:30.12
そうかならどんどん分けてくわ
530デフォルトの名無しさん:2013/05/29(水) 18:49:49.68
XSLTの読み込みに失敗します。DTDにはルートノード名を書かないと
いけないと思っているのですが、そうするとルートノード自体が
宣言されていないと言われます。環境は VisualStudio 2005 です。

XSLTは以下です。

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE xsl:stylesheet [
<!ENTITY nbsp " ">
]>
<xsl:stylesheet version="1.0" xmlns:xsl="ここはテンプレ通り">
</xsl:stylesheet>

コードは↓のようにしています。長いので分けます。
531デフォルトの名無しさん:2013/05/29(水) 18:52:05.44
XmlReaderSettings stgs = new XmlReaderSettings();
stgs.ProhibitDtd = false;
stgs.ValidationType = ValidationType.DTD;
XmlReader rd = XmlReader.Create(@"a.xsl", stgs);
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load(rd);

xslt.Load で"'xsl:stylesheet' 要素が宣言されていません"と例外が発生します。

よろしくお願いします。
532デフォルトの名無しさん:2013/05/29(水) 18:57:51.93
>>531
中身が無いんだろ。
533530:2013/05/29(水) 19:10:16.29
>>532
あ、中身はあります。↓のようなカンジです。

<xsl:stylesheet version="1.0" xmlns:xsl="テンプレ〜">
<xsl:template match="text()" />
<xsl:template match="/Contents">
<Section>
<Text ID="Text1">
<Segment><xsl:value-of select="Content"/></Segment>
</Text>
</Section>
</xsl:template>
</xsl:stylesheet>

DTD部分がなければ読めるんですよ(>_<)
534デフォルトの名無しさん:2013/05/29(水) 19:22:44.72
ドキュメントには、ValidationType に DTD セットするときは、DtdProcessing に Parse をセットしろとあるが、それは?
535デフォルトの名無しさん:2013/05/29(水) 19:24:30.44
おっと.NET Frameworkのバージョン古いかも
536530:2013/05/29(水) 19:35:32.89
>>535
ですね。.NET2.0には DtdProcessing プロパティがないです。
ドキュメントのサンプルにあった XmlReader.Read を使った処理は動くんですけどね…
537デフォルトの名無しさん:2013/05/29(水) 21:25:21.64
ValidationType消したら動いた(.NET 4)
538デフォルトの名無しさん:2013/05/29(水) 21:45:12.69
あるインターフェースAの実装クラスCをWCFで公開したいのですが、Aの定義が変更できないので
中間に派生インターフェースBを作ろうと思っています。

public interface A
{
int aMethod(int a);
}

[ServiceContract]
public interface B : A
{
[OperationContract]
int aMethod(int a); //★
}

public class C : B
:(略)

このとき、メソッドに[OperationContract]属性を付けるには★印のように同じシグネチャの宣言を
記述するしかないんでしょうか?また、そのときA.aMethod(int)が隠蔽されますが、そのことで
不都合はないでしょうか?
539デフォルトの名無しさん:2013/05/29(水) 22:21:57.24
インターフェイスの定義を変更とか、インターフェイスの意味なくね?
540デフォルトの名無しさん:2013/05/29(水) 22:23:43.17
インターフェースってC++で言う所の抽象クラスみたいな物か
541デフォルトの名無しさん:2013/05/29(水) 22:28:18.56
隠蔽する時は new 付けるとかなかったっけ?
元のを呼ぶときは super だか base だかで呼べば良いんだろ?
(C#とJavaごっちゃになっててすまん)
542デフォルトの名無しさん:2013/05/29(水) 22:32:00.46
インターフェイスの隠ぺいだからクラスとはまた事情が違う
543デフォルトの名無しさん:2013/05/29(水) 23:26:00.46
>>539
変更したいわけではなくて、Aの定義そのままでWCFに必要な属性を付けたいだけです。

>>541
そこが気になるところで、継承ではなく隠蔽なので厳密にはA.aMethodとB.aMethodは
別物となると思うんですが、公開されるのはBとその実装であるCと決まっているので
問題ないと考えていいのか?ですね。

そもそもこういうケース、WCFではどうするのが普通なんだろう?元のインターフェースAを
修正して属性を付加することしか想定されていないのかな?
544デフォルトの名無しさん:2013/05/29(水) 23:34:55.54
BがAを継承する必要性がない
545デフォルトの名無しさん:2013/05/29(水) 23:35:28.89
委譲じゃね
546デフォルトの名無しさん:2013/05/30(木) 00:06:36.13
MSDN の ServiceContractAttribute の説明では、インターフェイスの継承は可能とある。
普通だと、A と B の定義は別で、実クラスで両方のメソッドを入れるのが思い浮かぶけど、
WFCだし、いろいろ試してみては。
547デフォルトの名無しさん:2013/05/30(木) 00:10:50.63
>>544
Bなしでやる方法ありますかね?
ChannelFactoryはクラスじゃなくてインターフェースを要求するから
AをCが直接実装する形じゃできないと思ったんだけど。
548デフォルトの名無しさん:2013/05/30(木) 00:23:58.32
>>547
Bの定義を変えれば?って話
549デフォルトの名無しさん:2013/05/30(木) 00:46:30.76
あー、いや、CがAを継承する必要がないならもともと問題は生じないわけなんで、
そこは大前提ってことで。
ってあれ?シグネチャが適合すれば継承関係がなくても C as A って
成功するんでしたっけ?もしそうなら、たしかにBはAを継承する必要がないですが。
550デフォルトの名無しさん:2013/05/30(木) 03:07:08.51
B : A はやめて
C : A, B ってことだろ
551デフォルトの名無しさん:2013/05/30(木) 07:31:06.33
>>550
そうするメリットがよくわかりませんが、この場合、CreateChannelで得られるBから
インターフェースAを求められないのでダメですね。
552デフォルトの名無しさん:2013/05/30(木) 09:27:36.74
Aの定義が変更できないなら
実装クラスに属性をつけるしかないだろ
553デフォルトの名無しさん:2013/05/30(木) 16:12:31.80
そもそも属性って定義の一部なのか?
あれは実装の一部じゃないのか?
554デフォルトの名無しさん:2013/05/30(木) 19:20:48.16
wcfはwebserviceみたいなものだから、
ホスト側のオブジェクトとリモート側のクラスは本質的に別物だろ。
シグネチャさえあってりゃ良いのではない?
試してないけどName指定で名前合わせてみればどうだろ。

[ServiceContract(Name="A")]
public interface B
{
 [OperationContract]
 int aMethod(int a);
}
555デフォルトの名無しさん:2013/05/30(木) 20:31:10.50
>>551
サービスで公開してないメソッドが使えるわけないだろ
556デフォルトの名無しさん:2013/05/30(木) 22:56:57.22
>>554
なるほど、そういうこともできるんですか。
ただ今回、クライアント側もAの定義を持っていて、その場合はうまくいきませんでした。
クライアント側でAを再定義できるならそれでいけそうですが。
今回、既存のインターフェースであるAをWCFで位置透過に操作できるようにしたかったんですが、
WCFでそれをやるにはA自身に手を入れなきゃダメってことですかね。
557デフォルトの名無しさん:2013/05/31(金) 06:58:50.32
クライアント側でBのラッパー作ってAにすればいいだろうが
558デフォルトの名無しさん:2013/05/31(金) 08:37:46.94
AとBのラッパーにするしかないかなと思ってたけど、BをラッパーでAにするってのは
具体的にどうすればできるんでしょう?
559デフォルトの名無しさん:2013/05/31(金) 12:36:38.51
A(){
 B();
}
560デフォルトの名無しさん:2013/05/31(金) 16:39:10.15
馬鹿コードでしたw
561デフォルトの名無しさん:2013/05/31(金) 18:57:55.41
芝を生やすとバカに見えるぞ
注意しよう
562デフォルトの名無しさん:2013/05/31(金) 19:02:39.67
オマエガナー↑
563デフォルトの名無しさん:2013/05/31(金) 21:37:42.53
クラスの中に、staticなコレクションで自身のインスタンスを持つ、
次のようなクラスを書きました。

class Person
{
static Dictionary<int, Person> list = new Dictionary<int, Person>();

public int ID { get; private set; }
public string Name { get; private set; }
public string Kana { get; private set; }

public static Person GetPerson(int id)
{
return list.ContainsKey(id) ? list[id] : null;
}

public static bool Add(int id, string name, string kana)
{
if (list.ContainsKey(id)) return false;
var p = new Person();
p.ID = id;
p.Name = name;
p.Kana = kana;
list.Add(id, p);
return true;
}
}

他の人に言わせれば、相当違和感があるコーディングなようです。
このコードにはどんな問題がありますか?
デザインパターンから見て、このようなコードはありえない or やめるべきですか?
564デフォルトの名無しさん:2013/05/31(金) 21:54:53.23
PersonはAddしたいオブジェクトなのに
その操作がPersonクラス自体を対象としてて
そのコレクションをPerson自体が持っているというのはどうかな

void PersonCollection.Add( Person )とか
Person PersonFactory.Create()みたいにしたくならない?
565デフォルトの名無しさん:2013/05/31(金) 22:00:22.70
必ずインスタンスが1つしかないという条件を付けたいなら、むしろ563のようなコーディングの方が望ましいよ。
つか、俺なんかもそういうの作ってるよ。
566デフォルトの名無しさん:2013/05/31(金) 22:00:44.70
PersonがPersonとしての機能だけじゃなくて
Person製造機とPersonコレクションの機能まで持たされてしまっている

自分しか使わないコードなら好きにしたらいいけど
567デフォルトの名無しさん:2013/05/31(金) 22:03:00.04
>>565
インスタンスが1つしかないという条件なんてどこにもないわけだが
568デフォルトの名無しさん:2013/05/31(金) 22:06:43.23
それでいいんじゃないか。
そのクラスをオブジェクト思考的理解すると、
人類は共通した仲間リストを瞬時に共有化できる。すなわちジオン・ズム・ダイクンが
提唱したニュータイプ、お互いに完全に分かりあえる人類をクラスにしたわけだ。
569デフォルトの名無しさん:2013/05/31(金) 22:08:17.75
キモい
570デフォルトの名無しさん:2013/05/31(金) 22:08:20.52
>>567
static変数って複数持てたっけ?
571デフォルトの名無しさん:2013/05/31(金) 22:11:16.95
>>570
staticでも[ThreadStatic]や型引数があれば増殖するぞ
今回は全く関係ないが
572デフォルトの名無しさん:2013/05/31(金) 22:12:01.88
経験的には機能を提供する側がstatic使うと微妙なことが多い
573デフォルトの名無しさん:2013/05/31(金) 22:13:04.31
デザインパターンなんて気にしても仕方のないレベルだろ
思うさまに書けよ1年くらいは
574デフォルトの名無しさん:2013/05/31(金) 22:14:39.62
staticで宣言しとくと、変なところでnewされてバグったりしないから良いよ。
575デフォルトの名無しさん:2013/05/31(金) 22:15:22.75
>>573
>>563のようなデザインパターンもあるんじゃないか?
なかったっけ?
576デフォルトの名無しさん:2013/05/31(金) 22:17:10.51
あるかないかじゃなくて目的のために使うんだよ、パターンってのは
577デフォルトの名無しさん:2013/05/31(金) 22:17:22.19
Flyweightにする理由があまり感じられないし
578デフォルトの名無しさん:2013/05/31(金) 22:17:34.72
ひとつしかないって保障されるならとりあえず
シングルトン化しといて欲しいんだが、無理でしょうか。
579デフォルトの名無しさん:2013/05/31(金) 22:25:53.09
かえってメモリ食うばあいも多いよ
パフォーマンスチューニングが目的ならそういうのは本当に必要になってからやれ
580デフォルトの名無しさん:2013/05/31(金) 22:30:07.67
シングルトンじゃ無いんでしょ?
なら良いと思うよ
あとたまにはDictionary.TryGetValueの事も思い出してあげてね
581デフォルトの名無しさん:2013/05/31(金) 22:39:25.95
メモリ食うのは悪いことではない
582デフォルトの名無しさん:2013/05/31(金) 22:43:43.77 ID:51CePrPk!
>>563
デザインパターンは関係ない。
特にそんな風に書くべき理由がないのなら書くべきじゃない。
理由は、端的に、プログラマの頭の中にある(はずの)モデルがコードから
読み取りづらいから。(頭の中に明確なモデルがあればこんなコードは書かないと思うが...)

Personのコレクションを操作するオブジェクトは、そのまま素直にそういうクラスで表現してよ。
モデルとコードの間に乖離があるようなコードを書くのはダメグラマ。
583デフォルトの名無しさん:2013/05/31(金) 22:49:24.07
>>582
理論先行型ですな。
584デフォルトの名無しさん:2013/05/31(金) 22:56:13.31
俺には>>582は利用者本位の実務的な意見に見える
585デフォルトの名無しさん:2013/05/31(金) 23:03:01.90
Person内に、static list はオブジェクト指向完全無視だしなぁ。
人は人、名簿は名簿でクラス化してくれないと。
586デフォルトの名無しさん:2013/06/01(土) 05:19:08.69
一度、class Person を別の名前にして、ID, Name, Kana を持つ class Person を別に定義してみれば。
細部は間違ってなくても全体の筋が悪く、英語として体をなしていないみたいな、そういう感じ。
587デフォルトの名無しさん:2013/06/01(土) 08:46:41.57
>>563
全員が常に最新の名簿を持ってて誰に問い合わせてもメンバーの情報が取得できる、
と考えると違和感ない。
動くコードがあればどうとでも言い訳できるさ
588デフォルトの名無しさん:2013/06/01(土) 09:19:24.03 ID:ie0u2JPk!
>>587
違和感あるよw
問い合わせしたいだけなら名簿の参照を持たせるだけでいい。
名簿は名簿のシングルトンクラスで管理すべし。
名簿とPersonを合体させるのはおかしいし、
オブジェクト志向のデザイン思想に反してる。
589デフォルトの名無しさん:2013/06/01(土) 09:32:42.80
>>588
587じゃないけど、俺は違和感ないよ。
むしろ全部がPersonクラスにカプセル化されて、かえってわかり易いんじゃないかとも思うし、
そういう意味ではオブジェクト指向の趣旨にも合致してるだろ。
590デフォルトの名無しさん:2013/06/01(土) 10:01:15.97
同意
オブジェクト指向ならPersonクラスは
画面表示もデータベース操作もXMLシリアライズも全部持ってていいよね
効率や保守性や実装の都合などの観点で必要ならそれを"あえて"分けるんだよ
591デフォルトの名無しさん:2013/06/01(土) 10:09:41.64
PersonのクラスメソッドでDBアクセスしてPerson取ってくるのって
スクリプト言語ではよくあるパターンだけど
そういえば.NETのORMってそういうActiveRecordみたいなのは聞かないよな
592デフォルトの名無しさん:2013/06/01(土) 10:38:13.68
ま、解釈は人それぞれだけど、致命的なのは再利用性に乏しい事だよ。
例えば、別の名簿を持つ必要が出てきたときに、設計を変更するか、同じようなクラスをもう一つ作らなきゃならない。
シングルトンでなければ、インスタンスを増やすだけで対応できる。
この程度なら、必要に応じて作り直せるけど、大規模システムでヤられると殺意を覚える事がある。
593デフォルトの名無しさん:2013/06/01(土) 11:38:11.58
>>592
横だけれど、そうなると、正規化と程度の問題という気もするなぁ。
大規模でなければ許される程度の実装ではあると。
594デフォルトの名無しさん:2013/06/01(土) 11:51:12.22
質問者の意図として一般的かそうでないかという感じの質問と見たが、
その場合回答は一般的でない、の一言に尽きる。そんだけの話。

つうかこの書き方をするメリットってなによ。
そうじゃないなら一般的に書けばいいだろうに。
595デフォルトの名無しさん:2013/06/01(土) 11:52:27.86
>>582
クラス名で混乱するだろうな。

>>592
あ、そういえば、拡張メソッドなんてものもあったね。
596563:2013/06/01(土) 12:00:17.91
貴重な意見、たくさんありがとうございます。
意図としては、>>594さんの推測通り、一般的にどれほど受け入れられるのかと思いまして。
内部でインスタンスを持つということに抵抗があるのもよくわかります。

個人ならともかく、複数人で分担してコードを書いている場合、
どちらかというと避けたほうがいいコードのようですね。
>>592さんには、殺意までわかせてしまうようですし><
オブジェクト指向、難しい・・・
597563:2013/06/01(土) 12:07:06.48
こんなことをメリットといっていいのかわかりませんが、
Visual Studioを使っていると、Personクラスに関係する何かをしたいとき、
とりあえず Person とタイプして、コンマを打てば、インテリセンスで何とかなるので
手抜きしやすい、というものがあって、こんなコードを書いてみました。
598デフォルトの名無しさん:2013/06/01(土) 12:13:51.80
うんこ
599592:2013/06/01(土) 12:21:53.86
>>593
>>596
ぶっちゃけシングルトンはグローバル変数だから、安易さだけで使うと後々痛い目を見ることが多いんだよね。
だから、普通は必要最低限の部分を見極めて、その部分だけをシングルトン化するものだよ。
オブジェクト指向的にも名簿と個人情報は別。
また、名簿がシステムで一意なのか、コピー可能なのか、これもまた別の話。
600デフォルトの名無しさん:2013/06/01(土) 13:12:24.80
みんなで同じものも持ちたいから static って用法としてどうなの?
static は、static的なオブジェクトにのみ使ったほうがいい。Mathクラスとかのような。
601デフォルトの名無しさん:2013/06/01(土) 13:19:39.89
   卑 日    /                             ._ノ
  怯 本    L_                       _-‐──-)  .在 .え
  者 に     /                     ./:::::::::::::::::::::ヽ   .日. l
  だ い    /        _____       /:::::::::::::::::::::::::::::::i  ニ マ
  け る    l      /..::::::::::::::::::::::::::::- _   ./::::;;;::'''``""'''''' 、く  カ ジ
  ニ 朝    i  .   /:::::::::::::::::::::::::::::::::::::::::\  i::::::/ --─‐‐- 厶, !?
  ダ 鮮   l    /:::::::/~ ̄ ̄ ̄~ヽ:::::::::::::::ヽ ゙l,゙/ ,-ー、 Ll /,ー--、.ヽ
  よ 人   _ゝ   /::::/         \:::::::::::| i i._--\    /--゙` レ、⌒Y⌒ヽ
  ね は   「   |:::/ '⌒`   '⌒ヽ  |::::::::::| ( l  -'"/ ヽ `ーー  ゙`l ./´゙'l,::
-┐    ,√    ヽ|  \     /   |:::::::::|  〈   (    )、      > /'゙i,. j:
  レ'⌒ヽ/  . .   /|           _人__人ノ_ ヽヽ ノ`ー'` ヽ----/' j゙jノ./::
人_,、ノL_,iノ!     |,<___ < _ > _____「      L_ヽ 〃r─‐- 、ヽ   / /'´ノ::::
      /      ヽ|   ー─── ノ  キ    了 \ヽ ヽ, -‐┤} }  .ノr''゙ /
ハ ウ  {      /\/!`h、⌒/ )  モ    |/! 「ヽ, `ー /)  _ ‐'  ./
..ッ ェ   ヽ    r-、 . // / |  ̄  ,く    |     > / / `'//-‐、    /
ハ |    > /\\// / /ヽ_ /  !   イ    (  / / //  / `ァ-‐ '   /
..ッ ハ   / /!   ヽ    レ'/   ノ   ニ     >  ' ∠  -‐  ̄ノヽ   /
ハ ..ッ .... {  i l    !    /    フ  .ダ    ./     -‐ / ̄/〉 〈 \
602デフォルトの名無しさん:2013/06/01(土) 13:41:54.97
>>592
再利用なんて考えてプログラム作ってたらいつまでたっても完成しないよ。

>>594
一般的だよ。
この1日のレスみても賛否半々だろ。

>>600
有りだよ。
603デフォルトの名無しさん:2013/06/01(土) 13:44:54.29
レス乞食
604デフォルトの名無しさん:2013/06/01(土) 13:59:36.87
有りねぇ。オブジェクト思考に反するけどねぇ。
いつ誰が変更するかも分からずマルチスレッドで同期までしっかりと考えないといけないね。
スパゲッティコードの再来だな。
605デフォルトの名無しさん:2013/06/01(土) 14:06:57.87
一番まずいのはAddの引数
606デフォルトの名無しさん:2013/06/01(土) 14:50:08.97
目的を考えずにパターンがどうとか言うとこのようにグダります
607デフォルトの名無しさん:2013/06/01(土) 14:53:41.00
デザパタの勉強は最後でいい。
デザパタ先にやった人ってコード書くのがやたらに遅いイメージがある。

デザパタやって悩むとか本末転倒。
608デフォルトの名無しさん:2013/06/01(土) 14:59:15.73
そんなん言われてもうちデザイン以外完璧やし
609デフォルトの名無しさん:2013/06/01(土) 15:02:27.34
頭が完璧じゃなさそうだぜ
610デフォルトの名無しさん:2013/06/01(土) 15:26:50.94
>>607
前半は同意。
後半はダメ。
本末転倒だろうが何だろうが、悩まなければ成長しない。
思考停止していいのは、反射的に判断できるくらいの経験を積んでから。
611デフォルトの名無しさん:2013/06/01(土) 15:32:18.23
パターンで悩んだらパターン化した意味ないやん。
612デフォルトの名無しさん:2013/06/01(土) 15:36:59.03
そりゃそうだw悩まない為のデザインパターンだからなw
613デフォルトの名無しさん:2013/06/01(土) 15:58:57.80
とりあえず、楽して結果出せるのが当たり前と考えてるヤツが多い事はわかった。
614デフォルトの名無しさん:2013/06/01(土) 16:07:41.21
どんな事でも楽して結果を出せると考えられるのがプログラマに向いた資質
615デフォルトの名無しさん:2013/06/01(土) 16:31:32.35
プログラマに限らんだろ
616デフォルトの名無しさん:2013/06/01(土) 16:35:49.68
趣味のプログラミングなら理屈こねて理屈通りにコーディングしても構わないとは思うけど、
仕事としてのプログラミングは理屈よりも期間と品質。
617デフォルトの名無しさん:2013/06/01(土) 16:43:11.08
頭でっかちばっか
618デフォルトの名無しさん:2013/06/01(土) 16:54:33.98
デザパタを使うと品質もスケジュールもボロボロになると告白してるだけじゃないですか
619デフォルトの名無しさん:2013/06/01(土) 16:56:58.17
教義じみてて揉めるのが最悪
620デフォルトの名無しさん:2013/06/01(土) 16:57:18.07
なんでもデザパタに当てはめようとして、必要以上に複雑なコードを書くやつは稀によくいるな
621デフォルトの名無しさん:2013/06/01(土) 17:19:00.13
理想
PG「このオブジェクトをどうすべきか悩む。」
デザパタ屋「こういう場合はこのパターンだからこうだよ。」
PG「ありがとう」

現実
PG「このオブジェクトをどうすべきか悩む。」
デザパタ屋「うーん、この場合どのパターンにするべきか悩む。」
PG「やっぱ難しいよね。」
622デフォルトの名無しさん:2013/06/01(土) 17:52:59.28
デザパタ屋なんているのか…
底辺IT土方の闇は深いな
623デフォルトの名無しさん:2013/06/01(土) 18:05:18.87
>>563からまだ24時間経ってないのに、何この盛り上がり。
624デフォルトの名無しさん:2013/06/01(土) 18:07:09.04
規制解除されたからな。
625デフォルトの名無しさん:2013/06/01(土) 18:12:19.89
パターンはあくまで目安だから
状況に合わせて好きに作ればいいよ
626デフォルトの名無しさん:2013/06/01(土) 18:13:33.48
開発やってりゃ、知ってれば同じような解決法で簡単に片付く事例が多いよね。
デザパタはその事例集なんだから、使えるなら使った方が楽。
複雑化させてしまうのは、その人が目的と手段を取り違えてるだけ。
要はバランスの問題だけど、知らなきゃ選択すらできないので、知る努力をしといて損はないと思うよ。
627デフォルトの名無しさん:2013/06/01(土) 18:16:35.07
デバパタ勉強して悩むのは構造化の基本的なスキルが身についてないから。
因数分解ができないタイプ。
628デフォルトの名無しさん:2013/06/01(土) 18:55:58.80
こうやって先輩風吹かせて和が尊べないワナビが多いのが極悪
629デフォルトの名無しさん:2013/06/01(土) 19:04:02.28 ID:Puvkn4ma!
質問者(>>563)の悩みはどう考えてもデザインパターンと無関係なのに
鬼の首でも取った様にデザインパターンデザインパターンて。

ほとんど、何でも無理矢理朝鮮半島ネタに絡めるネトウヨみたいだ。
デザパタなんて別に高度な話題でも難しいわけでもないと思うけど、
そんなにコンプレックスが刺激されちゃうワードなのかね。よくわからん。
630デフォルトの名無しさん:2013/06/01(土) 19:06:58.12
>>629は在日朝鮮人
631デフォルトの名無しさん:2013/06/01(土) 19:10:54.75
>>629
「デザインパターンから見て」
と質問に書いてあるのが読めないのでしょうか?
632デフォルトの名無しさん:2013/06/01(土) 19:16:50.43
ちょっとでも相手より上に立ちたい安い自尊心というものをご理解いただきたい
633デフォルトの名無しさん:2013/06/01(土) 19:17:40.80 ID:Puvkn4ma!
>>631
問題は質問者がどう言ってるかじゃない。
質問者が提示した問題の問題領域がデザインパターン的な問題かどうか、それが問題でしょう。

Yesならデザインパターンの是非について語るのも多少の意味はあるかもしれない。
(実際のレスを見る限り、語られているのはほとんど回答者自身のコンプレックスの開陳
だけのように俺には見えるけど)

Noなら、質問者がどう言おうがデザインパターンの話をする意味はない。
単に「あなたの問題はデザインパターンと無関係」と言って普通は終わる話だ。
634デフォルトの名無しさん:2013/06/01(土) 19:26:36.08
説教は部下にやっとけ
635デフォルトの名無しさん:2013/06/01(土) 19:26:46.17
デザインパターン=GoFって発想に縛られてるからそんな珍講釈を垂れちゃうんだよ
.NET設計のベストプラクティスとでも言い換えれば分かるか?
636デフォルトの名無しさん:2013/06/01(土) 19:30:14.64
>>633
アスペ登場
637デフォルトの名無しさん:2013/06/01(土) 19:37:10.41
>>633
おいおいズレてるぞ
質問者が納得できるかどうかが一番の問題だろ
その流れで話が弾むなら、それも自然だよ
むしろ、いきなり訳のわからん噛みつきされてもなあ
そんなん技術論以前のコミュニケーションの問題だわ
スレチすまん
638デフォルトの名無しさん:2013/06/01(土) 19:56:33.45
謝るくらいなら喋るな
生きるの辞めろ
639デフォルトの名無しさん:2013/06/01(土) 20:20:41.70
>>638
朝鮮人に言え
640デフォルトの名無しさん:2013/06/01(土) 20:24:58.00
>>638が朝鮮人だから
641デフォルトの名無しさん:2013/06/01(土) 22:19:14.28
自前でリスト構造記述すれば Dictionaryが無くなるってほぼ同じコードにならないか
自己参照部分が追加されるだけで
642デフォルトの名無しさん:2013/06/01(土) 22:21:48.09
Dictionaryはハッシュテーブルであってリストじゃないぞ
まあハッシュかぶった先はリストの可能性もあるけど
643デフォルトの名無しさん:2013/06/01(土) 23:36:46.06
>>563
デザインパターンから見てアリだよ。
644デフォルトの名無しさん:2013/06/02(日) 00:09:18.84
その理屈ならシングルトン(=グローバル変数)は使い放題だね
645デフォルトの名無しさん:2013/06/02(日) 00:19:14.97
この話いつ終わるんだ?
物理的に殺さないと終わらないの?
646デフォルトの名無しさん:2013/06/02(日) 00:29:56.39
よくあることなので諦めて
ID無いところだとどうにもできないからスルーしてね
647デフォルトの名無しさん:2013/06/02(日) 14:38:57.05 ID:HLUF2wqF!
仕事としてやってるプログラマとニートプログラマとじゃ
永遠に平行線でしょ。
648デフォルトの名無しさん:2013/06/02(日) 14:44:25.11
ニートプログラマってなんだよ
ニートが暇潰しにプログラムやってんの?随分と崇高なご趣味をお持ちなニートですこと
649デフォルトの名無しさん:2013/06/02(日) 15:04:38.42
仕事で自分の意見を通せないような雑魚PGは恥ずかしくないの?
650デフォルトの名無しさん:2013/06/02(日) 15:14:04.29
むしろ仕事に誇りとプライドを何て人がいないせいで熱弁して肩透かしをくらうパターンが多いから
意見が通らない環境あこがれるわ
651デフォルトの名無しさん:2013/06/02(日) 15:47:47.81
日本のSEの99%はコードが書けないのにPGが意見を通すと対立の元。
SE様が仰る通り糞仕様どおりコードを書けばよい。
間違ってもこんな仕様じゃ動きませんよと言ってはならない。
652デフォルトの名無しさん:2013/06/02(日) 15:53:53.89 ID:E6RfhoLP!
>>651
人の目を見て話せないモジモジ系(笑)の人なんだろうけど、
自己保身のためにも、不適正な仕様に従うにしても、最低限それが不適切であることは
ちゃんと指摘しておいた方がいいと思うよ。
653デフォルトの名無しさん:2013/06/02(日) 15:58:21.18
なあ、PG ってどの程度の仕様もらって作業するの?
クラス仕様とかまでもらえるの?
654デフォルトの名無しさん:2013/06/02(日) 15:58:45.31
それは絶対に指摘してはならないと言ってるだろう。頭の悪い奴だ。
655デフォルトの名無しさん:2013/06/02(日) 16:00:31.47
>>652
>>651は日本のIT業界を皮肉ってるだけだよ
それとモジモジはどこからそう読み取った?
656デフォルトの名無しさん:2013/06/02(日) 16:07:09.77
>>653
会社毎に文化が違うからなんとも言えないかな
肩書きは契約に直結する場合が多いし
個人的にはクラス仕様までもらったらコーダーだと思う
657デフォルトの名無しさん:2013/06/02(日) 16:14:48.21
大手SEは外部設計書すら書かないよ。全部下に丸投げ。
そして無能SEは自分のミスも全部PGのせい。
とくに外資だと失敗はほとんどPGのせいにして責任回避するのがふつう。
658デフォルトの名無しさん:2013/06/02(日) 16:24:06.46
無能PGは良くても無能SEは良くないとでも言いたげだな
659デフォルトの名無しさん:2013/06/02(日) 16:26:00.57
滑稽なスレだ
660デフォルトの名無しさん:2013/06/02(日) 16:37:31.82
そろそろマ板でやれと言われるぞ
661デフォルトの名無しさん:2013/06/02(日) 16:48:12.80
幼稚園板でいいよ
あるのか知らないが
662デフォルトの名無しさん:2013/06/02(日) 16:49:38.09
>>661
メンヘル板ならこいつら幼稚な奴らにぴったりだろう
というか精神科行けよと思う
どう見ても精神に異常を来たしてるだろう
663デフォルトの名無しさん:2013/06/02(日) 16:55:37.99 ID:E6RfhoLP!
>>655
本気で言ってるのなら、君が皮肉った方がいいのは日本のIT業界じゃなく、
君自身の性格的欠陥の方。

最低限の自己保身的行動が取れないのは、バカかコミュニケーションスキルが欠如してるか、
またはその両方だろう。
664デフォルトの名無しさん:2013/06/02(日) 17:00:16.33
.,r‐--,,,_、                                   
.゙l゙'i、  `゙''-,,,,,,,,,,,,,,,,,_                         
: ゙l `'i、.,r‐-、,,`'-,、  `''ー、_                     
 ゙l ,/゛   `゙''''ミッ、   ゙゙'''-,、              
  У        `!ヽ、    ._,,i、      ,,,,,、          
 /          ゙r゙l,   / ‘i、    { ゙i、          
 |              ゙'i゙l ./    |,    ゙l、 ゙l          
 |         _,,,,_  .゙'},. |   ,/ ゚i、    ゙l  ゙l、        
 ゙l         ,r'"` `゙゙''',゙',lri、,,/  .゙l    ゙l  ヽ        
 │     .|     .彳 ゚|″    |    .|  │       
  │     .ヽ_   _,,-°  `i、    .|    .,,゙l, .゙ケ'=ッ、    
  ゙l, ,,,,,,、    ̄ ̄     .゙l,-'シ'',!.゙l  ,/゜ ゙'i、 .}i、`.゙'i、    
   `'| `'i、            ,,,rン・'゙,,,-'i| .|  .l、,,」  ゙=    |    
    .゙ヽ, .゙!,          i″ ゙''i,   .l │ /" .゚┓     .|    
     ‘'''l"        ゙'-,,、゙l、 .,,「 |  ゙l、  ゜     .|    
       ゙l'-,、       `゙''゙‐'" ./   .ヽ       .|    
          |  ゙'ヽ,、        /    '゙l      .,ノ    
       ′   .~'―--―ー¬''"         ヽ-,   |、   
                            "    .l゙
665デフォルトの名無しさん:2013/06/02(日) 17:13:32.98
>>663
性格的欠陥を指摘するとは大した洞察力だ
でも>>651はオレじゃないんだ残念

つーか肩の力抜けよ、あんた面倒臭いよ
絡むといつも疲れる
666デフォルトの名無しさん:2013/06/02(日) 17:26:43.85
>>663
無能SE乙。
667デフォルトの名無しさん:2013/06/02(日) 17:55:30.77
思い込み分析によるコミュニケーションスキルの欠如指摘ワロタ
668デフォルトの名無しさん:2013/06/02(日) 18:41:24.32
アスペ、コミュニケーションスキルの欠如。
こんなことすぐ言う奴はたいてい日本で浮いてるKYな奴。
669デフォルトの名無しさん:2013/06/02(日) 18:48:28.60
てか、ネットでそんなこと言ってるヤツは浮く以前に空気扱いなんじゃ。なにも言えなくて。
670デフォルトの名無しさん:2013/06/03(月) 09:41:49.80
C#ネイティブコンパイラって
市販とかフリープロジェクトの動きってないの?
ソニーがゲームで使っただけ?
671デフォルトの名無しさん:2013/06/03(月) 09:46:09.58
ネイティブって存在するのかな?
C#->C++へコンバートしてとかそんな
手法ばっかりじゃないの?
あとuniftyはあくまでスクリプトのポジションに当たる
コードをC#でかけるってだけで.netのような使われ方はしてないはず
672デフォルトの名無しさん:2013/06/03(月) 09:49:13.85
ソニーのは?
C++中間言語手法?
673デフォルトの名無しさん:2013/06/03(月) 09:50:22.95
ちなみにネイティブコンパイラで、仮想環境じゃなくともオートでfreeってできるもん?
オートfreeでガベコレはOS任せとか
674デフォルトの名無しさん:2013/06/03(月) 09:53:56.51
>>673
monotouchがios向け開発でやってるような手法じゃないの?
GCに相当する機能をあらかじめ用意して
C#->C++コンバートしたコードと一緒に
リンクしておくの
675デフォルトの名無しさん:2013/06/03(月) 09:57:43.88
OSにやらせるんじゃなくてライブラリでそれぞれのアプリ単位でヒープ管理するてことかな?
676デフォルトの名無しさん:2013/06/03(月) 10:01:11.30
そうそう
確かisoの開発制限の関係でこじんまりしたGCの機能を
MonoTouch側が用意して実行ファイルを作る際に
一緒に入れておくことで実現してたはず
C#でも書けるけどやっぱりiosの開発の制約上
objective-cにコンバートしてたしね
677デフォルトの名無しさん:2013/06/03(月) 12:07:10.79
ジェネリックでないクラスの
ジェネリックなコンストラクタを
どう書けばよいですか?

C++で以下のようなコードを
C#でどう書けばよいですか?

class A{
template<typename T>
A(T t){}
};
678デフォルトの名無しさん:2013/06/03(月) 12:40:13.17
それがC#で出来るとして、どういう使い道があるんだ?

コンストラクタじゃないメンバーなら出来るから、
わざと出来なくしてるんじゃないかな。
679デフォルトの名無しさん:2013/06/03(月) 12:43:10.28
generic classを継承して、genericじゃないclassを作るか、
generic classのコンストラクタの中で、Tの型に応じた処理を入れれば良いんじゃない?
680デフォルトの名無しさん:2013/06/03(月) 13:09:11.81
>>677
それが出来ない事でC#のgenericはコードの肥大を防いでるんじゃなかったっけ
681デフォルトの名無しさん:2013/06/03(月) 13:11:08.72
class A<T>{
public A(T t){}
}

の何が嫌なん?
682デフォルトの名無しさん:2013/06/03(月) 14:11:33.14 ID:biPmxv2t!
>>681
何が嫌とかじゃなくて、何故できない仕様なのか知りたいという
知的好奇心でしょ。
683デフォルトの名無しさん:2013/06/03(月) 14:21:42.52
>>681
確かJITコンパイラ用のMSILはこのようにしてもコードを1つしか吐かないので、
C++のようにコンパイル時に要求された全ての型のコードを生成してしまうのと違って
動的なジェネリックが可能になってるとか

あまりに自由度が高いのでwhereで型の制約ができるし
684デフォルトの名無しさん:2013/06/03(月) 19:06:14.93
MSILはスタックマシンだけど
あれコンパイルしたとしてC++並に効率的になるのか?
685デフォルトの名無しさん:2013/06/03(月) 20:29:13.66
スタックマシン?VMじゃないぞ
JITコンパイラを使っている比較的新しい言語だ
今の性能が余っているCPUだからこそ出来る芸当
686デフォルトの名無しさん:2013/06/03(月) 20:36:13.10
それはmscoreeの話でCILはスタックマシン用言語だろ
687デフォルトの名無しさん:2013/06/03(月) 21:05:34.54
MSILは評価スタックを使用するスタックマシン用言語
実際のCPUはレジスタマシンだが
どのようにコンパイルされているのだろう
688デフォルトの名無しさん:2013/06/03(月) 21:41:21.39
IDEならブレークポイント掛けて逆アセンブル見ればいいじゃん
689デフォルトの名無しさん:2013/06/03(月) 22:36:41.53
JITコンパイルの結果まで出てくるのか?
690デフォルトの名無しさん:2013/06/03(月) 23:33:59.02
mdbgでなんかできなかったかな
691デフォルトの名無しさん:2013/06/04(火) 00:33:33.75
>>677
技術的にはできない理由はないと思うが
明示的に型引数を指定する場合にクラスの型引数なのかメソッドの型引数なのか曖昧になるだろ
コンストラクタの型引数に限り明示不可というのも一貫性に欠ける
692デフォルトの名無しさん:2013/06/04(火) 05:51:59.81
hoge+= (e,sender) => method1 = null

↑これってどういう意味ですか?
デリゲートもラムダ式も分かるんですがnullの部分の意味がよくわかりません
メソッドにnullを代入することってできるんですか?
693デフォルトの名無しさん:2013/06/04(火) 05:54:07.63
Devexpressってなんですか?
694デフォルトの名無しさん:2013/06/04(火) 05:59:54.17
>>692
method1はメソッドじゃなくて変数じゃね?
695デフォルトの名無しさん:2013/06/04(火) 07:22:02.52 ID:ygsqUXBt!
変数名に惑わされるなって教訓ワロタw
696デフォルトの名無しさん:2013/06/04(火) 07:32:08.31
>>693
ググれば分かるだろ?サードパーティ製のUI部品だよ
697677:2013/06/04(火) 09:06:11.47
>>678 >>681 以下のようなことをやりたいのです。
interface I{}
class B<T> : I{
 public B(T t){}
}
class A{
 I i;
 public A<T>(T t){ i = new B<T>(t); }
}

>>679 いただいたアドバイスを元に色々試していたら
static createメソッドという所に落ち着きました。
ありがとうございます。
class A{
 I i;
 A(I ii){ i = ii; }
 public static A Create<T>(T t){
  return new A(B<T>(t);
 }
}
698デフォルトの名無しさん:2013/06/04(火) 10:45:16.18
>>692
まあデリゲート変数だろうな
699デフォルトの名無しさん:2013/06/04(火) 10:47:46.31
>>692
ラムダ式って結局はコンパイラが展開してるんでしょ?

展開した形って表示できないのかね?
700デフォルトの名無しさん:2013/06/04(火) 15:22:22.59
>>697
要は動的にジェネリックを生成すればいいんだろ
Aのコンストラクタをobjectで受けてその型でBをインスタンス化する
public A(object t) { i = (I)Activator.CreateInstance(typeof(B<>).GetGenericTypeDefinition().MakeGenericType(t.GetType()), t); }
とかでどうだ?
701デフォルトの名無しさん:2013/06/04(火) 19:33:51.27
>>699
ILDASMでも使えばいいだろ
702デフォルトの名無しさん:2013/06/04(火) 19:46:15.23
>>695
デリゲートなら別にありうる変数名だと思う
703デフォルトの名無しさん:2013/06/05(水) 07:05:44.99
webbroeserコントロールでメッセージボックスが表示されたときにOKボタンを自動で押すにはどう書いたらいいですか?
704デフォルトの名無しさん:2013/06/05(水) 09:54:44.87
またロクでもないもの作ってるな?
705デフォルトの名無しさん:2013/06/05(水) 10:11:35.14
webbroeserコントロールの質問は禁止といっとろーが
706デフォルトの名無しさん:2013/06/05(水) 10:17:47.06
解決したからもういいです
707デフォルトの名無しさん:2013/06/05(水) 10:26:19.53
どういたしまして
708デフォルトの名無しさん:2013/06/05(水) 10:36:55.39
おまわりさんこの人です
709デフォルトの名無しさん:2013/06/05(水) 10:44:35.65
スレッドを開始してしばらくするとスレッドは終了するんですが
そういうスレッドは何もしなくてもそのうちメモリから解放されますか?
ちなみにスレッドは2ちゃんのスレッドのことじゃないです
710デフォルトの名無しさん:2013/06/05(水) 10:50:45.80
解放されます
711デフォルトの名無しさん:2013/06/05(水) 10:54:26.74
そうですか
それならいいんです
712デフォルトの名無しさん:2013/06/05(水) 10:58:25.99
じゃないの?
俺は、Exitedイベントで終了処理を書いてるけど
713677:2013/06/05(水) 12:10:29.29
>>700
作られる型は静的に決定するので、動的に作る方法で
解決できるとは思いもよりませんでした。
勉強になります。
714デフォルトの名無しさん:2013/06/05(水) 19:22:36.64
>>700って.GetGenericTypeDefinition()いらなくね?
715デフォルトの名無しさん:2013/06/06(木) 09:36:02.42
public static void KakuchouMethod( ref this StructreFoo foo )
{
 ...
}

みたいなのがほしいよぉ
716デフォルトの名無しさん:2013/06/06(木) 15:49:30.99
>public A(object t) { i = (I)Activator.CreateInstance(typeof(B<>).GetGenericTypeDefinition().MakeGenericType(t.GetType()), t); }

むずかしすぎてわからん
解説して
717デフォルトの名無しさん:2013/06/06(木) 21:02:01.82
>>716
>要は動的にジェネリックを生成
718デフォルトの名無しさん:2013/06/06(木) 21:38:24.95
typeof(B<>)…B<>の型情報
.GetGenericTypeDefinition()…B<>→B<> ※無意味
.MakeGenericType(t.GetType())…B<>→B<tの型>

Activator.CreateInstance…new B<tの型>(t)
719デフォルトの名無しさん:2013/06/07(金) 12:17:37.65
Interface1を実装しているClass1があって、
Class1を継承しているClass2があって、
Interface1で宣言されているMethod1を
Class2でオーバーライドするには、
どのように書けばよいですか?

interface Interface1{
void Method1();
}
class Class1 : Interface1{
void Interface1.Method1(){}
}
class Class2 : Class1{
override void Method1(){} //???
}

インターフェースではなく抽象クラスなら
オーバーライドできましたが、
インターフェースは変更できないです。
720デフォルトの名無しさん:2013/06/07(金) 12:43:43.91
void Interface1.Method1(){} ←この意味が分らん。何をしたいの?

こうじゃないの?
class Class1 : Interface1
{
public virtual void Method1() { }
}
class Class2 : Class1
{
public override void Method1() { } //???
}
721719:2013/06/07(金) 13:17:47.76
>void Interface1.Method1(){} ←この意味が分らん。何をしたいの?
Interface1のMethod1を明示的に実装する構文のようです。

>こうじゃないの?
教えていただいたとおりにすると、
Interface1.Method1経由で呼出したときに
Class2.Method1ではなくClass1.Method1が呼出されました。
722デフォルトの名無しさん:2013/06/07(金) 13:31:42.27
void Interface1.Method1() { } がprivateのせいだと思うから、こうするとか。

class Class1 : Interface1
{
void Interface1.Method1() { }
}
class Class2 : Class1,Interface1
{
void Interface1.Method1() { } //???
}
723デフォルトの名無しさん:2013/06/07(金) 13:48:58.96
この場合は隠蔽になるのかな
724719:2013/06/07(金) 14:31:41.20
>>722
Interface1.Method1を呼ぶと
Class1.Method1が呼出されました。

基本クラスと同じインターフェースを実装しても
無視されてしまうようですね。

>void Interface1.Method1() { } がprivateのせいだと思うから、こうするとか。
これは明示的にインターフェースを指定するときの構文で
publicと付けられないし、自動的にpublicになるようです。
725デフォルトの名無しさん:2013/06/07(金) 15:09:44.71
正解はここに書いてあったわ。
インターフェイス メンバーの明示的な実装
http://msdn.microsoft.com/ja-jp/library/vstudio/ms229034(v=vs.100).aspx

>機能を派生クラスによって専門的に処理する場合は、
>明示的に実装されたメンバーと同じ機能を提供するプロテクト仮想メンバー関数を用意します。

>明示的に実装されたメンバーはオーバーライドできません。
> これらを派生クラスで再定義した場合、派生クラスでは基本クラス実装を呼び出すことができなくなります。
> プロテクト メンバーに名前を付けるには、明示的なインターフェイス メンバーと同じ名前を使用するか、
>またはインターフェイス メンバーの名前に Core を付け加える必要があります。


まずは明示的な実装が本当に必要かどうか再検討すべきだな。
726デフォルトの名無しさん:2013/06/07(金) 15:47:18.97
インターフェイスの再実装
http://msdn.microsoft.com/ja-jp/library/aa664594%28v=vs.71%29.aspx

ちょっと頭こんがらがってきました
727デフォルトの名無しさん:2013/06/07(金) 16:02:02.54
>>719
privateかpubicかじゃなくて、インターフェイスの明示的な実装ってのは
まさにインターフェイスを実装してるだけで、そのクラスのメソッドを定義してることにならない
つまり>>719ではClass1.Method1というメソッドは存在しない
存在しないんだからClass2でオーバーライドできない
728デフォルトの名無しさん:2013/06/07(金) 16:34:42.06
明示的なメソッドの宣言はpublicに出来ないんだからそういう事だよな
729デフォルトの名無しさん:2013/06/07(金) 17:21:18.70
>>728
>明示的なメソッドの宣言
インターフェイスの明示的な実装のことだよな?
publicにできないんじゃなくて、privateとしても存在してない
Class1の内部からでも(インターフェイスにキャストしない限り)Method1にはアクセスできないぞ

インターフェイス回りは基本的には暗黙的にpublicだ
730デフォルトの名無しさん:2013/06/07(金) 17:24:26.05
>>729
ああそうか
明示的な使い方をしないと見えないんだった
731デフォルトの名無しさん:2013/06/07(金) 19:04:56.29
>積極的な理由がない場合は、インターフェイス メンバーの明示的な実装を避けます。

結論 : MS様が使うなと言っている。
732デフォルトの名無しさん:2013/06/07(金) 19:33:58.23
>>719
C++ では普通に実装できるのにね http://codepad.org/rp8tiSBg
いったいどういうこと?
733デフォルトの名無しさん:2013/06/07(金) 19:37:50.64
インターフェイスならAdapterパターンでいいだろ
734デフォルトの名無しさん:2013/06/07(金) 19:40:38.30
>>732
それならC#も普通にできるよ。 >>720
735デフォルトの名無しさん:2013/06/07(金) 19:51:33.65
なんとも初歩的な話をしてるな
736デフォルトの名無しさん:2013/06/07(金) 19:53:49.30
>明示的な実装について理解するには、高度な専門知識が必要です。

結論 : MS様が馬鹿には無理と言ってるのだから初歩ではない。
737デフォルトの名無しさん:2013/06/07(金) 20:14:43.01 ID:EFaRBvNc!
インターフェイス関係の仕様はVBの方が理論的に綺麗だな
738デフォルトの名無しさん:2013/06/07(金) 20:23:28.95
VB仕様はメンバー名を考えないといけないのが微妙
739デフォルトの名無しさん:2013/06/07(金) 20:26:45.05
>Public Property Name() As String Implements IHello.Name
普通は一緒でいいんだけどね
740デフォルトの名無しさん:2013/06/07(金) 20:34:53.21
変える必要がある場合の話に決まってるだろうが
741デフォルトの名無しさん:2013/06/07(金) 20:37:01.04
そのときはこう、あんまり考えんで
>Private Property IHello_Name() As String Implements IHello.Name
742デフォルトの名無しさん:2013/06/07(金) 20:50:16.37
結局 virtual が高給、ということですかね
743デフォルトの名無しさん:2013/06/08(土) 21:45:37.76
デザイナでBindingSourceはっつけて
自動生成されたコード見ると
Datasourceにtypeof(型)をいれてんだけど

あれって何やってんの?
744デフォルトの名無しさん:2013/06/08(土) 22:27:13.15
Bindingって複数の型突っ込めなかったっけ?
745デフォルトの名無しさん:2013/06/08(土) 22:47:01.01
バインド先のDataBindings.AddじゃなくてBindingSource

BindingSource.DataSource = typeof(デザイナで指定した型);

こんな感じ
746デフォルトの名無しさん:2013/06/08(土) 23:22:09.28
同じようなコードを手動で書いて
>BindingSource.DataSource = typeof(デザイナで指定した型);
の行のあるなしを試してみなよ
デザイナーは機械的にコードを差し込んだり抜いたりしてるから
確実に型を指定したりとか何か理由があってやってるだけじゃないの?
747デフォルトの名無しさん:2013/06/08(土) 23:30:10.23
コメントアウトしても特に影響は無いみたい
748デフォルトの名無しさん:2013/06/09(日) 00:52:46.64
普通に考えればDataSourceの型を特定してるんだろ
プロパティウィンドウでDataMemberとか指定したときのチェックとかに要るんじゃね
749デフォルトの名無しさん:2013/06/09(日) 00:55:05.93
ああ、それ以前に、デザイナで指定した値の保存に要るんじゃないか
750デフォルトの名無しさん:2013/06/09(日) 01:04:16.22
一時的にデザイナ用で入れてるだけっぽいね
すっきりした。ありがとう
751デフォルトの名無しさん:2013/06/09(日) 03:49:41.37
有料のVSは無料と比べて
エディタに違いありますか?
マクロとかアウトライン表示とか欲しいんですけど
752デフォルトの名無しさん:2013/06/09(日) 09:36:07.29
マクロはもちろんある
アウトラインはもっと優れたセマンティックな機能(クラスビューやエディタ上部のバー)で代用するもんだ
753デフォルトの名無しさん:2013/06/09(日) 09:55:18.49
有料エディションは拡張機能でエディタ含めていくらでもカスタマイズできる
754719:2013/06/10(月) 12:43:47.34
>>725 >>727
void Interface1.Method1(){}

public void Method1(){}
の糖衣構文だと勘違いして書いておりました
実際には、明示的な実装は必要ありません。
ところが、Class1でpublic virtual void Method1(){}として
Class2でpublic override void Method1(){}としても
Interface1.Method1経由でClass2.Method1は呼ばれませんでした。
755デフォルトの名無しさん:2013/06/10(月) 13:32:57.76
そりゃそうよ
756デフォルトの名無しさん:2013/06/10(月) 16:36:05.03
やっとReflectionの使い方わかったわ
動的インスタンス生成とかぜんぜんイメージわかん説明やな・・・
757デフォルトの名無しさん:2013/06/10(月) 17:18:10.71
>>754
interface Interface1 { void Method1();}
public class Class1 : Interface1
{ public virtual void Method1() { MessageBox.Show("Class1"); } }
public class Class2 : Class1
{ public override void Method1() { MessageBox.Show("Class2"); } }

Class2 a = new Class2();
a.Method1();
((Interface1)a).Method1();
さてどうなってる?
758719:2013/06/10(月) 17:50:49.44
>>757
意図どおりになってますね・・・。
ってことは、情報後出しになって、申訳ないのですが、
具体的にはInterface1はIReflect、Method1はInvokeMemberです。

呼出し側はMSScriptControl.ScriptControl.Evalで
こいつが何故かClass2を無視してClass1.Method1を呼出してしまうのですが、
そもそも、overrideされて、見えなくなってしまったメソッドというのは
呼出せるものなのでしょうか?

Class2として作成した場合、Class1としてのvtableにも
Interface1としてのvtableにもClass1.Method1は登録されないと思うのですが、
他に、どの経由でClass1.Method1を呼出しているのでしょうか?
759デフォルトの名無しさん:2013/06/10(月) 18:12:49.74
class Class2 : Class1, Interface1{}

としてClass2でも明示的に実装すればよかった話じゃないの?
760デフォルトの名無しさん:2013/06/10(月) 18:33:45.23
>>758
とりあえずミニマムコードつくって上げれ

>>759
それ今話題になってた明示的な実装とちゃう
761デフォルトの名無しさん:2013/06/10(月) 18:39:56.30
派生クラスで上書きしてるメソッドで、ベースクラスのメソッド呼んでただけとかいうオチじゃないだろうな
762デフォルトの名無しさん:2013/06/10(月) 19:32:17.09
MSが説明してるんだから使いこなせないなら明示的な実装するなよと。
763デフォルトの名無しさん:2013/06/10(月) 19:40:10.49
>>719 の質問はinterfaceの明示的な実装を派生先でどうやってoverrideするのか
という質問なので、答えはoverrideできないが正解。

議論を続けたいなら、どういう動作をinterfaceで実装したいのかをちゃんと説明しろ。
764デフォルトの名無しさん:2013/06/10(月) 20:11:54.91
最近 .NET C# をやりはじめたんだけど、以下のイベントがあったことを昨日知った。

第1回 Build Insider OFFLINE - Build Insider
http://www.buildinsider.net/event/offline/01

いってきた人いますか?
サイトは一通り目を通したけど、生で聞いてみたかった
765デフォルトの名無しさん:2013/06/10(月) 20:50:05.30
>>763
>interfaceの明示的な実装を派生先でどうやってoverrideするのか

インターフェイスを再実装して明示的実装すればいいんじゃないの?

interface I1
{
 void M();
}

class c : I1
{
 public void M()
 {
  MessageBox.Show( "c1.M" );
 }

 void I1.M()
 {
  MessageBox.Show( "I1.M" );
 }
}

class c2 : c, I1
{
 void I1.M()
 {
  MessageBox.Show( "I1.M (2)" );
 }
}
766デフォルトの名無しさん:2013/06/10(月) 20:58:09.75
基底の実装を呼べないんじゃ片手落ち
767デフォルトの名無しさん:2013/06/10(月) 21:06:45.45
MSDNに従うと継承みたいなことをしたいならこうしろってことだな。
class Class1 : Interface1 {
void Interface1.Method1() { CoreMothod1(); }
protected virtual void CoreMothod1() { }
}
class Class2 : Class1 {
protected override void CoreMothod1() { base.CoreMothod1(); }
}
768デフォルトの名無しさん:2013/06/10(月) 21:31:55.76
>>767
C++ の pure virtual destructor 問題と同一にみえますねえ
769デフォルトの名無しさん:2013/06/10(月) 21:56:49.25
>>765
とっくにそうしろと言ってるのに納得しないのだ。
770デフォルトの名無しさん:2013/06/11(火) 03:41:31.60
>>763
ちゃんと流れと中身見ろ
>>754で言ってるのは、明示的な実装をoverride出来ないことではない
明示的実装ではないメソッドをoverrideしたのに、呼ばれてないと言っている
それに対する反証が>>757
771デフォルトの名無しさん:2013/06/11(火) 05:19:56.89
>>770
overrideの仕様どおりふつうに呼ばれる。
間違ったコード書いてるかoverrideの仕様を勘違いしてるかどちらかなのは明らか。
772719:2013/06/11(火) 10:42:41.39
すいません、>>771さんの言うとおりなのです。
それで再現するミニマムコードを抜出し中なのですが、
なかなか再現せず、全然関係ないところに問題がありそうなので、
そちらのほうを探してみます。
何か分れば報告します。
付合ってくださった皆様、どうもすみませんでした。
773デフォルトの名無しさん:2013/06/12(水) 03:45:24.89
ミニマムコード抜き出しっておかしくないか?
今正常に動いてないコードから、関係ないと思われる所削って行けば良いだけだろ
ちょっとずつ削って様子見て、正常に動いたら、原因は削った所なんだし
これ以上削れないところまで削ったのがミニマムコードだろ
774デフォルトの名無しさん:2013/06/12(水) 10:46:44.00
がっちりスクラム組んでんだろ
775デフォルトの名無しさん:2013/06/12(水) 12:43:47.63
見て分らない時点でC#の知識が足りない。
776デフォルトの名無しさん:2013/06/12(水) 14:19:57.52
そもそも知識が足りてたらここで質問する必要ない
777デフォルトの名無しさん:2013/06/12(水) 17:24:58.82
チョン消えろ
778デフォルトの名無しさん:2013/06/12(水) 19:13:37.12
WindowsForm上の検索ワード入力エリアに検索ワードを入力し
YahooにGETパラメータで検索を掛け検索結果を取得しようとしています。

大抵のワードでは検索をかけられるのですが
この時「嵯峨」という文字についてはどうやってもうまくエンコードを掛ける事が出来ません。

search.yahoo.co.jp/search?p=嵯峨

とブラウザから実際に検索を掛けても ?? と文字化けした状態で検索が掛けられています。
なぜ他のワードでは問題無く出来るのに、このワードだけ文字化けしてしまうのでしょうか?
779デフォルトの名無しさん:2013/06/12(水) 19:46:22.93
送る前にURLエンコードしてるからに決まってんだろ
780デフォルトの名無しさん:2013/06/12(水) 19:47:50.37
>>779
では、なぜ他の文字では問題無く検索が出来ているのでしょうか?
この文字だけがなぜかうまくできないのです。
781デフォルトの名無しさん:2013/06/12(水) 19:52:45.66
当たり前だ。おまえがエンコードしないからだ。エンコードしろ。
782デフォルトの名無しさん:2013/06/12(水) 19:57:42.34
C#関係ねえじゃん死ねよ
783デフォルトの名無しさん:2013/06/12(水) 20:00:26.63
単体テストのときだけインターフェースの実装を変えたいような場合、下記のような方法を考えたのですが、
もっとスマートな方法はあるでしょうか
IA a;
#if DEBUG
a = new TestA();
#else
a = new ClassA();
#endif
784デフォルトの名無しさん:2013/06/12(水) 20:01:42.37
単体テストをしなけりゃいい
785デフォルトの名無しさん:2013/06/12(水) 20:05:55.49
>>778
今時5C問題も知らないとか15年遅いよ
世の中に知恵遅れをお詫びして死ね
786デフォルトの名無しさん:2013/06/12(水) 20:12:55.63
うちだとカバレッジ100%にならないから単体テストとして扱われないわ、それ
787デフォルトの名無しさん:2013/06/12(水) 20:16:55.27
いや、だからどうすりゃいいのかと
788デフォルトの名無しさん:2013/06/12(水) 20:24:04.45
>>781 >>785

正確には

string str_return = "";
str_return = Uri.EscapeUriString(txt);
return str_return;

ちゃんとこれをファンクションとしてかませてやってもこの文字はダメなんです。。。(謎)
789デフォルトの名無しさん:2013/06/12(水) 20:30:00.10
>>783
別にいいじゃん
テストの時に凝った細工をすると裏目に出る
790デフォルトの名無しさん:2013/06/12(水) 20:41:18.36
>>788
yahoo.co.jpはデフォルトでは入力文字列はEUC-JPでURLエンコードされたものとして扱う
ei=UTF-8ってクエリを追加すればUTF-8でいける
他の文字でei付けなくても何でいけるのかは知らん

っていうか今時デフォルトがEUC-JPなのか……
791デフォルトの名無しさん:2013/06/12(水) 20:51:00.02
>>785
Shift-jisなんて関係ないだろ低能
お前が死んで詫びろやクソムシ( ゚д゚) 、ペッ


>>790の言うとおりEUC-JPみたいだね

var url = "http://search.yahoo.co.jp/search?p=" + System.Web.HttpUtility.UrlEncode( "嵯峨", Encoding.GetEncoding( "EUC-JP" ) );
792デフォルトの名無しさん:2013/06/12(水) 20:53:22.67
>>785みたいなド低能のせいで荒れてるのか
793デフォルトの名無しさん:2013/06/12(水) 20:54:51.07
>>790 >>791
ぉおおwww知らなかったwww
ありがとうございます!!!!!!



>>785
馬鹿なのはお前( ゚д゚) 、ペッ ( ゚д゚) 、ペッ
794デフォルトの名無しさん:2013/06/12(水) 20:56:01.53
そうやって質問者を装って煽るなよ知的障害者くん
795デフォルトの名無しさん:2013/06/12(水) 21:14:03.50
>>785
こうなりたくないから上から出る時は何度も確認してから書いてるわ
796デフォルトの名無しさん:2013/06/12(水) 21:14:34.43
>>789
そうか、ありがとう
797デフォルトの名無しさん:2013/06/12(水) 21:41:53.48
どうせそいつはこれから5Cに躓くだろw
798デフォルトの名無しさん:2013/06/12(水) 21:44:00.67
>>797
いいから世界に詫びて死ねよ畜生
799デフォルトの名無しさん:2013/06/12(水) 21:45:21.41
>>798
おれが教えてやったのに死ねや、チンカス。逆ギレゴキブリめ。
800デフォルトの名無しさん:2013/06/13(木) 19:58:13.04
JavaとC#のアプリ(WPF3.5で書いてます)の両方で扱える
テキストの暗号化復号化アルゴリズムを書こうとしているのですが、
暗号化の結果が同じになりません。

下記にソースを置きましたので
見ていただけないでしょうか。
ttp://www.dotup.org/uploda/www.dotup.org4269469.txt.html

DLパスは sagesage です。

Java、C#ともに暗号化/復号化が上手くいっているのですが、
暗号化の結果が同じにならないため、
「Javaで暗号化したものをC#で復号化」がNGです(逆も然り)。

C#側を直すとしますと、どう修正すれば良いでしょうか。
宜しくお願いいたします。
801デフォルトの名無しさん:2013/06/13(木) 20:06:37.47
とりあえずパディングが違うだろ
802デフォルトの名無しさん:2013/06/13(木) 20:07:49.82
PaddingModeが違う
803800:2013/06/13(木) 20:07:54.27
すみません。
ソース中の "hogehoge" はアップロード用に適当に入れたもので
本来ですと128bitの文字列です。
(ソース中に鍵を置くことについては、今はテスト用なので触れないでください)

宜しくお願いいたします。
804デフォルトの名無しさん:2013/06/13(木) 20:08:04.74
おっと
805デフォルトの名無しさん:2013/06/13(木) 20:09:09.26
PKCS5ならC#の方のBlockSizeは64じゃないの
806800:2013/06/13(木) 20:10:42.86
>>801-802
レスありがとうございます。
PaddingModeについては全部(ANSIX923, ISO10126, None, PKCS7, Zeros)試してみましたが、
結果は一致しませんでした。Java側と同じものが無かったのでひとまずアップロードしたものは
PKCS7の時のものでした。

他にも違うところがありますでしょうか。
807デフォルトの名無しさん:2013/06/13(木) 20:12:14.38
意味も無く試しても意味が無いんだよ
808800:2013/06/13(木) 20:13:52.83
>>805
試しに64にしてみましたところ、
CryptographicException の例外が投げられました。
エラー内容: 指定されたブロック サイズはこのアルゴリズムには有効ではありません

>>807
仰る通りですが、試しにやってみました。
809800:2013/06/13(木) 20:18:05.03
stackoverflowにて、
「pkcs7とpkcs5は同じアルゴリズムだから
 特に変更しなくて良いよ」
なる書き込みがありました。うーん。

http://stackoverflow.com/questions/8614997/pkcs5padding-in-c-sharp
http://social.msdn.microsoft.com/Forums/en-US/csharplanguage/thread/13a20d89-7d84-4f7d-8f5c-5ae108a7f5cf/
810デフォルトの名無しさん:2013/06/13(木) 20:22:57.30
完全に同じじゃない
pkcs5はBlockSize64ビット限定だから
pkcs7は64~256のはずだけど、.NETに蹴られるってことは




自力で埋めるしかないってことだな
811800:2013/06/13(木) 20:45:22.26
>>810
ヒントをいただきありがとうございます。
「自力で埋める」のところがよく分かりません。

Padding5と7の違いはこちらのサイトを見てなんとなく分かりましたが、
http://x68000.q-e-d.net/~68user/cgi-bin/wwwboard.cgi?log=3700-3800#3711

どの時点でどう書けば、私が書いているC#のソースに適用できるのか分かりません。
812デフォルトの名無しさん:2013/06/13(木) 21:24:00.29
ほげ
813デフォルトの名無しさん:2013/06/13(木) 21:29:01.23
>byte[] src = Encoding.Unicode.GetBytes(plainText);
これは
byte[] src = Encoding.UTF8.GetBytes(plainText);
こうじゃなくて良いの?
814800:2013/06/13(木) 22:11:29.16
>>813
ありがとうございます。
UTF8にしたところ、JavaとC#とで同じエンコード結果になりました。
その後調べてみますと、PKCS5でエンコードしたPaddingは
PKCS7でも取り除けることが判りました。(その原理については計算してみます)
また、その逆もできるかどうかも検証してみます。
815デフォルトの名無しさん:2013/06/13(木) 22:33:03.46
原理についてはも何も>>810が全て
816デフォルトの名無しさん:2013/06/13(木) 23:12:35.13
WCFで質問です。
下のようにサービスとコールバックのinterfaceを定義してsvcutilでwsdlを生成したんですが、
それをクライアント側に取り込んでみるとIMyServiceCallback(サービス名+"Callback")という
新しいinterfaceが定義されてしまいました。
これだとinterfaceの互換性がなくなってしまうため困るのですが、クライアント側に公開する
コールバックinterfaceを自動生成ではなく明示的に指定することってできないんでしょうか?

[ServiceContract(CallbackContract=typeof(IMyCallback)]
public interface IMyService
{
}

public interface IMyCallback
{
}
817デフォルトの名無しさん:2013/06/14(金) 17:55:05.79
C#を使ってWebBrowserを起動し
ページ内のリンクのクリックは出来るのですが、

iframeの中のリンクはクリックする事は出来ないのでしょうか?
818デフォルトの名無しさん:2013/06/14(金) 18:02:29.62
できるよ
819デフォルトの名無しさん:2013/06/14(金) 18:20:06.48
>>818
iframeの中のリンクのクリックの仕方を解説した
オススメサイトがあったら教えてください。
820デフォルトの名無しさん:2013/06/14(金) 18:28:27.98
昔やったことある
821デフォルトの名無しさん:2013/06/14(金) 19:03:48.84
以前このスレだったと思うけどだれかがhtmlを再帰的に
解析するツールぽいの書いてたけどコード張ってるurlを
どなたか知りませんか?
822デフォルトの名無しさん:2013/06/15(土) 09:14:28.37
おまえら、はやくこれ完成させてください
https://github.com/ashie/gtkimcocoa
823デフォルトの名無しさん:2013/06/15(土) 21:48:51.74
ADO.NETでSqlDataAdapterを使って
SQL severからテーブルを取得したいのですが、
INNER JOINを利用してテーブル取得はできないのでしょうか?

conn = new SqlConnection(connStr);
conn.Open();
string sqlStr = "SELECT ShopTable.ID, Shop, ShopCategory,ShopTable.Comment FROM ShopTable INNER JOIN ShopCategoryTable ON ShopTable.ShopCategoryID = ShopCategoryTable.ID";
dataAdapter = new SqlDataAdapter(sqlStr, conn);

よろしくお願いします。
824デフォルトの名無しさん:2013/06/15(土) 21:52:04.24
出来るに決まってんだろ
825デフォルトの名無しさん:2013/06/15(土) 21:54:17.79
DBなに使ってるか知らんが、まずそのSQLがエラーなく通るのをそのDBで実行して試せ
826デフォルトの名無しさん:2013/06/15(土) 22:01:57.84
>>825
いや試して、できましたよ・・・
827デフォルトの名無しさん:2013/06/15(土) 22:03:30.26
ごめんなさい。
こういう反応があるということは同じ箇所に、
別なエラーが発生してるということか。

ありがとうございました。
828デフォルトの名無しさん:2013/06/15(土) 22:53:56.74
>>824-825
単純なミスをしていました。
迅速なご指摘ありがとうございました。
829デフォルトの名無しさん:2013/06/16(日) 00:08:18.35
できたら、
・どういうミスをしていたのか
・どういう対策をしたのか
などなどを報告してくれると後に続いていいと思うが。べつに 828 だけじゃなく。
830デフォルトの名無しさん:2013/06/16(日) 18:56:15.41
File.Copy() 関数について質問です。
今、ファイルを編集するアプリを作っています。

String fileFullPath = ファイル選択ダイアログからパスを取得します
String tmpFullPath = fileFullPath + ".tmp";

としていて、 File.Copy(fileFullPath, tmpFullPath, true); を、以下の箇所で読んでいます。
 ・ファイル読み込み時
 ・上書き保存時

ここで、ファイル読み込み時は動作OK。上書き保存時に例外が発生します。
(厳密には、tmpファイルが無い状態からFileCopy関数を2回呼ぶと例外が発生します)

内容:
UnauthorizedAccessException
パス ....ファイル名.tmp' へのアクセスが拒否されました。

読み込み専用ではありませんし、別のアプリなどがアクセスを握っていないこと
は確認済みです。何が悪いのか分かりますでしょうか。
831デフォルトの名無しさん:2013/06/16(日) 19:06:19.47
そのディレクトリのアクセス許可は?
それともあらゆるディレクトリで発生するの?
832830:2013/06/16(日) 19:19:53.65
>>831
特に制限をかけていない D:\ ドライブ直下にファイルを置いて
実行してみましたところ、例外は発生しませんでした。

前にテストしていた場所は、
C:\Users\{MyName}\Desktop\テスト用

にファイルを置いていました。
デスクトップ上のフォルダーって
アクセス厳しいのでしょうか。
833デフォルトの名無しさん:2013/06/16(日) 20:35:15.67
>>832
フォルダで右クリック、プロパティ→セキュリティでアクセス許可変更すればいいんじゃね
7はちょっと戸惑うね
834デフォルトの名無しさん:2013/06/17(月) 16:57:27.41
Windows 7 環境でアプリケーションを常に管理者として実行させる
C#プログラムを作成しようとしているのですが参考になるサイトがあれば教えてください。

例)

start_app.exe をキックすると 管理者権限でしか動作しない  hogehoge.exe を管理者権限で起動する
〜〜〜〜〜〜

のプログラムを作りたいです。
835デフォルトの名無しさん:2013/06/17(月) 17:11:47.46
ウイルスでも作成するのか
836デフォルトの名無しさん:2013/06/17(月) 17:14:55.24
完全母乳育児における最大のデメリットは、「一人の時間が持てない」でも「飲酒ができない」でもなく「乳首がありえないほど伸びる」である。
私も2 年ほど完全母乳育児をしてきたが、気がつけば見事な伸び乳首だ。引っ張ればチュウインガムの如く伸びる乳首。
実測で4cmを記録。平常時でも2cm近くある。

で、みなさん信じられないかもしれませんが、ここまで伸びると、乳首も垂れるんですよ。
ええ、乳首です。乳首が、です。
「垂れ乳」というジャンルはご存知かとは思いますが、もっとミクロに「垂れ乳首」です。

んで、もっというと、乳首は折れます。
ブラジャーを外すとですね、時には上を、時には下を向き、乳首が折れて乳房に張り付いてるんですよ。
「折れる」というか「畳まった」状態です。
ここまでくると、乳首をセクシーの象徴として見ることができなくなり、人体の神秘そしてその無限の可能性を表す神々しい存在のように思えてまいります。
女としての自信を失った私は、折り畳まった乳首を眺めながら
「お。今日は両方上向きだから金運アップだな!」
などと、オリジナルの乳首占いで気分を高めることしかできません。

それもこれも、すべて母乳育児のせいです。求められるがままに吸わせた結果がこれです。

でもまあ、2年間、毎日平均1時間吸わせてるとすれば、トータルで約700時間ですからね。
日換算すれば、1ヶ月間吸われっぱなしってことですよ。そりゃあ、人体の形状も変わるってもんです。
と、開き直ってたんですけども、さすがに顧客には詫びを入れないとマズいだろうと思ったんで、
元メインユーザーに「こんな有様になってしまい、大変申し訳ない」と頭と乳首を下げながら謝ったところ
「母親の勲章じゃないか。素晴らしいことだよ。胸を張って生きなさい」
と激励されましたが、その後受注がありません。どうしたらいいでしょうか。
837デフォルトの名無しさん:2013/06/17(月) 17:15:23.30
C# 管理者でググルだけで答えが見つかる
838デフォルトの名無しさん:2013/06/17(月) 17:32:23.69
普通にProcess.Startで起動すればUACダイアログが出てこないか?

そのアプリを管理者権限で起動するようにマニフェストで設定しても
どうせそのアプリを起動するのにUACダイアログが出るから同じじゃね?

そういうことじゃなくてUACすらくぐり抜けるアプリを作りたいということ?
839京都県警:2013/06/17(月) 17:37:38.85
おまえらウィルス作成罪幇助で全員タイーフォだ!!!
840デフォルトの名無しさん:2013/06/17(月) 17:49:46.70
UACを潜り抜けたいという質問だったのか
そんなのできたらUACの意味ない
841デフォルトの名無しさん:2013/06/17(月) 17:53:33.21
start_app.exeを管理者権限で起動しとけば、
子プロセスも管理者権限じゃなかったっけ。
start_appをどうやって管理者権限で起動するかといえば・・・
842デフォルトの名無しさん:2013/06/17(月) 17:56:52.11
>>841
start_appを管理者権限のstart_app2.exeから起動すればよい?(´・ω・`)
843デフォルトの名無しさん:2013/06/17(月) 18:02:39.90
タスクスケジューラ使えばいいじゃんw
844デフォルトの名無しさん:2013/06/17(月) 18:07:04.95
UACの無いXP怖い
845デフォルトの名無しさん:2013/06/17(月) 20:39:37.37
「毎回クリックするのが面倒」という理由でUACをオフにしているバカ多いよね
846デフォルトの名無しさん:2013/06/17(月) 20:42:51.11
だけどどうせメクラ判で何も考えずにOK押すんだから結局ほとんど同じこと
847デフォルトの名無しさん:2013/06/17(月) 21:42:40.56
その責任の一端はおれらにもあると思うぜ
署名付ければ緑色になるんだっけ?
それをせずに危険なメッセージでOK押してって言ってんだから
848デフォルトの名無しさん:2013/06/17(月) 22:26:10.41
コンビニのレジの年齢確認ボタンみたいなものか
849デフォルトの名無しさん:2013/06/17(月) 23:03:22.07
どうせ個人情報晒したり2chに犯罪予告書き込むのに管理者権限は要らないしなあ
850デフォルトの名無しさん:2013/06/18(火) 06:39:44.99
でも人間がクリックする必要がある、という意味でセキュリティ上の利点はある
851デフォルトの名無しさん:2013/06/18(火) 15:54:23.53
開発環境をインストールしていないPCで
起動しなくなってしまいました。

エラーも表示されなかったのですが、
Formコンストラクタの例外をメッセージボックスに出したところ
「クラスが登録されていません (Exeption from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))」

たぶん、AxWindowsMediaPlayerを貼付けてからだと思うのですが、
Windows Media Playerを、どうやったら登録できますか?

VC#2010 Express
852デフォルトの名無しさん:2013/06/18(火) 17:22:39.63
exeと同じとこにAxInterop.WMPLib.dllやInterop.WMPLib.dllを入れてみるとか
853デフォルトの名無しさん:2013/06/18(火) 20:38:52.56
メディアプレイヤーのバージョンが違うとか
854デフォルトの名無しさん:2013/06/18(火) 20:52:41.73
WPFにすべき
855デフォルトの名無しさん:2013/06/18(火) 22:03:42.98
WPFのMediaElementはお勧めしない
たしかにいろんなファイルを簡単に再生できて
追加のinterop.dllが必要ないとか便利だけどバグが多すぎ。。

個人的に酷いと思うのはH.264でエンコードされたファイルをサブモニタで再生すると
ハードウェア支援を切らない限り100%フリーズするバグ
しかも修正される気配もない。
まあ対策しつつ使ってるけど……
856デフォルトの名無しさん:2013/06/18(火) 22:20:03.06
>>855
糞環境乙
857デフォルトの名無しさん:2013/06/18(火) 23:07:41.77
バグを使用だと思う広い心が必要です
858デフォルトの名無しさん:2013/06/19(水) 08:18:46.35
リリース前に発見したらバグ
リリース後に発見したら仕様
859851:2013/06/19(水) 12:03:06.34
>>853
まさにこれでした。
ありがとうございます。
860デフォルトの名無しさん:2013/06/19(水) 20:20:27.06
.net4でTaskを使ってスレッドプールを使った場合に、同時にアクティブになるスレッド数は、いくつなのでしょうか?

ThreadPool.GetMaxThreads や ThreadPool.GetAvailableThreads では 1000 程度の数字が
得られますが、実際に 100msec ぐらいの間隔でどんどん Task を Start していくと、
いくつか実行開始したところで Task の実行が遅延したり、実行順が入れ替わったりします。

Thread で書き直すとそんな現象は起きないので、スレッドプールを使った場合に固有の現象かなあと。
861デフォルトの名無しさん:2013/06/19(水) 20:29:04.86
いくつか実行してみて、それらが全部実行中になるようなら
一定間隔で実行数を少しずつ増やしていくって動作だよ
862デフォルトの名無しさん:2013/06/19(水) 20:46:32.43
>>860
そういうのをOSが制御するのがスレッドプールなんだから、OSの都合による、が答え。
863デフォルトの名無しさん:2013/06/19(水) 21:17:51.57
なんでスレッドプールをOSが管理していると思っちゃったの?
864デフォルトの名無しさん:2013/06/20(木) 07:59:09.30
論理CPU数だと思ってた
865デフォルトの名無しさん:2013/06/20(木) 13:07:11.51
適度に並列化と直列化を行うのがスレッドプールの役割だから、
それ無視して、まとめて大量に起動させたいときは、
ThreadPool.SetMinThreadsをあらかじめ上げておくか、
LongRunningオプションを付けるか。

Task.Factory.StartNew(() => { ...
 }, TaskCreationOptions.LongRunning);
866デフォルトの名無しさん:2013/06/20(木) 17:15:26.38
あるアプリケーションを管理者として実行すると
「ユーザ アカウント制御」というダイアログが起動しますが
そのダイアログ上の「はい(Y)」をWindows APIを使用して
クリックしようとしているのですが
Spy++で確認してしっかりターゲットのウィンドウハンドルを
指定した状態でボタンをクリックしているのですが
どうも反応がありません。

手動でクリックすると、「ユーザ アカウント制御」ダイアログが
閉じて起動させたいアプリケーションは正常に起動します。

Windows API では、「ユーザ アカウント制御」ダイアログ上の
ボタンをクリックする事は出来ないのでしょうか?
867デフォルトの名無しさん:2013/06/20(木) 17:20:45.13
それができたらセキュリティホールだろ
868デフォルトの名無しさん:2013/06/20(木) 17:29:13.86
ハードウェアで押せ
869デフォルトの名無しさん:2013/06/20(木) 17:46:19.33
>>867
WindowsAPIじゃ出来ないって事ですか?
>>868
自動でやりたいんです。

最悪、それはUACの通知をオフにする事によって対応出来るのですが、
起動したアプリケーションがタスクトレイに収まります。

タスクバーの右下部分に縮小して表示される
アイコンの上で右クリックした時に表示される
プルダウンメニューより特定のワード(作業メニュー)を手動でクリックしているのですが
それをWindows API を使用してエミュレートする事は可能でしょうか?

※要するに手動で特定のアプリケーションを使用して行っている事を
Windows API を使用して自動でやる為のプログラム開発をしています。
870デフォルトの名無しさん:2013/06/20(木) 18:24:54.81
個人用とかと思ったがもしかして人に使わせようとかアホなことを企てているのか?
871デフォルトの名無しさん:2013/06/20(木) 18:28:32.72
>WindowsAPIじゃ出来ないって事ですか?

WindowsAPIでシリアル接続orUSB機器等を制御してマニピュレータでマウスを該当領域に移動させクリックさせればすべて解決
872デフォルトの名無しさん:2013/06/20(木) 18:31:15.42
なぜこれがセキュリティホールになるってわからないのか
理解不能
よくプログラム組めるな?
873デフォルトの名無しさん:2013/06/20(木) 18:37:55.15
>>866
> 「ユーザ アカウント制御」というダイアログ
こんな言い方してるし、これが何のための物なのか全く分かってないのだろう
874デフォルトの名無しさん:2013/06/20(木) 18:38:43.43
アホなんだろうきっと
875デフォルトの名無しさん:2013/06/20(木) 18:58:04.27
本当にSpy++でハンドル見れるの?
セキュアデスクトップ(セキュリティで保護されたデスクトップ)無効にしてないかい?

UACは通常プロセスから管理者プロセスへの作用を遮断するんだよ
だからSendMessageは届かない
解決するには
@マニフェストでuiAccess="true"を指定
これはユーザー補助ツール向けにUI制御を許可するというもの
MSに申請し証明書を発行してもらう必要がある
A自分が管理者プロセスになる
>>843の方法ならダイアログ出ない
BNortonUACToolはホワイトリストを持てるらしいぞ
CAで他プロセスを開始すればそれも管理者だからそれでいいじゃん
876デフォルトの名無しさん:2013/06/20(木) 20:33:58.98
放置でいいだろ
877デフォルトの名無しさん:2013/06/20(木) 20:39:58.93
Windows 7 や Windows Server 2008 でプログラムが死んだ時に
「プログラムを終了する」とかいう余計なダイアログが出てくるんですけど
これ出てこないようにする方法ってありますか?

基本ディスプレイのない状態で使うので
死んでも自動再起動する作りにしたいのですが、
このダイアログを閉じない限りプロセスが終了しないようで
死んだかどうか判定できないわ強引に起動すると二重起動になるわで困ってます

ちなみに、問題レポートは既に無効にしてあります
878デフォルトの名無しさん:2013/06/20(木) 21:05:53.03
アプリケーションループ自体をtry-catchで囲って例外を潰せばいいんじゃねえの
879デフォルトの名無しさん:2013/06/20(木) 21:06:12.98
>>865
ありがとう、考えてみればMaxがあればMinもあるはずですね。
SetMinThreadsで50ぐらいまで上げて、期待したようにTaskが動き出しました。
しかしMinThreadsをこれぐらい上げると、それを維持するコストって、
どう考えたらいいのだろう。
880デフォルトの名無しさん:2013/06/20(木) 21:12:05.88
>>871
後半は金掛かり過ぎでしょ。

>>875
みれました。
そもそもUACのダイアログが出ない様にセキュリティーレベルを事前に落とす事により解決しました。


残りの問題なのですが
タスクバー上の特定アプリ(例えばサクラエディタ等)を
Windows API にて 右クリック > メニューの選択
という事は出来ますか?
881デフォルトの名無しさん:2013/06/20(木) 21:30:13.38
>>877
思いっきりスレ違いの気が。

XPの時代はワトソン博士をデバッガに設定すればよかったらしいけど、
Vista以降はWERを無効にすればいいのかも。よく知らん。
http://msdn.microsoft.com/en-us/library/bb513638.aspx
882デフォルトの名無しさん:2013/06/20(木) 21:36:34.36
>ちなみに、問題レポートは既に無効にしてあります
883デフォルトの名無しさん:2013/06/20(木) 21:45:34.29
884デフォルトの名無しさん:2013/06/20(木) 21:53:58.64
>>882
馬鹿だろお前
885デフォルトの名無しさん:2013/06/20(木) 22:20:29.21
タスクバー上をWindows API で操作は出来ますか?
886デフォルトの名無しさん:2013/06/20(木) 22:24:00.34
日本語でおk
887デフォルトの名無しさん:2013/06/21(金) 06:40:05.78
WindowsAPIの質問ならWindowsAPIスレへどうぞ。

Win32API質問箱 Build114
http://toro.2ch.net/test/read.cgi/tech/1363042502/
888デフォルトの名無しさん:2013/06/21(金) 15:37:06.39
iMac買ったんでC#でプログラミングしてみた。これ「\」と「_」の入力が罠すぎるだろ
http://engawa.2ch.net/test/read.cgi/poverty/1371785765/l50
889デフォルトの名無しさん:2013/06/21(金) 17:20:13.83
まだスレタイで話題誘導する慣習が残ってるのか
早く潰えればいいのに
890デフォルトの名無しさん:2013/06/22(土) 09:51:03.12
IpcServerChannel/IpcClientChannelでプロセス間通信(ローカルマシン内)しているのですが、
IntPtr型の戻り値で以下の例外がでます

System.Runtime.Serialization.SerializationException: ストリーム 'Invalid' に無効な型コードがあります。

IntPtrをSerializeできないためのようなんですが、
回避策はやはりInt64等にキャスト/IntPtrに再キャストするしかないんでしょうか?
891デフォルトの名無しさん:2013/06/22(土) 10:29:39.71
>>890
ポインタを他のプロセスに渡して何がしたいんだろう…
892デフォルトの名無しさん:2013/06/22(土) 14:10:46.19
例えばウィンドウハンドルなら他プロセスにおいても意味あるだろハゲ
893デフォルトの名無しさん:2013/06/22(土) 14:13:43.72
サイズがプロセスの種類に依存するからそりゃシリアライズはできないだろうな
894デフォルトの名無しさん:2013/06/22(土) 16:48:07.06
>>892
他プロセスが同じウィンドウシステムで動いてる保障はありますか?
895デフォルトの名無しさん:2013/06/22(土) 16:58:52.74
ちょっと何言ってるのかわか(
896デフォルトの名無しさん:2013/06/22(土) 17:01:20.72
要件次第だろ
一般化して考える必要があるとは全く思わない
ウィンドウハンドルを例にしたのも、IntPtrを他プロセスと共有して意味がある可能性を示唆しただけで、何の矛盾もないがな
897デフォルトの名無しさん:2013/06/22(土) 17:03:37.12
素性がわからんプロセスとIPCなんかせんだろ。
898デフォルトの名無しさん:2013/06/22(土) 18:47:09.26
縮小しているアプリをWindows APIを使用して
アクティブにしようと次のコードを書いています。


//ウィンドウをアクティブにする
IntPtr h = FindWindow(null, "こまねち");

ShowWindow(h, SW_SHOW);

しかし、
The name 'SW_SHOW' does not exist in the current context

というエラーが出てしまうのですが SW_SHOW はどうやって幾つの値を設定すればよいのでしょうか?
899898:2013/06/22(土) 18:49:59.39
ぐぐって自己解決しました
900デフォルトの名無しさん:2013/06/22(土) 18:51:08.97
最善はWindowsSDKをインストールしてその中から定義してる値を調べる
大体は「#define SW_SHOW」をweb検索する
901デフォルトの名無しさん:2013/06/22(土) 18:53:13.78
winAPIスレじゃないんだが
902デフォルトの名無しさん:2013/06/22(土) 19:14:54.91 ID:JsV6vpx7!
>>901
俺もそうオモタw
903デフォルトの名無しさん:2013/06/23(日) 17:04:00.99
先日リリースされたC#言語使用5.0版の
変更点をアホな俺に誰か10行ぐらいで
説明していただけませんか?
904デフォルトの名無しさん:2013/06/23(日) 17:09:50.36









905903:2013/06/23(日) 17:35:11.88
今ちらっと読んだ。
async/awaitが言語仕様に取り込まれただけと見た。
906デフォルトの名無しさん:2013/06/23(日) 17:58:09.03
foreachのスコープとかCaller Infoもそうじゃね?
907デフォルトの名無しさん:2013/06/23(日) 19:51:35.60
>foreachのスコープ
なんでこんな細かい変更知ってんだよw
908デフォルトの名無しさん:2013/06/23(日) 20:08:14.37
caller info いいよな。
でも IDE としては VS2010 のほうがいいと聞いているので
VS2012 買う気が起きない俺
909デフォルトの名無しさん:2013/06/23(日) 20:15:13.18
foreachで>>187みたいなコピーの手間がなくなるってことかな
あー歓迎する
910デフォルトの名無しさん:2013/06/23(日) 20:38:18.79
>>907
LINQ中毒者にとっては結構重要な変更だから
911デフォルトの名無しさん:2013/06/23(日) 22:35:24.27
C#に関する資格とかある?
912デフォルトの名無しさん:2013/06/23(日) 22:37:28.57
死角などありません。無敵です。
913デフォルトの名無しさん:2013/06/23(日) 23:08:16.50
四角い仁鶴が
914デフォルトの名無しさん:2013/06/23(日) 23:15:24.71
今はMCPDじゃなくてMCSDなのか
915デフォルトの名無しさん:2013/06/24(月) 06:20:43.56
>>908
パフォーマンスも機能も全ての面でVS2012が優れてるんだが
916デフォルトの名無しさん:2013/06/24(月) 10:26:53.08
もう、隠し切れないんだから、すみませんでした!淫乱女として生きていきます!で、平気な顔で出てきて、元夫にごめんなさいしたほうが何かと未来が有ると思うんだけどなぁ・・・

有吉が叩いてる淫乱アイドルいるじゃん。
矢口はリアル淫乱女なんだから、『作りモノ』より居場所あるんじゃね?
917デフォルトの名無しさん:2013/06/24(月) 10:27:27.99
916
gobackすまん
918デフォルトの名無しさん:2013/06/24(月) 10:39:41.06 ID:eXv8Mqmu!
>>915
メトロなUIが許せないから無理。
919デフォルトの名無しさん:2013/06/24(月) 12:19:59.15
出た当初にも散々言われたけど見づれえよな
開発環境までアレにする必要ねーじゃん
920デフォルトの名無しさん:2013/06/24(月) 13:31:13.68
最近サービスパックが出て
2010と同じような白と青の配色が選べるようになったけど
そういう話ではない?
921デフォルトの名無しさん:2013/06/24(月) 15:56:50.74 ID:eXv8Mqmu!
>>920
いや、そういう話。
UI選べるなら2012推奨。
922デフォルトの名無しさん:2013/06/24(月) 15:57:09.96
923デフォルトの名無しさん:2013/06/24(月) 15:58:37.26
間違えた・・・すまない
924デフォルトの名無しさん:2013/06/24(月) 22:05:51.48
>>883
ようやく試せました
そこで Exit させたら見事表示されなくなりました!
ありがとうございました
925デフォルトの名無しさん:2013/06/24(月) 22:20:57.39
だけどVS2012はUpdate2でもちょと挙動不審な動作が多いね
926デフォルトの名無しさん:2013/06/25(火) 00:03:18.76
.netってちょっと知ってると他人のアセンブリでも
リフレクション出来ちゃってハッカー気分になれるよね
927デフォルトの名無しさん:2013/06/25(火) 00:16:39.43
HTMLってちょっと知ってると (以下略
928デフォルトの名無しさん:2013/06/25(火) 00:24:03.15
メタ情報が実行モジュールに沢山記録されている言語の宿命だね
ほんとに必要なら難読化でもつかいなされ
929デフォルトの名無しさん:2013/06/25(火) 14:47:53.16
難読化なんか意味ね〜って
よく読めばわかるもん
930デフォルトの名無しさん:2013/06/25(火) 15:07:03.99
それなら逆アセンブラでよく読めば何だってわかるだろ
931デフォルトの名無しさん:2013/06/25(火) 15:08:21.08
アセンブラは読んでも分からんな
真面目に読んだこともないけど
932デフォルトの名無しさん:2013/06/25(火) 15:12:02.10
古文書だって読めるんじゃね
933デフォルトの名無しさん:2013/06/25(火) 15:12:25.31
CPUが理解して動いてるのだから
読んでわからんわけが無い
934デフォルトの名無しさん:2013/06/25(火) 15:42:01.35 ID:pIV77UBt!
>>931
分かれよw
935デフォルトの名無しさん:2013/06/25(火) 15:46:43.22
難読化したところでわかりにくい名前がついてるだけの普通のソースコードじゃん
アセンブラは読む訓練をしたことがないから出来んが難読化したC#やJavaなんか馬鹿でも読めるわな
936デフォルトの名無しさん:2013/06/25(火) 15:51:32.04
昔Z80の頃にハンドディスアセンブルしてたことある。
ハンドアセンブルした簡単なバイナリだったからできたけど、高級言語でコンパイルした
バイナリはやりたくないな。
937デフォルトの名無しさん:2013/06/25(火) 19:38:14.91
Z80コードぐらい暗記しろ。バイナリのまま読め。
938デフォルトの名無しさん:2013/06/25(火) 19:50:18.73
x86系は読みやすいな。IA64は無理っぽ
939デフォルトの名無しさん:2013/06/25(火) 19:51:22.12
MIPSみたいに遅延スロットが絡んでくると本当に目が回る
焦点が定まらなくなる
940デフォルトの名無しさん:2013/06/25(火) 19:51:31.39
ヘ!
941デフォルトの名無しさん:2013/06/26(水) 22:47:10.18
ヘ!とかまじ作為的
942デフォルトの名無しさん:2013/06/28(金) 02:01:29.92
>>935
甘いな
制御構造をgoto文の山に書き換える暗号化されたものは、眺めるだけで脳から変な汁があふれるぞ
943デフォルトの名無しさん:2013/06/28(金) 10:07:00.13
xxx = list.OrderByDescending(obj => (decimal)obj.A / (decimal)(obj.B + obj.C));
このような式でA=0の場合のエラーを回避したいのですが、どのように書けばよいのでしょうか?
944ハズレな私:2013/06/28(金) 10:28:11.85
obj.A=0でエラーになるの?
てっきり(obj.B + obj.C)=0でエラーになるのかと思った。

「(decimal)obj.A / (decimal)(obj.B + obj.C)」をメソッドにして
そのメソッドの戻り値でソートするんじゃだめ?
それならそのメソッド内で0の場合のことも考えられると思うのだが

ハズレっすか?
945デフォルトの名無しさん:2013/06/28(金) 10:34:46.22
>>935
VB6出身者にC#で書かせたらナチュラルに難読化されるお
>>942に加えて巨大なプロシージャ書いてくれるわすべてをstaticにしてくれるわで
もう泣きそう。
946デフォルトの名無しさん:2013/06/28(金) 10:46:00.24
>>944ありがとうございます。

計算するときに
0 / (1+2)
のようなことになり”0 で除算しようとしました。”というエラーになる感じです。

仰る通り、関数の戻り値にすればいいのですが、
出来ないのかなぁ?と思い、後学のためにお聞きしようと思った次第です。
947デフォルトの名無しさん:2013/06/28(金) 11:05:04.83
>>946
つ 三項演算子
948デフォルトの名無しさん:2013/06/28(金) 11:35:49.96
>>947
ばっちりイケました!
ありがとうございました。

普段あまり使わなかったんですが、こういう時に使えるんですね。
勉強になりました。
949デフォルトの名無しさん:2013/06/28(金) 18:22:42.19
>>946
他のところがおかしいんじゃね?

decimal d1 = 0;
decimal d2 = 1000000000;
decimal d3 = d1 / d2; // d3 == 0
950デフォルトの名無しさん:2013/06/29(土) 16:12:10.77
Windows API を使用してListView内の N番目の要素の値の取得とかって出来ますか?
951デフォルトの名無しさん:2013/06/29(土) 16:27:12.29
イミフ(
952デフォルトの名無しさん:2013/06/29(土) 16:48:17.84
コモンコントロールのならWinAPI叩けば取り出せる。LVM_GETITEMでggr
953デフォルトの名無しさん:2013/06/29(土) 17:26:17.57
>>952
C# で作られていないネイティブアプリ上のListviewでも取得出来ますか?
954デフォルトの名無しさん:2013/06/29(土) 17:33:03.07
コモンコントロールならな
あと別プロセスのメモリの読みとりが必要になるけど
955デフォルトの名無しさん:2013/06/29(土) 23:36:35.73
コモンコントロールって何ですか?
956デフォルトの名無しさん:2013/06/29(土) 23:40:16.97
オーナードローでないやつ
957デフォルトの名無しさん:2013/06/30(日) 01:07:18.56
適当なこと言うなよw
と思ったけどそもそもC#関係ないし許す
958デフォルトの名無しさん:2013/06/30(日) 07:25:41.84
comctl32.dllに書いてあるコントロール
具体的には
http://msdn.microsoft.com/en-us/library/windows/desktop/bb773169%28v=vs.85%29.aspx
にあるやつ(でおk?)
959デフォルトの名無しさん:2013/06/30(日) 07:47:42.12
ブビ厨の頭の中にある(comctl32で昔使用した)
画面部品群のことです
その中にスピンを含むかどうかは微妙
960デフォルトの名無しさん:2013/06/30(日) 11:44:33.10
MFCだってコモンコントロールのラッパーだろが
VB目の敵にしすぎてメクラになってるな
961デフォルトの名無しさん:2013/06/30(日) 12:21:54.93
Opaqueの読みは「おぱきゅー」でいいですか?
962デフォルトの名無しさん:2013/06/30(日) 13:56:04.13
Opacity と Transparency
どっちを使うか迷う
963デフォルトの名無しさん:2013/06/30(日) 17:32:03.31
>>961そんなの関係ねぇ そんなの関係ねぇ はい
964デフォルトの名無しさん:2013/06/30(日) 18:57:36.16
オペイク
965デフォルトの名無しさん:2013/07/01(月) 06:04:46.38 ID:2zeQNJgI!
英語読みだと>>964だな。
966デフォルトの名無しさん:2013/07/02(火) 23:04:26.45
DataSetが二つの全くカラムが異なるDataTableを持っていて
1つのDataGridViewを用いて、二つDataTableをボタンなどで気軽に
切り替えられるようにしたいのですが、
どうすればよいかわかりません

DataGridViewは簡単にデータソースを切り替える様な事は
サポートしていないのでしょうか?

お手数おかけしますが、もし良ければご回答お願いします
967デフォルトの名無しさん:2013/07/02(火) 23:13:55.95
DataGridViewを2つ用意して差し替えればいいだろ
タブを消したタブコントロールを使うとかしてもいい
968デフォルトの名無しさん:2013/07/02(火) 23:24:10.21
>>967
なるほど。
確かにその通りですね!

ありがとうございました。
969デフォルトの名無しさん:2013/07/03(水) 11:31:43.76
XElementでSingle/Doubleを扱う場合ってInvariantCultureでやってくれるんでしょうか。
コンストラクタ、Saveメソッド、明示的なキャストで問題になるんじゃないかと……
(例えばヨーロッパ風の小数点",")

書きだすとInvariantになるっぽいんですが、明確に書いてあるドキュメントってないすか
970デフォルトの名無しさん:2013/07/03(水) 13:29:16.96
ドキュメントはないんじゃないかな
XML Schemaが小数点を"."で表現するから.NETのXMLクラスはそれに従ってる模様
// XML Schemaの仕様書見てもBNFがない IEEE754のほうで定義されてるのかね
ちなみに変換はSystem.Xml.XmlConvertが引き受けてる
971デフォルトの名無しさん:2013/07/03(水) 15:49:14.98
Application.Idleイベントの逆のイベントはありませんか?
メッセージがない状態からある状態へ移行したときに発生するような。
972デフォルトの名無しさん:2013/07/03(水) 18:09:05.24
自作だな
973デフォルトの名無しさん:2013/07/03(水) 19:03:22.07
>>970
XMLでは小数点が決まってるんですか
ははぁー
ありがとございます
974デフォルトの名無しさん:2013/07/03(水) 20:18:00.32
XMLじゃなくてXML Schemaな
XSLTなんかは変換関数で小数点の文字や桁区切り文字を指定できるようになってる
975KUSO KOTE:2013/07/03(水) 22:18:32.14
>>973
仕様ではこのように定義されています。
http://www.w3.org/TR/xmlschema11-2/#double
976デフォルトの名無しさん:2013/07/04(木) 12:36:43.32
昔のVisual Studio だと

Control + K , K
Control + K , M


でコード内のブックマークの追加、削除が出来ていたと思うんだけど
2010になってから出来なくなったのでしょうか?
977デフォルトの名無しさん:2013/07/04(木) 12:40:03.42
ここで質問してる暇があったら
VS立ち上げてオプションのキーボード画面開いて
ブックマークを含むコマンドを表示させたり
ショートカットキーでCtrl+K Kって入力したりするんだ
978デフォルトの名無しさん:2013/07/04(木) 12:45:45.10
visualstudioは単独スレがあったはずだが
979デフォルトの名無しさん:2013/07/04(木) 13:29:59.54
>VS立ち上げてオプションのキーボード画面開いて
>ブックマークを含むコマンドを表示させたり
→どうやってやんの?
980デフォルトの名無しさん:2013/07/04(木) 15:07:04.66
"ブックマーク"と入力しろよハゲ
981デフォルトの名無しさん:2013/07/04(木) 19:03:05.32
t
982デフォルトの名無しさん:2013/07/04(木) 20:00:02.00
983デフォルトの名無しさん:2013/07/04(木) 20:33:07.55
984デフォルトの名無しさん:2013/07/04(木) 23:29:45.73
うめ
985デフォルトの名無しさん:2013/07/05(金) 00:07:57.88
986デフォルトの名無しさん:2013/07/05(金) 12:59:42.86
うめ
987デフォルトの名無しさん:2013/07/05(金) 14:49:09.51
梅田
988デフォルトの名無しさん:2013/07/05(金) 15:55:37.17
うめ
989デフォルトの名無しさん:2013/07/05(金) 17:18:25.43
激安最高です。
激安中古Adobe取扱店でググってみて
色んな中古ソフトが激安いいね
990デフォルトの名無しさん:2013/07/05(金) 19:48:04.34
うめ
991デフォルトの名無しさん:2013/07/05(金) 20:01:59.27
ccになったから中古買っても意味ないじゃん
992デフォルトの名無しさん:2013/07/05(金) 20:30:09.30
993デフォルトの名無しさん:2013/07/05(金) 20:35:38.79
994デフォルトの名無しさん:2013/07/05(金) 21:03:40.04
995デフォルトの名無しさん:2013/07/05(金) 21:59:11.23
1000
996デフォルトの名無しさん:2013/07/05(金) 22:16:33.60
999
997デフォルトの名無しさん:2013/07/05(金) 23:37:05.58
998
998デフォルトの名無しさん:2013/07/05(金) 23:45:05.02
999
999デフォルトの名無しさん:2013/07/06(土) 00:08:23.50
1000
1000デフォルトの名無しさん:2013/07/06(土) 00:22:16.35
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。