トップページ⇒tech
1001コメント310KB

C#, C♯, C#相談室 Part84

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん2014/07/12(土) 21:14:45.81ID:JFCJ0EYz
前スレ
C#, C♯, C#相談室 Part83
http://peace.2ch.net/test/read.cgi/tech/1397948872/

Visual Studio 2010 Express 他
http://www.visualstudio.com/downloads/
0002デフォルトの名無しさん2014/07/12(土) 22:03:04.63ID:EEESCNCM
>>1乙
0003デフォルトの名無しさん2014/07/13(日) 07:31:16.47ID:g8Ou8aAJ
               ノ      ゚.ノヽ  , /}      ...
            ,,イ`"     、-'   `;_' '    ..::::::::::::::...
   ,-、  _.._   (        (,(~ヽ'~     ..:::::::::::::::::::::::
 )'~  レー'  〉   ヽ       i`'}       .:::::::::::::::::::::::
 ~つ     '-ー、  i       | i'     ...:::::::::::::::::::::::
 /       <  /     。/   !  ......:::::::::::::::::::::::::    これは>>1乙じゃなくて
/         ~^´     /},-'' ,●::::::::::::::::::::::::::::::::::::
i、        ,i' _,,...,-‐-、/    i  ::::::::  .:::::::::::::
..ゝ        <,,-==、   ,,-,/      .:::::::::::            放射能がうんたら
 )       {~''~>`v-''`ー゙`'~       ..:::::::::                          ........::.
 {        レ_ノ            ..::::::::.                         ......:::::::::
ノ         ''           ..:::::::                        ...::.:...:::::::::
                     .:::::::::                     ...:......:::::::::::: .
                    .:::::::::::.        .....      ..  ..::::::::::::::::::::::::   :::.
                    ::::::::::::::::.::::::....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.. ::  ::..
                    .:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::    ::.
                    ::::::::::::::::: :::::::::::::::::::::::::::::: :::::
                          .::    ::.  :::
0004デフォルトの名無しさん2014/07/13(日) 19:34:37.81ID:4VhAszzu
C#使う利点ってあるの?
0005デフォルトの名無しさん2014/07/13(日) 19:57:31.68ID:oz53nHyg
比較対象が欲しいけど、利点はあるよ
0006デフォルトの名無しさん2014/07/13(日) 20:01:29.07ID:23lgyGDw
ポインタで挫折する以前にヘッダファイルって何?
状態から抜け出せなかった俺でもある程度は使いこなせた
0007デフォルトの名無しさん2014/07/13(日) 22:18:25.59ID:EcBF8wBQ
まあMFCとかATLでGUI書くよりかマシ
0008デフォルトの名無しさん2014/07/13(日) 22:48:44.90ID:anKHvXjm
>>6
ポインタで挫折した奴に生きる価値あるのか?
0009デフォルトの名無しさん2014/07/13(日) 22:51:47.78ID:QartcTk9
マジでGUI作るのが楽で良いよな
0010デフォルトの名無しさん2014/07/13(日) 22:53:50.74ID:EcBF8wBQ
>>8
おっちょこちょいだとか、迂闊だとか、あわてんぼうだとか
通知表に書かれたことないかな?
直ってないね
0011デフォルトの名無しさん2014/07/14(月) 10:49:14.33ID:sQKqFHYb
ワロタ
0012デフォルトの名無しさん2014/07/14(月) 12:51:24.86ID:rNFEdlTf
社交性がないって通知表に書かれたわ
0013デフォルトの名無しさん2014/07/14(月) 22:56:28.31ID:6c+G/uI4
性交性もないことがわかりました
0014デフォルトの名無しさん2014/07/15(火) 00:32:52.81ID:uvNrdoIu
C#でExcelファイルのデータを読み取る
プログラムを開発しているのですが、プロセスが消えずに残ってしまいます。

どうしようも無いのでfinallyブロックで強制的にExcelのプロセスを削除している
のですが何か良い方法はありませんでしょうか?


Microsoft.Office.Interop.Excel.Application ExcelApp
= new Microsoft.Office.Interop.Excel.Application();

ExcelApp.Visible = false;

Microsoft.Office.Interop.Excel.Workbook wb = ExcelApp.Workbooks.Open(ExcelBookFileName,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing);
・・・ 略 ・・・
//Excelを閉じる。
wb.Close(false, Type.Missing, Type.Missing);
ExcelApp.Quit();
0015デフォルトの名無しさん2014/07/15(火) 00:51:00.56ID:ieC5KU93
Type.Missingなくてもいいって言ってんだろ
0016デフォルトの名無しさん2014/07/15(火) 00:54:12.49ID:x+5aaFli
>>15
Youやるね。ありがとう!!
0017デフォルトの名無しさん2014/07/15(火) 01:02:19.97ID:mY+ggRid
>>14
ReleaseComObjectでググレ
↓はやり過ぎ(TryCatchしないで羅列でいい)だが
Excelオブジェクト(アプリだけじゃなくてRangeなども含む)
代入変数を使ったら全部使ったのとは逆の順で解放しとく。
http://jeanne.wankuma.com/tips/vb.net/programming/releasecom.html
まあプロセス削除で稼働実績があるならそれでもいいと思うけどね
バッチなら終わった後にtaskkillでもかましとけ
0018デフォルトの名無しさん2014/07/15(火) 18:17:52.57ID:zqJ3eiiK
>>14
直接Excelは触らないで↓みたいなラッパー使った方が色々と楽だよ

NetOffice - MS Office in .NET - Home
ttp://netoffice.codeplex.com/
0019デフォルトの名無しさん2014/07/16(水) 19:16:08.28ID:3E3HwAoB
UnitTestプロジェクト作ってソリューション内の別のプロジェクトを参照設定したんだけど
パスが設定されずビルドエラーになってしまう。生成されたDLLを直接指定したら一応
問題無いけど今まで普通のプロジェクトではこんな事になった事無いんだけど
何かダメな条件ってあるんだっけか?
0020デフォルトの名無しさん2014/07/16(水) 21:05:46.85ID:Q5qGFd/O
RIchTextBoxに表示されているテキストを、色やフォントなどの属性も
含めてファイルに保存して、後で読み込んで復活させたいのですが、
どういう手法がお勧めでしょうか?
0021デフォルトの名無しさん2014/07/16(水) 21:11:44.47ID:aERVPlt0
rtf
0022デフォルトの名無しさん2014/07/16(水) 21:34:14.59ID:Q5qGFd/O
>>21
ありがとうございます。
そんな便利な方法があったとは。。。
0023デフォルトの名無しさん2014/07/16(水) 21:45:38.76ID:19Y+Hlfl
リッチテキスト知らんかったんかいw
0024デフォルトの名無しさん2014/07/16(水) 21:49:48.86ID:KgZDRAwV
rtfなんてもうすっかり見なくなったもんなぁ
0025デフォルトの名無しさん2014/07/16(水) 22:00:54.26ID:gY6XKdVm
だがWPFの可能性も
0026デフォルトの名無しさん2014/07/17(木) 21:13:10.51ID:FtHZ5+2u
リストボックスで配列を横に並べて表示にする方法ありませんか?
普通にループでItem.addすると縦に表示されるんですけど
0027デフォルトの名無しさん2014/07/17(木) 21:21:53.64ID:9aoDUQ9K
無いね
0028デフォルトの名無しさん2014/07/17(木) 21:33:39.68ID:3NPE8Kwe
オーナードローで全部塗ればいいよ
ListBoxである意味は特になくなるが
0029デフォルトの名無しさん2014/07/17(木) 22:01:35.96ID:9aoDUQ9K
そもそも横に並べるって想像つかないよ
0030デフォルトの名無しさん2014/07/17(木) 22:05:04.97ID:3NPE8Kwe
ListViewの小アイコンとかメーラーの宛先欄みたいな感じじゃないの
0031デフォルトの名無しさん2014/07/17(木) 22:07:47.37ID:42y7zGLQ
横向きのリストボックスならタブで代用できる可能性がある
0032デフォルトの名無しさん2014/07/17(木) 23:40:52.34ID:59gMo7nN
アホはアホなUIを作りたがるよな
0033デフォルトの名無しさん2014/07/17(木) 23:45:34.65ID:CHh+pHJ5
縦書きリストボックス...
日本ならあってもいいかも
0034デフォルトの名無しさん2014/07/17(木) 23:50:28.43ID:cRl8S3rt
筋は縦に限る
0035デフォルトの名無しさん2014/07/18(金) 00:28:48.66ID:QbbXmizS
ま、素直にListView使うべきだね。凝ったことやるならタイルモードにしてItemをオーナードローする
0036デフォルトの名無しさん2014/07/18(金) 01:52:47.78ID:ZPfiEr2U
C#でIEを操作するプログラムを作っています。
(WEBブラウザーコントロールではありません。)

以下コードを実行した時に指定したIDが存在しない場合に
エラーになってしまいます。指定したIDがあるかどうかの
判定はどうすれば良いでしょうか?

現在は、try catch で囲っているのですがスマートじゃない
ので事前に有無を判定したいと思っています。

mshtml.HTMLDivElement div;
div = ie.Document.GetElementById("id123");
0037デフォルトの名無しさん2014/07/18(金) 05:44:55.98ID:AyLwcQB5
getElementByIdは見つからなかったらnull返すだけだからそこでは例外は出ないはずだが?
// なんかnullじゃなくてDBNull.Valueが返ってきたけど
0038デフォルトの名無しさん2014/07/18(金) 10:32:57.55ID:QuIJUfIo
"エラーになる"という言い回しは初心者特有なので
そこで述べられていること全てを疑う必要がある
0039デフォルトの名無しさん2014/07/18(金) 16:06:58.64ID:whbugrCq
>>36
エラーというのは発生するかではなく、内容が大事なんだ
エラーもとい例外メッセージをかけ
0040デフォルトの名無しさん2014/07/18(金) 19:20:00.92ID:o6btW2+j
Visual Studio を使っているなら、デバック機能を覚えた方がいい。

最低でも、
ブレークポイント
ステップ実行関連 (F5, F10, F11 キー)
ステップ実行時に変数をマウスオーバーする
くらいは覚えた方がいい。

ウォッチ式やクイックウォッチを使えば、ステップ実行時に変数の値を見たり書き換えることも出来るし、任意の式を実行することも出来る。
黄色い矢印をドラックすれば、任意のコード位置に移動することも出来る。
エディット コンティニューも便利。
0041デフォルトの名無しさん2014/07/18(金) 20:04:44.38ID:jJ+q1sz0
最近デバッグの機能使い始めたけど便利すぎ。
まだブレークポイントしか知らないけど
0042デフォルトの名無しさん2014/07/18(金) 21:13:57.89ID:Ga+SaMdr
便乗して例外ブレークポイントが反応しない事あるじゃん?あれなんだ?
全例外発生時にブレークなのにバックグラウンドスレッドで発生した例外がブレークしない事がある
0043デフォルトの名無しさん2014/07/18(金) 21:28:51.79ID:mLWb3JS4
スレッドとか非同期とかのデバッグの仕方は俺も知らない
0044デフォルトの名無しさん2014/07/18(金) 22:18:30.27ID:V7toNe43
>黄色い矢印をドラックすれば、
そんなこと出来たのか、、、知らなんだ
0045デフォルトの名無しさん2014/07/19(土) 02:18:45.00ID:gvotxpGy
あとイミディエイトウインドウも地味に便利
0046デフォルトの名無しさん2014/07/19(土) 08:14:27.98ID:zpIjsSal
継承したときに、ある変数の初期化を強制させたいのですが、
何か方法はありますか?
0047デフォルトの名無しさん2014/07/19(土) 08:17:02.54ID:OxX9GHw6
状況がよく分からんが基底クラスのコンストラクタ引数にしとけばいいんじゃね
0048デフォルトの名無しさん2014/07/19(土) 08:22:19.31ID:uF3oh4V2
asbtractプロパティ
デザイナとかでabstractが使えないなら例外投げるvirtualプロパティ
0049デフォルトの名無しさん2014/07/19(土) 08:25:39.32ID:zpIjsSal
おおぉ、めっちゃ基本的なことわすれてたー。。。
ちなみに、nullを許容しない方法はありますか?

確実に利用する変数なので、nullをセットできない、
コンストラクタ終了時に、その変数がnullなら例外を吐き出すみたいな。
0050デフォルトの名無しさん2014/07/19(土) 08:29:45.98ID:zpIjsSal
プロパティは理由があって使いたくないです。
virtualは概念が理解できていない。勉強してきます。
0051デフォルトの名無しさん2014/07/19(土) 08:37:36.42ID:WneSpWJh
>>49は生きてちゃいけない人だな
0052デフォルトの名無しさん2014/07/19(土) 08:40:59.77ID:ou2/YdBS
普通はプロパティ使う
0053デフォルトの名無しさん2014/07/19(土) 08:43:26.21ID:zpIjsSal
すいません。
やっぱ、多分プロパティでOKでした。
private にすりゃ問題なさそう。
0054デフォルトの名無しさん2014/07/19(土) 08:44:25.47ID:uF3oh4V2
protectedかinternalじゃないと無理
0055デフォルトの名無しさん2014/07/19(土) 08:48:19.46ID:zpIjsSal
protectedにしました。
ありがとうございます。
0056デフォルトの名無しさん2014/07/19(土) 12:36:05.69ID:zpIjsSal
visual studioでクラスなどフォルダに移動・整理したんですが、
その後名前を変更してもソース内を自動更新してくれなくなりました。
参照を直すにはどうすればいいでしょうか??
0057デフォルトの名無しさん2014/07/19(土) 14:07:58.90ID:u6YiZggm
一から設計を見直して新規に作り直せばいいと思うよ
0058デフォルトの名無しさん2014/07/19(土) 15:33:18.99ID:BPvl9Xba
プログラマに向いてない奴だと思うけどw
0059デフォルトの名無しさん2014/07/19(土) 16:02:01.34ID:zpIjsSal
設計の問題じゃないでしょ。
名前空間やフォルダ階層は一致してなくてもいいし、
ファイル名とクラス名も一致してなくていい。

だけど、visual studioが名前の自動更新をしてくれる場合は、
名前空間とフォルダ階層一致させてないとだめなの?
0060デフォルトの名無しさん2014/07/19(土) 16:07:49.98ID:HMgx6Gqk
何で場所を移したの?
ソリューションエクスプローラから変えないと見つけられなくなるぞ
0061デフォルトの名無しさん2014/07/19(土) 16:35:16.83ID:zpIjsSal
ソリューションエクスプローラー上でフォルダ作って移動してるだけなのですが。。。
0062デフォルトの名無しさん2014/07/19(土) 16:40:57.63ID:zpIjsSal
seから新規クラスを作る(自動更新できる)
seからフォルダを作ってそこに移動させる
seで移動したクラスの名前を変更する→自動更新させれない

元のフォルダに戻す
seで移動したクラスの名前を変更する→自動更新させれない
ソースのクラスと名前を一致させてから名前を更新する→自動更新される
0063デフォルトの名無しさん2014/07/19(土) 16:46:49.02ID:wF73piGx
もう少し正確に伝える事を心掛けたら?
細かい説明書いてくれても名前の解釈が曖昧で分からない
0064デフォルトの名無しさん2014/07/19(土) 16:59:50.89ID:v+hMyLPF
説明能力とプログラミング能力ってかなり近いよねw

恐らくだけど、質問者の彼はVSのリファクタリング機能を知らずに、
クラス名を変えたい時にcsファイルのファイル名を変更してるのかもね。
0065デフォルトの名無しさん2014/07/19(土) 17:10:01.48ID:zpIjsSal
なるほど、ソース上の名前なりメソッドなりでF2を押すと確実っぽいんですね。
ファイル名とクラス名と言えばよかった?
すいませんね、javaだと名前っつたら1つしか許容してなかったもんで。
0066デフォルトの名無しさん2014/07/19(土) 17:10:53.20ID:71/bQDSL
自分で試行錯誤して検証できるなら自分で解決できるやろ
0067デフォルトの名無しさん2014/07/19(土) 17:55:03.45ID:obDG7+Ih
コードファイルのファイル名とかフォルダ名と
クラス名はまったく無関係

そのへんの用語が混沌としてたから要領を得なかったんだ
0068デフォルトの名無しさん2014/07/19(土) 18:06:10.87ID:0o8EVBYO
C#の問題じゃなくてVSの問題だろ
VSのスレもあるのに、バージョンも書かずにここで聞くって、問題解決能力足りてないな
0069デフォルトの名無しさん2014/07/19(土) 18:19:27.67ID:zpIjsSal
そこは暗黙的に2008以降ぐらいに変換してください。
そういう機能はだいたい一緒でしょう?
0070デフォルトの名無しさん2014/07/19(土) 19:08:53.97ID:wF73piGx
>>69
>だいたい一緒
これプログラマの嫌いな言葉
それに不可解な挙動ならバグの可能性を考慮してバージョンは書くべき
0071デフォルトの名無しさん2014/07/19(土) 19:35:58.94ID:CQvpVu5m
VS2010で関数の引数名をリファクタリングで直すと
関係ない別の関数で引数名が同じだったやつのコメントまで変更かかるから困ったなあ
0072デフォルトの名無しさん2014/07/19(土) 19:51:20.31ID:YqPSFB9b
大体一緒wwwwwwwwwww
0073デフォルトの名無しさん2014/07/19(土) 20:03:54.47ID:SkJK45jH
別物じゃないか
0074デフォルトの名無しさん2014/07/19(土) 22:32:38.36ID:zpIjsSal
えー、超標準機能のバグまで疑わなきゃいけないの
0075デフォルトの名無しさん2014/07/19(土) 23:34:05.28ID:hHx90bf2
Formに11行7列のtableLayoutPanel作って
そこに
Label Checkbox TextBox Checkbox TextBox Checkbox TextBox //1行目
Label Checkbox TextBox Checkbox TextBox Checkbox TextBox //2行目
...
Label Checkbox TextBox Checkbox TextBox Checkbox TextBox //11行目
のように配置しました。動作は問題なく動くのですが、気になった点があります。
それは、このFormをアイコン化してその後復活させると、Formが表示された直後にtableLayoutPanelの
上記の多数のコントロール群が消えていて、それらチラチラしながら表示されて行くのです。一瞬の出来事なのですが、
見た目が変なので、原因と対策を知りたいのです。心当たりありましたら教えてください。
なお、チラチラしている間にどこかのイベントハンドラ関数に飛んでいるかどうか調べましたが、デバッガで見た
限りはどこにも飛んでいませんでした。
0076デフォルトの名無しさん2014/07/19(土) 23:46:31.09ID:1NZ7HCIK
コントロール置きすぎ
0077デフォルトの名無しさん2014/07/19(土) 23:52:52.27ID:onnbzxeC
>>75
DataGridViewを使うことを検討する。
基本的にWindows Formは多くのコントロールを配置するのに向いてない。

とは言っても、その程度の数で問題がでるとも考えにくい。
ダメな人にありがちだけど、本当はそこに書いてない変なことやってるでしょ。
0078デフォルトの名無しさん2014/07/20(日) 00:53:28.43ID:LX9jfDLS
>>77
アドバイス有難うございました。
不要な関数を全部削除して、
public partial class Form1 : Form
{
  public Form1()
  {
    InitializeComponent();
  }
}
にしても再現しました。ということで、tableLayoutPanelは、こういう用途には向いていない
ということでしょうか。パソコンの性能は結構高性能な奴なんですが。。。
0079デフォルトの名無しさん2014/07/20(日) 01:26:36.61ID:WnX1KPTq
>>78
本当に7列×11行なの?
たった77個でそんな症状が出るとも思えんけど。
0080デフォルトの名無しさん2014/07/20(日) 02:09:01.37ID:+YOkQ4ve
>>75
イベント見るならこの方がいいよ

スレッドへの全メッセージをデバッグ出力
http://ideone.com/SNqfRx

やってみたら最小化からの復帰時は全コントロール再描画してて確かにちらつくね
(1コアしか利用されないからCPUの性能差はあまり関係ない)

という訳でダブルバッファリング有効にしたら改善したよ
0081デフォルトの名無しさん2014/07/20(日) 02:09:02.01ID:ZTbpHETh
30個ぐらいでも遅く感じるわ

コントロール毎にPaintしてるんだよね
1回で全部Paintしてほしいわ
0082デフォルトの名無しさん2014/07/20(日) 11:14:59.30ID:LX9jfDLS
>>80
>>スレッドへの全メッセージをデバッグ出力
こんな便利な機能知りませんでした。勉強になりました。
有難うございます。
0083デフォルトの名無しさん2014/07/20(日) 11:28:51.72ID:Kl34tPC4
ラムダ式習得したいんですが、お勧めの参考書ありますか?
0084デフォルトの名無しさん2014/07/20(日) 11:50:06.89ID:pk80fohu
C#のラムダ式って修得するほどのこと?
デリゲートの略記法みたいなもんじゃね?
0085デフォルトの名無しさん2014/07/20(日) 12:12:16.83ID:Tv/4FkJB
キャプチャーの仕様を正しく説明しているサイトを見たことがないな
ん?と思わせる例だけ出して仕様の説明がないので わかりにくいのは確か
0086デフォルトの名無しさん2014/07/20(日) 12:18:58.97ID:tCPVLYvT
System.Management.ManagementObjectの値をデバッガで表示させようとすると
「前の関数の評価がタイムアウトしたため、関数の評価は無効になりました。
続けて実行し、再度関数の評価を有効にしてください。」
といったエラーが出て表示できないのですが対処方法はありますか?
0087デフォルトの名無しさん2014/07/20(日) 14:28:41.47ID:sfFRPwxh
>>85
川俣大先生の記事で十分だろ
0088デフォルトの名無しさん2014/07/22(火) 01:20:12.87ID:7jm5B1Yt
VS2013のC#で作った簡単なFormアプリが、
VMware上のWinXPでは動くけれど、
他の仮想化ではない普通のWinXPパソコンでは、ダブルクリックで起動すると
無反応になって、タスクマネージャでもなかなかkillできません。WinXPを再起動して
ようやく止まります。
デバッグしたいのですが、WinXPではVS2013動かないのでVS2010Express入れて
VS2013のソースをVS2010でリビルドしたら、問題なく動いてしまいました。
ということで、VS2013でビルドしたアセンブリが何でWinXPで動かないのか
突き止める方法がありません。どうしたら良いでしょうか?
0089デフォルトの名無しさん2014/07/22(火) 03:34:32.10ID:sFUEgbf6
>>88
ターゲットのFrameworkのバージョンは?
0090デフォルトの名無しさん2014/07/22(火) 04:42:36.74ID:7jm5B1Yt
>>89
4.0です。
0091デフォルトの名無しさん2014/07/22(火) 06:23:49.60ID:g9QQ7Nsg
VMware上の仮想CPUの数は?
実機のCPUコアの数は?
0092デフォルトの名無しさん2014/07/22(火) 06:35:16.11ID:03TLG3S+
いるよね
こうやって関係ない質問をし始めるひと
0093デフォルトの名無しさん2014/07/22(火) 07:22:08.20ID:SL1kaC2d
>>88
未だにXPを使ってる糞企業と縁を切れば解決する。
0094デフォルトの名無しさん2014/07/22(火) 07:37:15.39ID:jYweuVUC
イントラで使われ続けている事実は動かしようがないんだから
XP向けの開発が存在するのはしょうがないだろ。
ただそういうところにどうしてVisual Stdio 2013を持ってくるかなあ
0095デフォルトの名無しさん2014/07/22(火) 10:27:20.19ID:bWL3+Y9d
VC++2013はXP用のツールセット指定すれば普通に動くで
ダサいなーC#
0096デフォルトの名無しさん2014/07/22(火) 11:46:11.40ID:sFUEgbf6
>>90
XPに4.0のフルは普通入ってないだろ
0097882014/07/22(火) 12:39:42.45ID:7jm5B1Yt
原因わかりました。
ノートンNISが、
SONAR.Heuristic.120
を検出しましたと言って、このプロセスを停止させていたようです。
何だこりゃ、このSONAR.Heuristic.120というのは。
0098デフォルトの名無しさん2014/07/22(火) 15:52:23.03ID:bWL3+Y9d
ノートン先生「釣れた釣れたw」
0099デフォルトの名無しさん2014/07/22(火) 19:35:50.33ID:CFFEnkP1
>>97
ヒューリスティック分析は職質みたいなもん
疑わしきは罰すということで即逮捕
0100882014/07/22(火) 20:32:06.73ID:7jm5B1Yt
原因は分ったのですが、対策が分りません。
もしご存じでしたら誰か教えてください。
不思議なのはWin7とWinXPに同じNIS入れているのに
WinXPのNISのみ反応するようなんです。ますます分らん。
0101デフォルトの名無しさん2014/07/22(火) 20:38:29.95ID:CRxaiKGK
>対策が分りません
知覚障害者にはわからないのかも知れないな
0102デフォルトの名無しさん2014/07/22(火) 20:56:21.56ID:rMlYKtuR
XPでは動かないようにわざとMSがしてる
0103デフォルトの名無しさん2014/07/22(火) 21:05:05.61ID:7jBUreA7
セキュリティソフトの検出は複雑だし、ウイルスの検出回避につながるからあんま教えてもらえないと思うぞ
セキュリティソフトの例外にでも登録しとけ
0104デフォルトの名無しさん2014/07/22(火) 21:18:23.14ID:T9yQj7Mf
アンチウイルス側でダイアログ出て止まる設定にして、デバッガかProcess Explorerでも使えば該当箇所が分かるんじゃないかな
0105デフォルトの名無しさん2014/07/23(水) 03:53:44.36ID:Xrw5MLu3
System.Windows.Media.Imaging.JpegBitmapEncoderを
複数のTaskで同時に処理させたり出来る?
0106デフォルトの名無しさん2014/07/23(水) 08:37:21.06ID:D/vj8f+C
うん
0107デフォルトの名無しさん2014/07/25(金) 09:45:38.09ID:674Ucww+
他のプロセスのフォルダへのアクセス状況を把握する方法ってありますでしょうか?

DOSコマンドのopenfilesであれば、現在ファイルを開けている状況とプロセス一覧が出てきますが、
ファイルのオープン状況ではなく、フォルダへのアクセス状況です。

例えば、D:\test フォルダを削除しようとした場合に、そのフォルダの中のファイルを
別プロセスがコピー中や、新たなファイル作成中といった場合、そのフォルダを削除することが出来ません。

その把握をC#でできますでしょうか。
0108デフォルトの名無しさん2014/07/25(金) 09:57:47.77ID:cQJQccdW
フォルダのセキュリティを開いて監査オプションをON
0109デフォルトの名無しさん2014/07/27(日) 03:52:28.33ID:iWp898PH
フォルダ削除してみて無理だったら例外出るでしょ。
それじゃだめなの?
0110デフォルトの名無しさん2014/07/27(日) 12:02:15.38ID:UxoXyWHH
ファイルやフォルダの削除や作成、更新を監視するクラスがあったと思うけど。
それを使って「削除」イベントが発生したときに内容を調べればいいんじゃね。
詳細は忘れた。
0111デフォルトの名無しさん2014/07/27(日) 12:38:48.85ID:wQydw/95
VSでvi使っているヤツいる?

viが便利過ぎてWindows環境でもgvim使ってるわ。

生産性があがるからviオススメ
0112デフォルトの名無しさん2014/07/27(日) 12:52:19.99ID:mxnj4YcW
>>111
VSではVsVim、それ以外はgvimを使ってる。
便利すぎるとはか同意するけど、癖がかなり強いから一般向けではないな。
0113デフォルトの名無しさん2014/07/27(日) 13:03:40.26ID:IVpGOJRj
>>112
VsVim入れてみるわ。

Windows Live メールとかもviが使えたらどれだけ便利なことだろう。
これを実現する事の出来るソフトとかってあるかな?

更にいうと Jane Styleとかもvimが使えたらかなり便利なんだがw
0114デフォルトの名無しさん2014/07/27(日) 15:11:43.00ID:elqCgs4k
>>110
その程度の理解でインストーラを監視させたら途中で止まってた
よく調べてから使う必要あるみたい
0115デフォルトの名無しさん2014/07/27(日) 15:47:37.04ID:1J+gcL+3
>>113
昔KeyViというものがあったが、今のOSで使えるかな
0116デフォルトの名無しさん2014/07/27(日) 15:58:30.88ID:mxnj4YcW
>>113
FirefoxにVimperator入れて、chaikaとか。
0117デフォルトの名無しさん2014/07/30(水) 01:17:31.78ID:rC5pLHWn
質問よろしく。
スレ違いだったら誘導お願いします。

SharePoint
↑ |
| ↓
ASP.NET Web API(C#)
↑ |
| ↓
クライアントアプリ(C#)

クライアントアプリからASP.NETのRESTつついて、ASP.NET内では
SharePointつついてデータを返すような上記構成のシステム作ってます。
ちょっと問題なのが、ASP.NETやSharePointが(正確にはIISが)時間経つと
眠ってしまうので、久々にクライアントからASP.NETにアクセスすると
異常に遅いって点です。

これを解決する方法として以下のいずれかを考えたんですが、
一般的にはどうやって解決するんすかね?

�@IIS(ASP.NET、SharePoint、両方のIIS)のワーカープロセスのアイドルタイムアウトを伸ばす
�A定期的にIIS(ASP.NET、SharePoint、両方のIIS)をつつくプログラムを作る

アドバイスお願いします。
0118デフォルトの名無しさん2014/07/30(水) 01:23:57.56ID:rC5pLHWn
補足
SharePointとASP.NET WebAPIが別サーバです。
0119デフォルトの名無しさん2014/07/30(水) 04:07:34.42ID:+MmS1mvl
まず遅い原因を調べます
0120デフォルトの名無しさん2014/07/30(水) 06:31:20.16ID:Lkbwh9JK
IISの設定で常時起動にできる
IProcessHostPreloadClientを作るとなおよい
0121デフォルトの名無しさん2014/07/30(水) 19:46:02.20ID:CZ1rBAVE
>>120=どうしようもないばか
0122デフォルトの名無しさん2014/07/31(木) 01:12:07.83ID:KF+XYdJs
)  → みぎちゅうかっこ

}  → みぎかぎかっこ

】 → みぎすみかっこ


読み方はあってますか?
0123デフォルトの名無しさん2014/07/31(木) 01:14:15.95ID:FvqdRIWT
)→しょうかっこ
}→だいかっこ
じゃないの?
0124デフォルトの名無しさん2014/07/31(木) 02:25:05.52ID:dfHGUrmv
↑
ちげーだろ
0125デフォルトの名無しさん2014/07/31(木) 05:35:08.74ID:iOYkFzCG
「」←これがカギ括弧です


ググる日本語入力で 【 なんかを変換すると名称が出てくるよ
0126デフォルトの名無しさん2014/07/31(木) 10:00:03.99ID:lG7DqVRw
}が中で]が大って中学の数学で出てくるような・・・
0127デフォルトの名無しさん2014/07/31(木) 10:05:15.33ID:N7h43RT+
()まるかっこ
{}なみかっこ
[]かくかっこ
0128デフォルトの名無しさん2014/07/31(木) 10:14:54.76ID:ik8GlZaC
>>126
世界的にも大学数学的にも中と大は逆なんだよなー
波括弧角括弧で覚えた方がいいかもね
0129デフォルトの名無しさん2014/07/31(木) 12:04:37.20ID:jdJsZ4Jc
parenthesis
brackets
braces
どれがどれかわからん
0130デフォルトの名無しさん2014/07/31(木) 22:17:27.72ID:QWrDDj6a
ぶらは丸みを帯びてる
0131デフォルトの名無しさん2014/07/31(木) 22:26:59.33ID:F0hBqG98
括弧 - Wikipedia
ttp://ja.wikipedia.org/wiki/%E6%8B%AC%E5%BC%A7

訳が分からないよ…
0132デフォルトの名無しさん2014/07/31(木) 23:24:34.60ID:MBlKtYbZ
windows.formとかで、
コンボ1を選ぶとテキスト2,3を無効化するみたいな処理を作るとして、
どうやって実装するの?

というは、コードをゴリゴリかくのか、
設計書を読み取って自動でそういう設定にしてくれるような仕組みを作るのか。

後者は単純な条件ならできそうだけど、複雑になると対応できなそうですよね?

あと、数字型だとか桁数はいくつだとか、
設計書にかかれているのを人力で設定していくものなのか、
スーパープログラマーのみなさまはどうやってるんですか?
0133デフォルトの名無しさん2014/07/31(木) 23:43:58.42ID:DnRDVYBo
( )笑
0134デフォルトの名無しさん2014/08/01(金) 00:17:23.16ID:Kifk2fHi
>>132
まず落ち着いて、自分が何を質問したいのか頭の中を整理しよう。
あんた自分でそれが分かってないだろ。
あんた自身が分からないことは他人はもっと分からない。

それが出来たら、次はそれが他人にうまく伝わるように質問文を推敲する。

中学生じゃないんだろうから、人に指摘される前にこのぐらいやれよ。
0135デフォルトの名無しさん2014/08/01(金) 00:56:45.96ID:FxBBG4fg
>>132
(1)ゴリゴリ書く
(2)定義ファイルを元に動く仕組み(フレームワーク)
(3)設計書からソース生成出来る仕組み
上流工程で決定する事なので何も言われてなければ1だよ
ゴリゴリと言ってもForm作るのはIDEの機能使って良いからね
0136デフォルトの名無しさん2014/08/01(金) 01:15:12.20ID:P+quQnfw
>>132


{おまえ馬鹿過ぎ}



[馬鹿グラマでもそれくらい組める]
0137デフォルトの名無しさん2014/08/01(金) 02:44:16.17ID:AiMrMkIN
>>134
135さんみたいに普通のプログラマーなら分かるよ。
私と一緒にあなたも中学生から勉強しなおしましょうね。
10いわれる前に汲み取りなさいね。

>>134
フレームワークを使わないのは、仕組みを超えた要件を要求される場合があるからとか
理由があるんでしょうか?
それともただ単に、何も言われてないからでしょうか??
0138デフォルトの名無しさん2014/08/01(金) 03:49:28.46ID:g4RWOyPT
定義ファイルを元に動くフレームワークを使うかどうかが上流工程で決まる
とか言い出す>>135はどれだけ下流で仕事してんだよw
0139デフォルトの名無しさん2014/08/01(金) 05:47:03.62ID:Mjd2jJg4
>>131
文系用の解説だな
0140デフォルトの名無しさん2014/08/01(金) 12:39:35.02ID:ouOyJdLW
>>137
ダメだなこりゃ。
ちゃんとまともな成績で義務教育修了してるのかねこういう人。

この業界もこんなのが入って来るようになって長いけど、
こんなのに限って2chとかでブラックだの搾取だのピンハネだの吠えてるから笑える。
0141デフォルトの名無しさん2014/08/01(金) 12:40:31.26ID:przyRGDv
ごめんごめん
オレオレ用語を使ってるとサイコーに馬鹿っぽく見えるんだよね
0142デフォルトの名無しさん2014/08/01(金) 16:04:57.88ID:7Bwc92e6
つか、無効化の処理など5分も有れば書ける程度だし、数値の件はコンポーネントを組んだり買ったりダウンロードして使うのが普通だろ
数値入力コンポーネントなど大した手間じゃないし、ソレが無理ならネットで拾ってくればいい
0143デフォルトの名無しさん2014/08/01(金) 17:22:58.55ID:xkvhQLYF
手を着けなければいつまでも始まらない
そのまま老いていけ
0144デフォルトの名無しさん2014/08/02(土) 09:44:33.15ID:YIkNLJkp
>>132
あわてて質問したと思いますが、
コントロールの活性・非活性や、入力チェック等の機能は、
そのシステム開発でその都度作るのか(コードをゴリゴリかくのか)、
汎用的なライブラリ(設計書を読み取って自動でそういう設定にしてくれるような仕組)を1度作って、
他のシステム開発でも使用できるように、設計・実装したほうが良いのか?
ということが言いたかったのでしょうか?

ということであれば、
自分の経験ではほとんどがその都度作成しています。
汎用的なライブラリも個人的には持っていますが、
導入を提案しても受入れられることはまずありません。
もっと言うと、C#開発言語として使用する現場では、
オープンソースフレームワークの導入もNGというところが多いです。

ちなみに、ご要望のコントロールの活性・非活性機能は
https://skanda-project.net/
のオープンソースフレームワークにありますよ!
サンプルをダウンロードして試してみると、設計書の記載によって、
コントロールのプロパティを制御できるような機能があります。
0145デフォルトの名無しさん2014/08/02(土) 13:37:23.07ID:I6LtwyZc
>>144
このフレームワークは初心者でも扱いやすいのかな
0146デフォルトの名無しさん2014/08/02(土) 17:16:38.31ID:ETyhgdmp
>>143
ほんとそれ
0147デフォルトの名無しさん2014/08/02(土) 21:34:25.37ID:LCNjrj0W
すいません質問です。
構造体の参照のリスト的なものって
使えないんでしょうか?
0148デフォルトの名無しさん2014/08/02(土) 22:09:18.70ID:fNoV+ZBu
__makerefしてTypedReferenceをリストに入れるか
ポインタを取得してIntPtrにキャストして入れる
どっちもGCを追跡できないから使ってる間はpin必須
0149デフォルトの名無しさん2014/08/02(土) 22:14:02.53ID:VqKsb/+F
構造体の参照の方法は訊いていません
構造体の参照のリスト的なものの方法を訊いています
質問に答えてください
0150デフォルトの名無しさん2014/08/02(土) 22:18:22.69ID:aiHAwJSf
白雉は消えろ
0151デフォルトの名無しさん2014/08/02(土) 22:23:49.62ID:ex0SuTLa
いくら148がアホでもハクチは言い過ぎ
0152デフォルトの名無しさん2014/08/02(土) 23:29:54.19ID:YIkNLJkp
>>145
扱いやすいって微妙ですが・・・

自分が使ったことのあるその他のOSSと比べると、
設計書の記載が実装に直結しているのは良いと思う。

そういう仕組みなので実装ミスというのはほとんどないし、
目的の機能を実行するのに数行行書けばOKというのも、
自分好みではあります。

但し、設定が多いのが気になります。
それから慣れるまでにはちょっと時間が掛かるかな!?
後は、自分で確かめたほうが・・・
0153デフォルトの名無しさん2014/08/03(日) 11:56:39.66ID:eADZ8HIX
はい
0154デフォルトの名無しさん2014/08/04(月) 23:35:56.86ID:cVu5uVWI
質問です
async/awaitってawaitの現れる至る所でTaskが生成されると思います
TaskはIDisposableですけど誰もDisposeしなくて
大丈夫なんでしょうか
0155デフォルトの名無しさん2014/08/05(火) 00:37:18.73ID:ROZmRsG6
>>154
ハンドル削除が後回しになるくらいで、割と影響はないと考えてるっぽい
http://social.msdn.microsoft.com/Forums/vstudio/en-US/7b3a42e5-4ebf-405a-8ee6-bcd2f0214f85/task-dispose-best-practice?forum=parallelextensions
0156デフォルトの名無しさん2014/08/05(火) 11:26:01.78ID:Dna2az0q
スケジューラーを使い回ししてるのかな?
0157デフォルトの名無しさん2014/08/06(水) 22:33:50.22ID:EBQKfsVY
Feee Web ProxyとかでIPを提供している人達は
一体何の為にその様な危険な事をしているのでしょうか?

proxyとしてIPを貸し出したとしても悪意を持った人間に
2ch等に「〇ろす」とか書き込みをされたら
警察に勘違いしてIPの提供者が逮捕されてしまうリスク
がある筈です。私にはそんな危険な事は出来ません。

何が目的なんでしょうか?
0158デフォルトの名無しさん2014/08/06(水) 22:35:37.36ID:D7thorTe
スレ違いというか板違い
0159デフォルトの名無しさん2014/08/06(水) 23:16:54.39ID:AGBFAu/N
>>157
プロキシに繋いだ状態でどっかのサイトにメールアドレスとパスワードを入力したことない?
そのサイトはhttpsだった?たまたま個人的なしょぼいサイトでhttpだったりしなかった?
そのパスワードはgoogleアカウントのパスワードと同じだったりしない?
つまりそういうことだ
0160デフォルトの名無しさん2014/08/06(水) 23:22:33.87ID:AGBFAu/N
>>157
あと、君がプロキシ経由で見たネットバンキングのサイト、
本当にその銀行に繋がってた? もしかしたらどっかのマンションの一室かもよ?
全てはプロキシサーバーの設定次第…
0161デフォルトの名無しさん2014/08/07(木) 01:04:10.24ID:DtNRn90p
>>158
死ね

>>159 >>160
なるほどですね。つまりは悪い事をする為にトラップを貼っているんですね。
0162デフォルトの名無しさん2014/08/07(木) 01:05:49.16ID:+VQtkMd2
>>161
お前が死ねよキチガイ
0163デフォルトの名無しさん2014/08/07(木) 03:13:52.89ID:Hf7pUwbb
>>162
黙れ劣性遺伝子
0164デフォルトの名無しさん2014/08/07(木) 03:20:30.65ID:FDj3Cifd
お前にサンが救えるか
0165デフォルトの名無しさん2014/08/07(木) 07:46:37.08ID:eLx8dP5N
SunならOracleに吸収されたろ
0166デフォルトの名無しさん2014/08/07(木) 09:35:12.85ID:x82tPARi
サンってなに?
0167デフォルトの名無しさん2014/08/07(木) 09:40:53.21ID:UtjYrkXD
アシタカ
0168デフォルトの名無しさん2014/08/07(木) 11:08:20.31ID:DfYUpYGn
やっぱり商品が無料じゃやってけないよね
0169デフォルトの名無しさん2014/08/07(木) 12:08:55.72ID:rodRZPSU
カスタムコンフィグファイルを埋め込まれたリソースにした場合のセクションを取得する方法が不明です。

コンフィグファイルのセクションが下記のように定義されている場合
<configSections>
<section name="CustomSection" type="Hogehoge.Config.CustomSection, Hogehoge"/>
</configSections>

埋め込まれたりソースで無い場合はコンフィグファイルのパスを指定すれば下記のコードで取得できます。
ExeConfigurationFileMap fileMap = new ExeConfigurationFileMap();
fileMap.ExeConfigFilename = "コンフィグファイルのパス";
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);
var section = config.Sections.Get("CustomSection") as CustomSection;

カスタムコンフィグファイルのビルドアクションを埋め込まれたリソースにして、
ConfigurationSectionを取得する方法ってあるのでしょうか?
0170「ガスライティング 集団ストーカー カルト」で検索を!2014/08/07(木) 12:40:56.02ID:LF5jvFie
★マインドコントロールの手法★

・沢山の人が偏った意見を一貫して支持する
 偏った意見でも、集団の中でその意見が信じられていれば、自分の考え方は間違っているのか、等と思わせる手法

・不利な質問をさせなくしたり、不利な質問には答えない、スルーする
 誰にも質問や反論をさせないことにより、誰もが皆、疑いなど無いんだと信じ込ませる手法


偏った思想や考え方に染まっていたり、常識が通じない人間は、頭が悪いフリをしているカルト工作員の可能性が高い
...
0171デフォルトの名無しさん2014/08/07(木) 14:12:23.92ID:ZLlHuLx8
コピペマン参上!まで読んだ。
0172デフォルトの名無しさん2014/08/07(木) 14:54:33.64ID:DXKkY0VC
勤勉な無能はほんと害悪
0173デフォルトの名無しさん2014/08/07(木) 19:35:55.02ID:Cj0R8Msm
呼ばれた気がした
0174デフォルトの名無しさん2014/08/08(金) 13:36:52.74ID:6ETwxmsM
スレ違いかもしれませんが
Windows 7 でエクスプローラーを開くと画面の左側に
TreeViewの様なエリアが表示されていますが
これを非表示にする事は出来ませんか?

画面を広く使いたいのにこのTreeViewの様なエリアのせいで
非常に使い辛いです。
0175デフォルトの名無しさん2014/08/08(金) 13:41:42.85ID:6s2vkVir
むしろこのスレで合ってるかもしれないと思った理由を聞きたいよ
0176デフォルトの名無しさん2014/08/08(金) 13:48:45.07ID:zoQPfQ/y
>>174
ツールバーの整理>レイアウトで非表示に出来ます。
0177デフォルトの名無しさん2014/08/08(金) 19:51:57.35ID:Cc+e7TLU
>>175
プログラムから制御するんだろjk
0178デフォルトの名無しさん2014/08/08(金) 23:12:09.81ID:SlZNoa9x
>>176
サンキュー

.
>>175 >>177 アナルを掘りあえ
0179デフォルトの名無しさん2014/08/09(土) 08:06:14.09ID:qhfKsLpg
>>178みたいなのは愉快犯だから
0180デフォルトの名無しさん2014/08/09(土) 11:16:35.13ID:dMA4xjzK
>>174

エクスプローラー上のナビゲーションウィンドウを非表示にするには?
http://know-how-tree.com/archives/408


ぐぐりスキルをまずは身に着けよう。
0181デフォルトの名無しさん2014/08/09(土) 11:24:10.76ID:pth/IBVX
>>180
マジレスしてんじゃねーよ、バーカ
0182デフォルトの名無しさん2014/08/09(土) 12:10:18.51ID:ThCM2sNf
そんなつまんない話よりも、こっちこっち↓笑える休憩タイム。

【「指ぱっちん」の天才霊能者八意先生に関するサイト】

天才霊能者の八意先生は埼玉県八潮市生まれ育ちの21歳です。
悩み事があるときや困ったことが起きたら、まず八意先生に相談しましょう。
以下のサイトをすべて読み終わったら、
腹を抱えて大笑いしてしまうことをお約束します(※ は無料心霊写真鑑定)。
お気に入りに追加することをお勧めします。

※ http://blog.goo.ne.jp/nichikon1/e/e066fd39cd23872a3c73cf91f4b50b8c
※ http://blog.goo.ne.jp/nichikon1/e/5aac5cd13eafbf5581a7e2ff79b6c16c
※ http://blog.goo.ne.jp/nichikon1/e/93b5c268d3aefeccd92753a7c58a6ded
※ http://blog.goo.ne.jp/nichikon1/e/788f3056778b0f74495648964bfb1d1e
※ http://blog.goo.ne.jp/nichikon1/e/da81f66fa7c437e7ca19667c2bf35065
※ http://blog.goo.ne.jp/nichikon1/e/d9d05d45085c29df2c0e994a4b60d816
※ http://blog.goo.ne.jp/nichikon1/e/475621ba2615792fe2478f597e31b488

http://www.reinou.jp/bai.html
http://www.reinou.jp/rei.html
http://www.reinou.jp/warashi.html

http://blog.goo.ne.jp/nichikon1
http://www.reinou.jp (八意先生の携帯番号はここ。)

八意先生が口にしたことは絶対に起こりません(地震が発生する日付の予想など)
でも、あなたのどんな悩みでも、八意先生が「指ぱっちん」で解決してくれます。

一応、コメントも含めてすべて読んでみてください。
☆コメントの書き込み・誹謗中傷も大歓迎です。☆
0183デフォルトの名無しさん2014/08/09(土) 13:00:35.39ID:cMAC0zr6
緊急災害板でみたコピペ
0184デフォルトの名無しさん2014/08/09(土) 15:04:42.51ID:goTO32Iq
そんなのより指ぱっちん木魚の方が面白い
ttp://www.youtube.com/watch?v=gcSyePzuXTU#t=70
ttp://www.youtube.com/watch?v=1Uho5V9YO_Y
ttp://www.youtube.com/watch?v=CThLHHbvOrc
0185デフォルトの名無しさん2014/08/09(土) 15:31:25.32ID:Qyv9mEBu
今後も見かけそうだからNGワードに入れといた
0186デフォルトの名無しさん2014/08/10(日) 08:29:15.14ID:aTEKyeJh
http://www.buzzword.jp/img/face10.png
0187デフォルトの名無しさん2014/08/10(日) 13:35:15.88ID:DIv5/2S3
汚い顔を貼らないでください
0188デフォルトの名無しさん2014/08/10(日) 13:40:14.92ID:Lx1gKQif
Bluetoothで送ったいくつかの数値をディスプレイに表示するだけの汎用デバイスってないのかな
Bluetooth腕時計使えばアプリ側でなんとかなるかな?
01891882014/08/10(日) 13:42:58.97ID:Lx1gKQif
誤爆
申し訳ない
0190デフォルトの名無しさん2014/08/10(日) 20:24:44.37ID:KGgfmL2E
C#というより、webサービスについての質問。
サーバとクライアントで大量のデータをやりとりするアプリ作ってます。
クライアントからサーバへのデータ送信時には
System.Net.Http.MultipartFormDataContent
を使って一度のPOSTでマルチパートで大量データ(画像等も含む)を簡単に送信出来るけど、
サーバからクライアントに一度に大量のデータを送信する仕組みってないんすかね?
文字列や数値データとか画像とか、いろいろ一度に取得したいんすけども。
一般的にはそんなことしない?
0191デフォルトの名無しさん2014/08/10(日) 20:31:59.39ID:KGgfmL2E
当然ながらサーバもC#です。ASP.NET WebAPI。
0192デフォルトの名無しさん2014/08/10(日) 20:40:10.06ID:QUfBzj86
>>181
お前と違って俺は親切なんだよ。あほんだら。
0193デフォルトの名無しさん2014/08/10(日) 21:08:28.17ID:xA1m8T8F
>>190
お前の仕事の質問なら回答者に賃金を支払えよ。
0194デフォルトの名無しさん2014/08/10(日) 21:15:03.02ID:6flSNFOv
サーバーからクライアントにデータ送信したらおかしいだろ
0195デフォルトの名無しさん2014/08/10(日) 21:26:26.91ID:DIv5/2S3
おかしいとは思わんが
1セッションで何でもかんでも送ろうとするとスケールしないから、そんなことはやらない
0196デフォルトの名無しさん2014/08/10(日) 21:43:35.63ID:TiovmIJw
細かいファイルを大量に送る場合でもない限り普通にダウンロードさせればいいよ
クライアント側で並列化したりも出来るし
0197デフォルトの名無しさん2014/08/10(日) 21:53:55.82ID:KGgfmL2E
やっぱりwebアクセルの並列化なのかな?
めんどいのでやりたくないんだけども…
一発でとりたいのよ。
0198デフォルトの名無しさん2014/08/10(日) 21:55:52.89ID:Lx1gKQif
zipかなんかに固めて送れば?
0199デフォルトの名無しさん2014/08/10(日) 21:56:36.22ID:KGgfmL2E
サーバからクライアントにデータ送信という書き方はよくないかな
単位GET一発であれこれ大量のデータを取得したいって話しなんすよ。
別にGETでもPOSTでも一発で取れれば何でもいいんだけども。
0200デフォルトの名無しさん2014/08/10(日) 21:58:14.54ID:KGgfmL2E
>>198
zipしてやれば可能だけども画像もある程度あるからなぁどうしよ
んな事言ったら結局は並列化しかないかなやっぱり…
0201デフォルトの名無しさん2014/08/10(日) 21:58:30.74ID:MYgAStyQ
httpパイプラインとかあるだろ
0202デフォルトの名無しさん2014/08/10(日) 21:59:20.00ID:KGgfmL2E
なんでPOSTのリクエストにはマルチパートという素晴らしい仕組みがあるのに
レスポンスにはそういう仕組みないんだろ。
実はあったりする?
0203デフォルトの名無しさん2014/08/10(日) 22:01:46.49ID:Lx1gKQif
普通にストリームで全部繋げて流せば?
最初にファイルの長さのリスト送っとけばクライアント側で戻せるでしょ
0204デフォルトの名無しさん2014/08/10(日) 22:05:29.50ID:KGgfmL2E
全部ストリームにまとめると画像が結構多めの場合に問題になりそうな気がする
つーかファイルの長さのリスト送ってクライアント側で区切るとかそういう泥臭い方法嫌すぎるんだけど…
なんかないのかね。こんな事しなの普通?
0205デフォルトの名無しさん2014/08/10(日) 22:13:45.29ID:DIv5/2S3
何度も答えもらってんだろ
同意して欲しいだけなら知恵袋に行けクソが
0206デフォルトの名無しさん2014/08/10(日) 22:21:09.16ID:h7eBXMwc
とりあえずWebAPIのリクエスト・レスポンスのデータをここに晒してみれば
0207デフォルトの名無しさん2014/08/10(日) 22:26:39.08ID:vXAs/WBb
Excelのxlsxファイルは、xmlとか画像ファイルをまとめてzip圧縮したものだよね。
そういう意味で、今時当たり前に行われている方法だなw
0208デフォルトの名無しさん2014/08/10(日) 23:27:55.33ID:efFeBW9z
同じようにサーバ側でマルチパートコンテントにエンコードして返せばいいんじゃ
1回で返す必然性を感じないが
0209デフォルトの名無しさん2014/08/11(月) 00:29:23.99ID:ArnodK2n
クラッカー:クライアントさんのっとったなりぃ
クライアント:鯖さんDOS攻撃して♪
鯖:うはっ♪ おk
0210デフォルトの名無しさん2014/08/11(月) 05:38:15.56ID:Y1iOPO93
HTTP使っててマルチパートとかアホにもほどがある
ASP.NET WebAPI使ってるのに自前で長さに応じて区切るのは
もはや知障レベル
0211デフォルトの名無しさん2014/08/11(月) 11:28:22.09ID:CNKJz/Xr
よーしパパ、WebSocketで鯖からプッシュしちゃうぞー
0212デフォルトの名無しさん2014/08/11(月) 11:45:20.28ID:zfy5op3+
webサービスならwsdl使ったら
0213デフォルトの名無しさん2014/08/11(月) 15:55:53.20ID:VfeqnkNE
いまどきソープで通信するのはどう考えても老害
0214デフォルトの名無しさん2014/08/11(月) 18:04:47.89ID:HJR0ZkGf
ここで質問すべきではないかもしれませんが、教えてください。

8bitグレースケールのjpegをpdfに変換したいのですが、
以下のライブラリを使用しても正常に変換できません。
8bit画像をそのままPDFにする方法はないでしょうか?
なお、System.Drawing.Imageで読込んだ画像をPictureBox等で
表示すると正しく表示されました。

【使用ライブラリ】
 PDFSharp または iTextSharp

【現在のソース】
public static void CreatePdfFile(string filePath, System.Drawing.Image[] images)
{
using (var doc = new PdfDocument())
{
foreach (var image in images)
{
var page = doc.AddPage();
using (var xImg = XImage.FromGdiPlusImage(image))
{
page.Width = xImg.PointWidth;
page.Height = xImg.PointHeight;
using (var gfx = XGraphics.FromPdfPage(page))
{
gfx.DrawImage(image, 0, 0);
}
}
}
doc.Save(filePath);
}
}
0215デフォルトの名無しさん2014/08/11(月) 18:17:11.61ID:V6266HQR
Image.PixelFormatは8bppIndexed?
ならBitmap.Clone(Rectangle, PixelFormat)で24bppに変換したら?
0216デフォルトの名無しさん2014/08/11(月) 18:25:15.87ID:LZcDhd6q
8bitグレースケールのjpegって何に使うんだろ
なんかの原稿?

一般的にはグレスケにした所で縮まないから使う理由ないよね
0217デフォルトの名無しさん2014/08/11(月) 19:26:40.36ID:HJR0ZkGf
>>215さん
ちょっとソースを変更しましたが、変更する前とあとで出力される画像に変化がありませんでした。
=>つまり正常に出力できなかった。(ソースを載せます)


>>216
 元の画像が8bitグレースケールでした。劣化させずにPDFに変換を行いたいのです。

【変更後のソース】
using (var bm = image.Clone(new Rectangle(0, 0, image.Width, image.Height), PixelFormat.Format24bppRgb))
{
bm.Save(@"c:\test.jpg");//<=確認用
using (var xImg = XImage.FromGdiPlusImage(bm))
{
page.Width = xImg.PointWidth;
page.Height = xImg.PointHeight;
using (var gfx = XGraphics.FromPdfPage(page))
{
gfx.DrawImage(xImg, 0, 0);
}
}
}
02182142014/08/11(月) 19:28:34.87ID:HJR0ZkGf
あと、劣化を気にしなければ、次のようにすれば可能でした。

PDFに埋め込む画像を原画の8bitグレースケールで保存させる必要があるので
この方法だとダメなのですが…


なお、画質を気にしないのであればこれでいけましたが・・・

using (var bm = new Bitmap(image.Width, image.Height, PixelFormat.Format24bppRgb))
{

using (var g = Graphics.FromImage(bm))
{
g.SmoothingMode = SmoothingMode.HighQuality;
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.DrawImage(image, 0, 0);
}
using (var xImg = XImage.FromGdiPlusImage(bm))
{
page.Width = xImg.PointWidth;
page.Height = xImg.PointHeight;
using (var gfx = XGraphics.FromPdfPage(page))
{
gfx.DrawImage(xImg, 0, 0);
}
}
}
0219デフォルトの名無しさん2014/08/11(月) 19:40:37.34ID:V6266HQR
・Graphics.DrawImageで元画像通りに塗りたいのに何で補間させてるんだよ
・正常に出力されないって結局どうなるんだよ
・Image.SaveはImageFormatまたはImageCodecInfo未指定ならpngで保存されるぞ
・もうMemoryStreamにbmp/pngでSaveしてそれからXImage.FromStreamかなんか使えば?あるか知らないけど
02202142014/08/11(月) 20:06:59.86ID:HJR0ZkGf
>>219
219さんの言われるように、元画像をそのままDrawImage(gfx.DrawImage部分)すると
生成されたPDFは元画像の一部が拡大されたように出力されてしまいます。

Image.Saveについては画像ファイルを読込んだ際に正常に読込が出来ているかの
確認のために、再度変換させて保存しております。

なお、MemoryStreamに書き出す方法も試してたのですが、やはり一部が拡大されたような画像が出力されました。

※テストに使用している画像を提供したいのですが、諸事情で出すことができず申し訳ありません。
0221デフォルトの名無しさん2014/08/11(月) 20:12:35.33ID:V6266HQR
> 生成されたPDFは元画像の一部が拡大されたように出力されてしまいます。
HorizontalResolution/VerticalResolutionが96じゃなくない?
SetResolutionで96,96に設定すれば
02222142014/08/11(月) 20:58:15.56ID:HJR0ZkGf
>>221
 それだ!と、、思って96に設定したのですが変わらずでした。。。
 場所はBitmapのSetResolution(96,96)を設定しました。

以下は変換出来る画像とそうでない画像の違いです

【変換○】
3900x3072ピクセル
解像度150dpi(縦横同じ)
ビットの深さ24


【変換×】
3900x3072ピクセル
解像度96dpi(縦横同じ)
ビットの深さ8
0223デフォルトの名無しさん2014/08/11(月) 21:02:46.90ID:V6266HQR
いや素直に○なのに合わせろよ
02242142014/08/11(月) 21:12:02.95ID:HJR0ZkGf
>>223
そのソース(画像)を出力するのが自分であればそうするのですが、
そうではないためどちらにも対応する必要があるのです。。。
0225デフォルトの名無しさん2014/08/11(月) 21:27:05.31ID:V6266HQR
画像のResolutionを描画先のdpiに合わせろって話なんだが224の回答が意味不明
gfxだかgfx.GraphicsだかにDpiX/DpiYってない? その値でSetResolutionしてみて
02262142014/08/11(月) 22:35:55.82ID:HJR0ZkGf
>>225
 gfx.Graphicsにはdpiをset/getするようなところは無いようです。
PdfSharpを諦めて、iTextSharpで試してみます。

また何かわかれば報告します。
0227デフォルトの名無しさん2014/08/12(火) 17:09:36.37ID:lEdkViOZ
C#初心者ですが質問させてください。

クラスA,Bというのを自作していて、

double func(A a, B, b)

という関数をメモ化したいと思ってます。

Dictionaryクラスはkeyとvalueがそれぞれ一つなので、
keyをAとBの二つにするために

Dictionary<Tuple<A, B>, double> memoization = new Dictionary<Tuple<A, B>, double>();

というメモ化用のDictionaryを作り

Tuple<A, B> key = Tuple.Create(a, b);

というキーを生成してメモ化を行おうと思ったのですが、
同じaとbが入ってきたとしてもTuple.Createは新しいインスタンスを作ってしまいますよね?
なので、現状うまくいってません。

何かうまい解決法はありますでしょうか?

aとbにハッシュ関数を適用して適当な値にしてそれをキーにするしかないですか?
衝突の可能性とかがあってできれば避けたいんですが・・・。
0228デフォルトの名無しさん2014/08/12(火) 17:16:05.73ID:adwhmlAZ
>>227
>同じaとbが入ってきたとしてもTuple.Createは新しいインスタンスを作ってしまいますよね?
>なので、現状うまくいってません

作ればいいじゃない。
うまく行かないのは別の原因でしょ。
TupleとA,BのEqualsが正しければうまく行くはず
0229デフォルトの名無しさん2014/08/12(火) 17:19:19.08ID:adwhmlAZ
面倒だからDictionary<A, Dictionary<B,double >>でどうだ?
myDic[a][b]
0230デフォルトの名無しさん2014/08/12(火) 17:28:16.18ID:lEdkViOZ
>>228
回答ありがとうございます。

Tupleの利用はやめて自作クラスを作って、
そこで等価性を自分で定義する(a1==a2&&b1==b2)ということでしょうか?

最初それも考えたんですが、
なんとなくメモ化のためだけにクラスを作りたくなかったんですよね。
「C# dictionary key 複数」とかで検索するとTupleで可能とか出てきたんですが、
どうもうまくいかなくて。
ちなみに内部実装としては関数func内で

return hoge;

としていたところを

return memoization[key] = hoge;

と変えたのと、
関数冒頭に

if (memoization.ContainsKey(key))
{
return memoization[key];
}

を入れた、
という二点のみです。
0231デフォルトの名無しさん2014/08/12(火) 17:29:07.34ID:VCGqWCkz
A,BのEqualsを変更できないならIEqualityComparer<Tuple<A,B>>を実装してnew Dictionaryに渡す
0232デフォルトの名無しさん2014/08/12(火) 17:29:36.83ID:lEdkViOZ
>>229
おお、なるほど!ちょっと試してみますね!
0233デフォルトの名無しさん2014/08/12(火) 17:37:26.96ID:lEdkViOZ
>>231
そんな方法が!ちょっと調べてやってみます。

>>229の方法はいいかもと思ったけど、
ちょっとアクセスしずらいですね。
やはり引数列をまとめたkeyでアクセスしたいです。
実際の引数は6個ありますw
0234デフォルトの名無しさん2014/08/12(火) 17:44:23.01ID:lEdkViOZ
上にも書きましたが実際の引数は6個あって、その内訳は

(自作クラス、自作列挙型、int, douboe, double, 自作デリゲート)

なんですが、解決方法として

�@それぞれのEqualsを定義する
�AIEqualityComparer<Tuple<A,B>>を実装してnew Dictionaryに渡す

があるとして、まずは�@で対応したいんですけど、
実装すればよいのは、自作クラス、自作列挙型、自作デリゲートの3つですか?
0235デフォルトの名無しさん2014/08/12(火) 18:40:25.63ID:XiqCRjFI
>>234
自作クラスだけ
0236デフォルトの名無しさん2014/08/12(火) 19:11:30.05ID:0s9pYW6R
double型を使わずfloatを使う状況が想像できないんですが
どういう時にfloatを使うのですか
0237デフォルトの名無しさん2014/08/12(火) 19:15:20.64ID:VCGqWCkz
GDI+使うとき
0238デフォルトの名無しさん2014/08/12(火) 20:39:11.28ID:lEdkViOZ
すいませんメモ化の者ですが、まだうまくいってません。
問題点をコードにまとめてきたので、見ていただけると助かります。

まずは適当にクラスAを定義します。

class A
{
int field;

public A(int field)
{
this.field = field;
}

public override bool Equals(object o)
{
A a = (A)o;

return field == a.field;
}
}
0239デフォルトの名無しさん2014/08/12(火) 20:40:41.27ID:lEdkViOZ
上のクラスAを使ったテストとして以下のコードを走らせてみます。

A a1 = new A(3);
Tuple<A, string> t1 = Tuple.Create(a1, "aiueo");

A a2 = new A(3);
Tuple<A, string> t2 = Tuple.Create(a2, "aiueo");

Console.WriteLine("a1.Equals(a2) = " + a1.Equals(a2));
Console.WriteLine("t1.Equals(t2) = " + t1.Equals(t2));

Dictionary<Tuple<A, string>, double> dic = new Dictionary<Tuple<A, string>, double>();
dic[t1] = 3.14;

Console.WriteLine("dic[t1] = " + dic[t1]);
Console.WriteLine("dic.Contains(t1) = " + dic.ContainsKey(t1));
Console.WriteLine("dic.Contains(t2) = " + dic.ContainsKey(t2));

実行結果は

a1.Equals(a2) = True
t1.Equals(t2) = True
dic[t1] = 3.14
dic.Contains(t1) = True
dic.Contains(t2) = False

どうしたらいいでしょうか?
0240デフォルトの名無しさん2014/08/12(火) 20:42:13.76ID:8bwkaDxl
GetHashCodeオーバーライドが足りない
0241デフォルトの名無しさん2014/08/12(火) 20:51:59.01ID:lEdkViOZ
>>240

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

public override int GetHashCode()
{
return field;
}

フィールドのXORにしとけばとりあえずおk
ってあったのでこう書きました。

C#は勉強初めてまだ2週間ぐらいですが、Javaよりも色々と素敵な点がありますね!
またわからないことがあったらお世話になります!
0242デフォルトの名無しさん2014/08/12(火) 23:29:45.22ID:lEdkViOZ
ハッシュコードの実装くそ重要ワロタw
適当に書いたのとまじめに書いたので10倍違う
0243デフォルトの名無しさん2014/08/13(水) 01:03:21.64ID:cnVoqr/7
>>237
なるほどありがとう
外部の制約によってfloatが必要になるときがあるって認識でいいですかね
0244デフォルトの名無しさん2014/08/13(水) 07:17:41.33ID:MCkfVLQX
floatはいろいろ演算するにはゴミ精度だが、
データの入力や、描画などの最終的な出力に使う分には大抵十分
WPFはdoubleだけどあれ中でいろいろレイアウトの計算に使うからな
0245デフォルトの名無しさん2014/08/13(水) 11:03:06.18ID:aA3WCwQl
円周率はおよそ3
0246デフォルトの名無しさん2014/08/13(水) 16:07:36.31ID:xpXGMlRG
async/awaitってどうしてこんなに複雑なんだ
promise/futureでfutureごとにsynchronizedContextが指定できて
例外を呼び出し側にプロパゲートしてくれりゃ十分なのに
0247デフォルトの名無しさん2014/08/13(水) 19:45:58.79ID:MCkfVLQX
>>246
promise/futureはまさにTaskがあるだろ
0248デフォルトの名無しさん2014/08/14(木) 02:21:21.71ID:EkKm7xHd
async/await手頃すぎるだろ
あんなもの猿にも使える
0249デフォルトの名無しさん2014/08/14(木) 02:38:48.33ID:wCfAVU08
>>248猫には無理でしたよ?
0250デフォルトの名無しさん2014/08/14(木) 02:43:26.61ID:mNiYegMq
うちの猫は使いこなしていたが
0251デフォルトの名無しさん2014/08/14(木) 10:32:14.51ID:ztQ00aZI
猫にだって得手不得手があってだな
0252デフォルトの名無しさん2014/08/14(木) 12:14:35.16ID:0EVla8Hi
まぁ、俺並みに使いこなせる奴はいねーだろうな
http://i.imgur.com/UVn6exf.jpg
0253デフォルトの名無しさん2014/08/14(木) 14:38:07.71ID:31aNAkg3
日本の起源は朝鮮済むニダ
http://www3.nhk.or.jp/news/html/20140813/k10013784831000.html
0254デフォルトの名無しさん2014/08/14(木) 14:44:19.49ID:gKLP5dsi
ネトウヨ王に、俺はなる!まで読んだ。
0255デフォルトの名無しさん2014/08/14(木) 16:53:17.94ID:2y87dya9
C#って既存の言語の弱点を排除し利点を取り入れた言語みたいだけど、
switch文とかはもっと便利にできなかったのかと疑問に思う。
foreach文とかはもろにVBから影響受けているしselectcase文とか用意てもよかったのではないだろうか。
0256デフォルトの名無しさん2014/08/14(木) 17:06:06.54ID:NnuHJ0mR
VBwww
0257デフォルトの名無しさん2014/08/14(木) 17:09:08.43ID:oi/Apc6B
switch文のKUSOさは
Cプログラマが使い慣れたfall throughをそのまま書けるようにするため
悪習を捨ててbreakをデフォルトにすべきだった
0258デフォルトの名無しさん2014/08/14(木) 17:11:04.88ID:q4XoDj7G
いやbreakがデフォルトだろ
省略を許さなかったのがアレなだけで
0259デフォルトの名無しさん2014/08/14(木) 17:21:27.03ID:uLev5fPM
そういう細かいところどうでもいいんだけど、そういうのが気になる連中ってどういうレベルの連中なんだろうか
0260デフォルトの名無しさん2014/08/14(木) 17:22:44.16ID:5wWAIMwO
>>253
まあ今は高句麗の末裔も百済の末裔も朝鮮半島にいないがな
いるのはやたら好戦的で頭が悪い新羅の末裔のみ
0261デフォルトの名無しさん2014/08/14(木) 17:27:46.16ID:31aNAkg3
日本が朝鮮に進出した結果とはだれも考えない不思議
0262デフォルトの名無しさん2014/08/14(木) 17:27:51.16ID:ztQ00aZI
ループの中のswitchだとbreakがかぶるのがどうにも、、、
0263デフォルトの名無しさん2014/08/14(木) 17:28:32.12ID:rU/7E2pq
ついでに言うと新羅はエペンギ族
しかも中国の属国時代に近親相姦しまくりでDNAが壊れてウニと同レベルになってしまい
食糞文化というキチガイ文化が発展してしまった
美人をいつも中国に献上していたためブス・ブサイク遺伝子しか残らず、世界一の整形国
となり精神疾患も70%と世界に類を見ない
他国の文化を悪くいうつもりは決してないが
0264デフォルトの名無しさん2014/08/14(木) 17:28:52.15ID:ztQ00aZI
>>261
半島で見つかった前方後円墳は時代が日本のより新しかったから見なかったことにしてるな
0265デフォルトの名無しさん2014/08/14(木) 19:03:02.83ID:xDP3Gk1q
ネトウヨきもっ、まで読んだ。
0266デフォルトの名無しさん2014/08/14(木) 23:10:57.38ID:g0L9ef8X
VS2010でFormのUIを弄っていたら何かの拍子に
DataGridViewの

ヘッダータイトル
一覧の中のデータ

それぞれの文字フォントが突然 Bold(太字)になってしまいました。
DataGridView上のプロパティからプロパティよりFont項目を探して
いるのですが、見つかりません。

どうすればDataGridViewの中の各種UIが太字になっているのをデフォルトの細字に戻す事が出来ますか?
0267デフォルトの名無しさん2014/08/14(木) 23:14:33.43ID:Q4ZDiAeY
Form1.desiner.cs開いてBoldとか検索すれば
0268デフォルトの名無しさん2014/08/14(木) 23:15:16.05ID:g0L9ef8X
>>267
サンキュー
0269デフォルトの名無しさん2014/08/14(木) 23:18:28.92ID:0QgT3E9Y
どうしてばかはいつも、リファレンスも読まずに
見てはいけないファイルを覗こうとするんだろうか
0270デフォルトの名無しさん2014/08/14(木) 23:51:48.83ID:wpKva6o4
見てはいけないと思うの?
0271デフォルトの名無しさん2014/08/15(金) 00:10:09.90ID:wT2TJBaG
淡谷のり子も着てはもらえぬセーターを編むのは馬鹿だって言ってな
0272デフォルトの名無しさん2014/08/15(金) 01:09:27.14ID:15D9jPgf
デザイナからは探せなくてもどこかには必ず設定値として持ってるわけで
とりあえず全ファイルのgrepかけてみるとかそういう発想ないんだろうか
いやまぁ余計なお世話だが
0273デフォルトの名無しさん2014/08/15(金) 01:31:43.73ID:CyDz3wwl
分岐予測の精度がこれだけ高まってるのに
switchって必要なのかな
0274デフォルトの名無しさん2014/08/15(金) 01:34:31.66ID:Sh00Eq5e
などと意味不明なことを口走っており
0275デフォルトの名無しさん2014/08/15(金) 09:38:10.34ID:XxrkOJMY
スイッチだったかセレクトケースだったかいっつも忘れる
0276デフォルトの名無しさん2014/08/15(金) 12:19:22.98ID:3Q+adTW0
>>275
それはお前の頭が・・・・・・・・・・・・・・・・・・・・・・
0277デフォルトの名無しさん2014/08/15(金) 15:23:22.56ID:q94t0wBs
別に問題は無いな
複数の言語を同時に扱うようになると
そんな調べれば一瞬でわかることはどうでもよくなる
0278デフォルトの名無しさん2014/08/15(金) 19:52:14.32ID:qVCLp8mm
数年ぶりに使う言語だとif文どう書くのかすら忘れてたりする
0279デフォルトの名無しさん2014/08/15(金) 20:26:52.87ID:HcuU/6Wi
>>271は確実に50代
0280デフォルトの名無しさん2014/08/15(金) 21:47:52.53ID:bES32bI7
作成したプログラムを実行すると、たまにビジー状態になってしまい、強制終了するしかなくなるのですが、
プログラム上のどこが問題なのかわかりません。
ビジーになる原因がどこか確認したいのですが、方法はあるのでしょうか?
0281デフォルトの名無しさん2014/08/15(金) 22:35:54.89ID:uW93/jSs
>>280
Shift + F5
0282デフォルトの名無しさん2014/08/15(金) 22:43:30.33ID:bES32bI7
>>281
ありがとうございます。
今度エラーが起きたらやってみます
0283デフォルトの名無しさん2014/08/15(金) 23:02:59.68ID:ZUc984rO
formアプリの各コントロールの状態をプログラム終了時に
ファイルに保存して次回起動時に状態を復元したいのですが、
こういう場合、formの状態を丸ごとシリアライズする
なんていうことは出来ますか?
0284デフォルトの名無しさん2014/08/15(金) 23:05:47.65ID:8v137Zze
無理
0285デフォルトの名無しさん2014/08/15(金) 23:07:47.14ID:8v137Zze
WPFが使えるならDataContractつけたモデルにバインディングしとけば済むけど、WinFormsだとね仕方ないね
0286デフォルトの名無しさん2014/08/16(土) 00:56:22.44ID:ln3z/ANS
アプリケーション設定があるじゃん。
0287デフォルトの名無しさん2014/08/16(土) 01:03:01.38ID:jc5hesjA
わざわざ「丸ごと」っていうくらいだから、
いちいち書き戻すの面倒ですって言い出すに1ビットコイン。
0288デフォルトの名無しさん2014/08/16(土) 01:53:53.02ID:VKTgsMtd
ちょっぴりコントロールを増やしたり並びを変えたりしたらたちまち動かなくなってもいいのん?
0289デフォルトの名無しさん2014/08/16(土) 18:27:24.27ID:iuSvNEKH
>>283
出来ますよ
というかデザイナがすでにそうゆう設計になってる
実行時にデザイナのシリアライザを走らせるだけ
0290デフォルトの名無しさん2014/08/16(土) 19:59:15.33ID:igopkitS
何言っちゃってんのこの人
0291デフォルトの名無しさん2014/08/16(土) 20:25:07.35ID:iNdIwO+6
うんこに触るな
0292デフォルトの名無しさん2014/08/16(土) 20:29:08.04ID:tdjcFfMl
やっぱ夏休みだからか?
0293デフォルトの名無しさん2014/08/16(土) 21:11:46.44ID:iuSvNEKH
こんな基礎的な事実も知らない奴が湧いてくるのか
まさに夏だな
0294デフォルトの名無しさん2014/08/16(土) 21:28:56.14ID:nQiWsyll
C#は最強言語です
使いこなせない馬鹿はドカタにもなれない
0295デフォルトの名無しさん2014/08/17(日) 00:21:01.15ID:rtb2QkBr
>>293
このうんこ、喋るぞ!
0296デフォルトの名無しさん2014/08/17(日) 18:36:43.27ID:vFtnH5FG
うでたて うでたて
無理だワニのうでたて伏せ
うでたて うでたて
無理だワニのうでたて伏せ
無理を承知でやってみな ハイ

ふっきん ふっきん
無理だ カメのふっきん
ふっきん ふっきん
無理だ カメのふっきん
無理を承知でやってみな ハイ

無理だ むりだ 無理だ むりだ
無理だ むりだ ムリムリ
0297デフォルトの名無しさん2014/08/17(日) 18:37:58.23ID:sI1u/7Zz
だめなんかい
0298デフォルトの名無しさん2014/08/17(日) 18:53:41.38ID:V81XDBv0
VS2010+C#で作っていたWindows Formプログラムが突如として移動出来なくなってしまいました。

具体的にはグループボックスの中にあるコントロールを他の場所に移動させる為に
ドラッグし手を放すと元の位置に戻ってしまいます。

どうすれば解決しますか?
0299デフォルトの名無しさん2014/08/17(日) 19:16:27.31ID:06R8hAZM
>>298
あんたが書いたコードがそうなってるから、としか言いようがない。
どんなアホ質問だよ。
0300デフォルトの名無しさん2014/08/17(日) 19:41:38.11ID:V81XDBv0
>>299
死ねよバカ。
0301デフォルトの名無しさん2014/08/17(日) 19:44:58.22ID:7sxnPPIe
ソースコードも見せずに助けを求めるお前が悪い
0302デフォルトの名無しさん2014/08/17(日) 19:46:11.46ID:sI1u/7Zz
うんこーどを吐きなさい
0303デフォルトの名無しさん2014/08/17(日) 19:46:40.55ID:gg+QQeAk
それだけの情報から解決策を示せと言われたら
移動出来るように実装しろとしか言えないだろ
自分がどれだけアホか自覚しろ
0304デフォルトの名無しさん2014/08/17(日) 19:50:46.51ID:sI1u/7Zz
C#erゴミすぎワロタ
コードも提示できないのに煽ってばかりだな
0305デフォルトの名無しさん2014/08/17(日) 19:56:53.34ID:Y3QlA+7b
おまいら釣られ杉
0306デフォルトの名無しさん2014/08/17(日) 19:59:02.21ID:sI1u/7Zz
コードを書いて煽れよゴミグラマ
0307デフォルトの名無しさん2014/08/17(日) 20:09:57.23ID:Y3QlA+7b
VS2010なんだけど、フォームを弄って修正内容確認するとresx内の画像が変わってる事無い?
BASE64文字列が一部変わるんだよ
0308デフォルトの名無しさん2014/08/17(日) 20:14:37.19ID:PHtLjfwH
バグを修正する
0309デフォルトの名無しさん2014/08/17(日) 20:23:30.61ID:sI1u/7Zz
腦は修正できない
0310デフォルトの名無しさん2014/08/17(日) 21:46:54.69ID:FZOf3SxN
この娘たちを起こさずに☆☆☆できるようなコード教えてください。

http://img.nipple-img.com/wp-content/uploads/2014/07/20140722-2-23.jpg
0311デフォルトの名無しさん2014/08/17(日) 22:17:03.91ID:7i3WFabc
触ったら病気になりそう
0312デフォルトの名無しさん2014/08/17(日) 22:20:59.60ID:PHtLjfwH
スペックホルダーになって時を止めれば問題ない
0313デフォルトの名無しさん2014/08/17(日) 22:28:22.08ID:sI1u/7Zz
ゴムつける
0314デフォルトの名無しさん2014/08/17(日) 22:37:59.65ID:PHtLjfwH
エバラの焼き肉なら効果なし
0315デフォルトの名無しさん2014/08/18(月) 03:00:41.08ID:O5wid4ZY
>>310
御堂筋?
0316デフォルトの名無しさん2014/08/18(月) 16:03:29.15ID:j4olZ6fv
>>315
路線図が環状線ぽいのと、ICOCA の宣伝書いてあるから JR じゃね?
環状線はほとんど乗ったことないから、どの駅かまではわからんけど。
0317デフォルトの名無しさん2014/08/18(月) 22:57:57.59ID:8inLloPw
とある案件でvarと拡張メソッド使うなと言われたんだけど、これ2.0縛りでやれって事なのかな
0318デフォルトの名無しさん2014/08/18(月) 23:01:41.80ID:0eU2FfqC
ラムダ式がある
…LINQが使えないと有り難みもねぇなぁ
0319デフォルトの名無しさん2014/08/18(月) 23:07:45.95ID:iF9YB76u
ないものは作る
Emitがあれば何でもできる
0320デフォルトの名無しさん2014/08/18(月) 23:15:52.04ID:0eU2FfqC
IEnumerable<IGroup<int, string>> groups
&nbsp; &nbsp; = Enumerable.GroupBy(list, _item => _item.Id, _item => _item.Name);
これなら拡張メソッドじゃないし問題ないな!
0321デフォルトの名無しさん2014/08/18(月) 23:21:59.88ID:OdlWZdI3
ゴミニート乙
0322デフォルトの名無しさん2014/08/18(月) 23:30:38.47ID:qEy88ZyW
var無しLINQは厳しい
0323デフォルトの名無しさん2014/08/19(火) 01:38:06.36ID:EjPUhMZz
拡張メソッドはわかるね、雑魚に好き勝手使わせるとやばいことになるしね
いまどき var 使わないのは・・・頭わいてるだろw
0324デフォルトの名無しさん2014/08/19(火) 02:24:59.34ID:Jxn5eaTR
拡張メソッドを自分で定義するの禁止、で十分だろ普通は
0325デフォルトの名無しさん2014/08/19(火) 06:52:14.02ID:EjPUhMZz
>>324
十分って言葉を使うなら言葉盛ってややこしくするなよ
拡張メソッドを定義するの禁止、で十分だろ
下っ端に余計なこと言うと真意を理解せずに例外見つけて使おうとする
0326デフォルトの名無しさん2014/08/19(火) 07:10:40.91ID:kd7jqNQI
業務上の規約に「自分で」とか書くわけないのにそこに反応してるのか…
0327デフォルトの名無しさん2014/08/19(火) 07:25:55.90ID:kndnew46
>下っ端に余計なこと言うと真意を理解せずに例外見つけて使おうとする
これがあるから。
0328デフォルトの名無しさん2014/08/19(火) 07:56:24.26ID:Sw28RQP5
拡張メソッドについて

1.なぜ使用を控えたほうがいいのか?場合によってはなぜ使用禁止とされるのか?

2.使用することが認められている場合は、どういう場面で有用なのか?具体例は?

明確な回答できる人は、いないでしょう。
0329デフォルトの名無しさん2014/08/19(火) 08:08:01.62ID:zcKRpZUs
拡張メソッドの禁止はリファレンスのどこを見ればよいかが
コードから自明でなくなることを避けるためだろう
0330デフォルトの名無しさん2014/08/19(火) 09:10:45.57ID:BRdqU6Bb
頭にウジ湧いてるの映像も可也の物だが、頭が湧いている映像は想像できん
0331デフォルトの名無しさん2014/08/19(火) 09:44:07.94ID:3OTjoODe
猿の脳スープを下から加熱している感じ
0332デフォルトの名無しさん2014/08/19(火) 10:09:14.05ID:5mas1aYf
映像ではないが,ここがかなり頭が湧いている情況,必見だhttp://peace.2ch.net/test/read.cgi/tech/1313183984/
0333デフォルトの名無しさん2014/08/19(火) 11:35:04.44ID:tg7i16ue
>>325
普通に 拡張メソッド使うな だろ
アホは、どっかからコピペしてきて、元々あったのだから(新たに)定義してない とか平気で言うから
0334デフォルトの名無しさん2014/08/19(火) 13:27:51.84ID:EjPUhMZz
>>333
使うななんて曖昧ないうと、プロジェクトチームが整備したものまで使わなくなる
コピペを定義じゃないっていう屁理屈よりこっちの方が現実的脅威だ
プロジェクトに入れ替わり立ち替わり入ってくる経験5年の新人はホント地獄だぜ
0335デフォルトの名無しさん2014/08/19(火) 14:31:05.36ID:TkuZh/+N
スレ違いかもしれませんがこちらで質問させてください。

社内でA・B端末の2台を使っています。
それぞれトレンドマイクロをインストールしているのですが
A端末宛にB端末からメールを送信するとごく稀に
以下のメッセージがフッターに添付されてしまいます。

---
アバスト! アンチウイルス によって保護されているため、このメールはウイルスやマルウェアに感染していません。
http://www.avast.com


アバストウィルス対策ソフトなんてインストールしていないのですが
何が原因として考えられますか?

捕捉事項:
Soft Ether VPNを使っておりメール送信時にその回線を使っていたかもしれません。
しかし、接続先の人間がアバストをインストールしていた可能性はありますが
Soft Ether VPN経由でメールを送信して、送信者(B端末)から送信されたメールフッターに
メッセージを勝手に挿入する事なんて出来るのでしょうか?
0336デフォルトの名無しさん2014/08/19(火) 14:51:49.25ID:aZYeeKT4
スレどころか板違い
送信してるクライアントにインストールされてるよ
0337デフォルトの名無しさん2014/08/19(火) 16:22:18.44ID:08bxuLe5
>>334
>>317 は使うなと書いてるんだが
お前んちのことなんてどうでもいいわ
03383352014/08/19(火) 18:16:32.32ID:1G1k7GVe
>>336
本当ですか、、、

一応プログラムの追加と削除から確認したのですが
「アバスト」というプログラム名は見当たりませんでした。

また、仮にインストールされているのであればメールを送信する度に
フッターに入ると思うのですが、極々不定期に入るのです。。。

かなり謎です。
0339デフォルトの名無しさん2014/08/19(火) 19:31:41.91ID:NnpezPJL
板違いしてしかも自覚が無い程のおっちょこちょいだからなぁ
インストールされてるけど見落としてるだけ、絶対
0340デフォルトの名無しさん2014/08/19(火) 19:33:47.68ID:4oI8t6Hf
ISPが余計なお世話でウイルスチェックを通してるというのはないんけ
0341デフォルトの名無しさん2014/08/19(火) 20:00:35.68ID:EjPUhMZz
>>337
俺にアンカーうちながら317をタテに取るとか意味不明w
いずれにしても、そういう意識レベルで指示出してるといずれ痛い目見るよ
0342デフォルトの名無しさん2014/08/19(火) 20:15:17.38ID:4oI8t6Hf
>>338
毎回じゃないのは添付ファイルがあるときだけってことじゃないの
0343デフォルトの名無しさん2014/08/19(火) 20:36:20.36ID:BRdqU6Bb
「ウイルス感染の可能性があるから、PCをハンマーで叩き壊せばいい」とでも言って欲しいのかな?
0344デフォルトの名無しさん2014/08/19(火) 21:07:26.26ID:X1KJupQg
拡張メソッドが禁止されるのは、メソッド名が衝突したら深刻な問題になるからだよ。
ライブラリなどがバージョンアップしたとき、拡張メソッドと同名のメソッドが追加されたら、拡張メソッドを呼び出す方法がなくなる。

メソッド名が衝突しないなら使っていい。
0345デフォルトの名無しさん2014/08/19(火) 21:15:44.92ID:kd7jqNQI
わざわざターゲットフレームワークを変えて業務アプリをビルドしたり、
末端PGが作ったUI層のアセンブリを参照して再利用するアホがいるならそうかもね

印刷してコードレビューするときに不便だからって程度だと思う
0346デフォルトの名無しさん2014/08/19(火) 21:21:05.28ID:08bxuLe5
>>341
>>317 から始まってることぐらい理解しろよ
0347デフォルトの名無しさん2014/08/19(火) 21:32:55.90ID:EjPUhMZz
>>345
印刷してコードレビューだと・・・
すさまじい紙と時間の無駄だなw
0348デフォルトの名無しさん2014/08/19(火) 21:33:36.27ID:byB5OjGw
そもそも拡張メソッド使うとクラスの機能範囲が明確にできないから問題なんだろ
設計外のものがクラス以外の所でクラスに追加されるんだぞ


部分クラスも同じような問題はあるんだが、こっちは同時コンパイルできることって条件があるからな
0349デフォルトの名無しさん2014/08/19(火) 21:38:57.37ID:dGN2Xh51
>>348
別にクラスにメソッドを追加してるわけじゃない
ドット演算子で静的メソッドを呼び出せるようにするだけ
まあ実際には>>348みたいな勘違いをしてる奴が多いのも敬遠される理由なんだろうね
0350デフォルトの名無しさん2014/08/19(火) 21:47:11.00ID:BPx7uO6X
MSはこういう小手先のゴミ仕様ばっかりやるから
アプデで致命的なトラブル起こすんだよなぁ
0351デフォルトの名無しさん2014/08/19(火) 22:07:16.37ID:WM857LTb
>>350
なんかトラブルあったっけ?
0352デフォルトの名無しさん2014/08/19(火) 22:08:02.42ID:WM857LTb
あ、ごめん、読み違えた
こっちが作った製品でトラブルが起きる、ってことか
351はスルーしてくださいorz
0353デフォルトの名無しさん2014/08/19(火) 22:26:27.14ID:NnpezPJL
先週Win8アプデで起動不可になるってのをやらかしたらしいが
0354デフォルトの名無しさん2014/08/20(水) 00:56:20.69ID:9PiIyC1D
文字列の拡張メソッドは使った方がいいよ
メソッドチェーン用に拡張メソッドを充実させると利用者側のソースがかなり綺麗で読みやすくなる
0355デフォルトの名無しさん2014/08/20(水) 03:34:57.48ID:2Fg9ra/C
拡張メソッドが有益だってことはわかってんだよ
問題はプロジェクトで個人個人が好き勝手に実装するとアレってことよ
全体を設計する段階でそれなりのスキルの人が整備して
他の人はそれを使うだけにするくらい徹底するのが無難よ
0356デフォルトの名無しさん2014/08/20(水) 18:12:17.96ID:mnUk8d/7
「拡張メソッドはExtensionMethodsクラス内に記述すること」という規約一つで解決じゃないか
0357デフォルトの名無しさん2014/08/20(水) 18:21:57.22ID:2Fg9ra/C
>>356
こういうのが出てくるから拡張メソッド禁止ってなるんだよw
0358デフォルトの名無しさん2014/08/21(木) 00:05:06.51ID:9GpS6+8L
cookiecontainerを配列のように扱いたいのですが、良い方法はないですかね?
具体的にいうと
CookieContainer cc = new CookieContainer();
と普通は書きますが、
string[] hoge = new string[10];
みたいな感じで
CookieContainer[] cc = new CookieContainer[10]();→こんなプログラムは間違いだが
とやって、cc[0]、cc[1]みたいに扱いたいのです。
0359デフォルトの名無しさん2014/08/21(木) 00:42:22.49ID:5HTOOX0i
何がしたいかわからんが、普通に配列にできるだろ
CookieContainer[] cc = new CookieContainer[10];
0360デフォルトの名無しさん2014/08/21(木) 00:44:06.06ID:2KAy0o4N
インデクサは拡張メソッドでは定義できないねw
0361デフォルトの名無しさん2014/08/21(木) 00:45:11.56ID:9GpS6+8L
後ろの()取ればいいのか・・・・

ありがとうございました!
0362デフォルトの名無しさん2014/08/21(木) 01:56:08.31ID:9GpS6+8L
うーん、宣言はうまくできたけど、実行がうまくいかなかった。
0363デフォルトの名無しさん2014/08/21(木) 02:32:30.80ID:CEenkUAY
ここはお前の日記帳だから好きなことを書いていいんだぞ
0364デフォルトの名無しさん2014/08/21(木) 02:34:03.19ID:9GpS6+8L
たびたびすいません。
ローカル変数で使用することはうまくいきました。
こんな感じです。
System.Net.CookieContainer[] abc = new CookieContainer[10];
for (int i = 0; i < 10; i++)
{
abc[i] = new CookieContainer(); →これが抜けてた。
}

で、相談なのですが、これをグローバル変数として扱いたいのですが、どうやって記述したらよいのでしょうか?

static public System.Net.CookieContainer[] abc = new CookieContainer[10];
は問題ないですが、
abc[i] = new CookieContainer();
の部分の宣言方法がよくわかりません。
0365デフォルトの名無しさん2014/08/21(木) 02:36:30.31ID:9GpS6+8L
もう少し丁寧に書くと、
private void button1_Click(object sender, EventArgs e)
{
System.Net.CookieContainer[] abc = new CookieContainer[10];
for (int i = 0; i < 10; i++)
{
abc[i] = new CookieContainer();
}
(abcを使ってやりたいこと)
}
はうまくいきます。

やりたいのはbutton2やbutton3でも同じabcを使いたいということです。
0366デフォルトの名無しさん2014/08/21(木) 02:38:58.29ID:CEenkUAY
メソッドの外に出せばほかでも使いまわせるようになる

CookieContainer[] abc = new CookieContainer[10];

private void button1_Click(object sender, EventArgs e)
{

for (int i = 0; i < 10; i++)
{
abc[i] = new CookieContainer();
}
(abcを使ってやりたいこと)
}
0367デフォルトの名無しさん2014/08/21(木) 03:55:23.02ID:9S57VCiO
static コンストラクタをつかえばいいよ
0368デフォルトの名無しさん2014/08/21(木) 04:13:31.96ID:JsL1zQzE
はいゴミ
次の回答は?
0369デフォルトの名無しさん2014/08/21(木) 06:36:13.18ID:Dozm2kfh
staticおじさん
0370デフォルトの名無しさん2014/08/21(木) 06:43:58.90ID:6yN9jcnV
グローバル変数とか諦める。
クラスフィールドにする。(static使わない)
前もって初期化しておく。
0371デフォルトの名無しさん2014/08/21(木) 10:18:53.04ID:9GpS6+8L
なるほど。わからん。
0372デフォルトの名無しさん2014/08/21(木) 12:25:36.54ID:9S57VCiO
急がば回れ
文法の勉強をした方がいいよ

そのファイルの中に、
InitializeComponent();
って文がコンストラクタの中に書かれてるから、その後でのみ、
>>366 の
abc = new CookieContainer[10];
for (int i = 0; i < 10; i++)
{
abc[i] = new CookieContainer();
}
をやるようにすればいいよ。ここで、abc の前に型は書いちゃダメ。名前は同じでも別の abc に割り当てることになるから。

変数の宣言は
CookieContainer[] abc;
にするといいよ。static や new を消して。
0373デフォルトの名無しさん2014/08/21(木) 12:38:18.99ID:9GpS6+8L
ありがとうございます!
できました!
文法、勉強してみます。

実は力技で
static public CookieContainer cc0 = new CookieContainer();
static public CookieContainer cc1 = new CookieContainer();
static public CookieContainer cc2 = new CookieContainer();
static public CookieContainer cc3 = new CookieContainer();
static public CookieContainer cc4 = new CookieContainer();
static public CookieContainer[] abc = new CookieContainer[5] { cc0, cc1, cc2, cc3, cc4 };
ってやったらいけたので、これでとりあえず運用しようかと思ってたのですが、
スマートに解決していただけたのでそっちを使わせてもらいます!
0374デフォルトの名無しさん2014/08/21(木) 12:53:50.54ID:eq9+DABl
配列に事前に実体入れておきたいだけか。
static public CookieContainer[] abc = {
new CookieContainer(),
new CookieContainer(),
new CookieContainer(),
new CookieContainer(),
new CookieContainer(),
};
でもよさそうだが、、、
0375デフォルトの名無しさん2014/08/21(木) 20:33:35.52ID:6yN9jcnV
>>374
だからどうしてそういう糞を教えるかな
0376デフォルトの名無しさん2014/08/21(木) 21:57:23.49ID:CHqmS44G
試してないけど↓でいいんじゃね?

〜 CookieContainer[] abc = Enumerable.Range(1, 5).Select(_ => new CookieContainer()).ToArray();
0377デフォルトの名無しさん2014/08/21(木) 21:59:22.83ID:CHqmS44G
ちなみにASP.NETの話だよな?
CookieContainer を static で持つのはまずいと思うぞ
0378デフォルトの名無しさん2014/08/21(木) 22:16:27.66ID:/84bZOPR
ソリューション(VS2013)に
�@WPFアプリケーション
�AクラスライブラリA(Converter)
�BクラスライブラリB
とあって�@が�Aを参照して、�Aが�Bを参照しています。

�@のXamlに�AのConverterを設定すると
「ファイルまたはアセンブリ�Bまたはその依存関係の1つが読み込めませんでした」とエラーになります。
但し、そのまま実行すると正しく動作します。

�@から直接�Bを参照してXamlに�Bのxmlnsを記載してもエラーは消えません。
�Aで�Bを使用している箇所を全てコメントアウトしてリビルドするとエラーは消えるので、
�Aの参照先の�Bを見つけられないのだとは思います。
�@�A其々のプロジェクトに参照パスを設定しても、アセンブリを直接参照しても解消しません。
解る方がいたら、このエラーの解消方法を教えてください。m(_ _)m
0379デフォルトの名無しさん2014/08/21(木) 23:04:10.52ID:WZRjv5gq
Listを3個ずつ区切って操作するのはどうすればいいのでしょうか?

int[] {1,2,3,4,5,6,7,8 }


これで[1,2,3]と[4,5,6]と[7,8]に分けたいのです
0380デフォルトの名無しさん2014/08/21(木) 23:15:50.60ID:/84bZOPR
>>379
ジャグ配列かな!?
google先生に聞いてみてください!
0381デフォルトの名無しさん2014/08/21(木) 23:28:36.50ID:WZRjv5gq
ジャグ配列もしくはrubyでいうeach_slice(n)です

結局拡張メソッドで自作するか、for (var i =0...)でやるしかないんですかねえ・・・
0382デフォルトの名無しさん2014/08/21(木) 23:37:22.20ID:IUXzYSmM
>>378
んなあほな
�@�A�Bはビルド条件のCPU全て一致してる?そいつらがさらに参照してるDLLによってはこける。
あと、ソース以外のファイル全部削除してみると変わるかも
WPFでないけど、ストアアプリは何度かそれで謎のエラーが解消された
全く無意味かもしれんけど
0383デフォルトの名無しさん2014/08/21(木) 23:49:48.09ID:IUXzYSmM
うーん、たぶん全然違うな
0384デフォルトの名無しさん2014/08/21(木) 23:56:14.95ID:/84bZOPR
>>382
全てのプロジェクトで.NETのバージョンは4.5.1でAny CPUで統一されています。

これは、実行時でなくデザイン時の問題です。
デザイン時にXamlを記載するときにエラーになってしまうので、
Xamlを開いてビルドするとエラー一覧にエラーが表示されますが、
出力ウィンドウのビルド結果は全て正常終了します。

ビルド結果は全て正常終了しているので実行すれば正しく動作します。
なので、Xamlのデザイン時にアセンブリの依存関係を解決できれば、
Xaml上でのエラーはなくなるはずです。

ちなみに、他のクラスライブラリを参照していないConverterは全て問題ありません、
他のクラスライブラリを参照しているConverterだけで発生しています。
0385デフォルトの名無しさん2014/08/21(木) 23:57:49.81ID:IUXzYSmM
気になったのでぐぐってみた
デザイナでエラー出るんだよね?たぶん
デザイナで使用するもんをDLLで参照するなら
http://read2ch.net/tech/1274423236/
の105からと同じじゃねーかな。
0386デフォルトの名無しさん2014/08/22(金) 00:00:00.33ID:v0jyPx6A
VSのexeと同ディレクトリにDLLコピーでとりあえずエラーはなくなるみたいだけど、
一度ビルドしてDLLが作成されてもデザイナでエラーになるのこれ?
0387デフォルトの名無しさん2014/08/22(金) 00:04:18.73ID:nnd+Fn5F
>>386
エラーになりますね!
私の環境ではビルドしただけでなく、
そのアセンブリを直接参照しても解消しませんでした!
0388デフォルトの名無しさん2014/08/22(金) 00:05:55.98ID:v0jyPx6A
んーそうか。xamlのデザインに関連するソースをDLL化した事ないから知らんかったけど要注意だなぁ。
0389デフォルトの名無しさん2014/08/22(金) 00:40:07.98ID:nnd+Fn5F
>>385
>>386
ありがとう!
0390デフォルトの名無しさん2014/08/22(金) 04:29:21.75ID:cJuKMHCG
http://jobinjapan.jp/job-listing/keyword-csharp-pg.html
0391デフォルトの名無しさん2014/08/22(金) 10:21:04.70ID:rVIkTYQq
VS2013でEntity Framework 6 MVC4でスキャフォールディングするとSQL ServerのError 50で接続できくてDB作れないって問題が解決できないです・・・。ググってもSQL Serverの設定関係の検索結果出ないので
どうしたらうまくいきますか?
0392デフォルトの名無しさん2014/08/23(土) 14:07:25.32ID:5vburCG5
NPOIで、既存のExcelブックに値を書き込みたいのですが、
処理実行後にブックを見ても、何も書かれていません。

どのようにすれば書けるようになるでしょうか?
よろしくお願いします。

string filePath = @"C:\test\Test.xls";

using (var file = new FileStream(filePath, FileMode.Open))
{
  HSSFWorkbook hssworkbook = new HSSFWorkbook(file);
HSSFSheet sheet1 = (HSSFSheet)hssworkbook.GetSheetAt(0);

sheet1.GetRow(0).GetCell(0).SetCellValue("山田太郎");
sheet1.GetRow(1).GetCell(0).SetCellValue(10.05);
}
0393デフォルトの名無しさん2014/08/23(土) 14:13:26.81ID:4FG+/bwK
保存してないじゃん
0394デフォルトの名無しさん2014/08/23(土) 16:28:05.83ID:dVIXrQKi
ボタン形式のチェックボックスをつくって、
それを押すとMyHeavyTask()をUIスレッドとは別スレッドで処理するようにしています。
bool型のstart変数がfalseになったらMyHeavyTask()を特定のキリのいい場所で停止
するようにしているのですが、このような処理ですとパラメータ次第では
そのキリのいい場所に行くまでに相当時間がかかってしまって困っています。
かといって、そのキリのいい場所をループ処理の深いところ(頻繁にやってくるところ)
にするというのもMyHeavyTask()の処理効率を落としてしまうので避けたいです。
そこで質問なのですが、UIスレッド以外のスレッドをすべて停止させるような処理を記述
することは可能でしょうか?

private async void start_CheckBox_CheckedChanged(object sender, EventArgs e)
{
if (start_CheckBox.Checked)
{
start_CheckBox.Text = "Stop";
start = true;
await Task.Run(() =>
{
MyHeavyTask();
});
start_CheckBox.Checked = false;
}
else
{
start_CheckBox.Text = "Start";
start = false;
}
}
0395デフォルトの名無しさん2014/08/23(土) 16:43:59.98ID:gEo4YB0r
非協調で良いならThreadで動かしてSuspendでもしろよ
0396デフォルトの名無しさん2014/08/23(土) 19:30:26.40ID:dVIXrQKi
>>395
回答ありがとうございます。
Threadで動かしてSuspendしようと思ったら
Suspendは非推奨のようです。。。
0397デフォルトの名無しさん2014/08/23(土) 19:51:49.06ID:mPxwvrXO
>>396
切りのいいところ以外でも止めようってのがそもそもの考え方として非推奨。
ループを工夫して、許容できる範囲でキリの良い場所とやらを作るべき。

for(i=0;i<100000;++i)
を
for(i=0;i<100;++i)
for(j=0;j<1000;++j)
にするとか。
0398デフォルトの名無しさん2014/08/23(土) 21:40:47.51ID:Vo0In9NO
>>392
FileAccess.ReadWrite
0399デフォルトの名無しさん2014/08/23(土) 23:55:10.24ID:5vburCG5
>>398
解決できました。
ヒントありがとうございます。
0400デフォルトの名無しさん2014/08/24(日) 12:40:27.61ID:EYMdVqe7
西アフリカで、アウトブレイクした潜伏期間延長型エボラの死者・罹患者の数を散布図にし近似曲線を出してみたら
片対数グラフで直線だから既に指数関数的増加だった

2014年に、西アフリカでアウトブレイクした潜伏期間延長型エボラの死者は、2014年8月半ばで1000人。←今ココ
2014年12月上旬で1万人。
この時点で世界規模で空路シャットダウン開始、世界経済大混乱

2015年5月で10万人。
2015年9月で100万人。
この時点で、第二次世界大恐慌発生

2015年大晦日で1000万人。

ちなみに
http://ja.wikipedia.org/wiki/2014%E5%B9%B4%E3%81%AE%E8%A5%BF%E3%82%A2%E3%83%95%E3%83%AA%E3%82%AB%E3%82%A8%E3%83%9C%E3%83%A9%E5%A4%A7%E6%B5%81%E8%A1%8C
:カナダ保健省のサイトでは体内に数個のエボラウィルスエアロゾルが侵入しただけでも発症するとしている
:ハマダラカが、吸血したての人の新鮮血を媒介しているという学説が浮上している

エボラ出血熱は蚊やアブに刺されただけで感染する。

:「この地域には内戦、政府による搾取、テロが長い間続いており、それによって生まれた恐怖、貧困、猜疑心などがある。エボラは耐え難い騒音に付け加えられた一つのざわめきに過ぎない」
現地では

や る 気 は 皆 無
0401デフォルトの名無しさん2014/08/24(日) 13:58:27.54ID:gaQQwBox
コピペマン参上!まで読んだ。
0402デフォルトの名無しさん2014/08/24(日) 14:02:25.88ID:qJpGnFc5
自分もコピペしてるじゃねえか
0403デフォルトの名無しさん2014/08/24(日) 14:06:25.38ID:p4vSSJ59
>>394
フラグ見て止める処理は必要なコストだよ
処理時間がどの程度増えるか確認した?
0404デフォルトの名無しさん2014/08/24(日) 14:34:24.66ID:PkG6bn0Z
デバッグやら進捗表示のためにも有効だからあえてフラットな構造に近づけるべき
0405デフォルトの名無しさん2014/08/24(日) 14:40:09.23ID:ra9covi/
ユーザー操作で変更するフラグの確認で時間が問題になることは少ない
ただ内容的には非推奨でもsuspdendが適切かもね
0406デフォルトの名無しさん2014/08/24(日) 14:55:22.34ID:6BxzdmBG
処理スレッドでのフラグ確認にかかるコストの問題ではなくて、
フラグを設定してから実際に停止するまでに掛かる時間を気にしてるんじゃね。
0407デフォルトの名無しさん2014/08/24(日) 14:58:40.84ID:TtYOrmvQ
Task的にはCancellationToken渡してThrowIfCancellationRequested()とか使うべき何だろうな。
0408デフォルトの名無しさん2014/08/24(日) 14:59:18.84ID:TtYOrmvQ
全角文字が混じったorz
0409デフォルトの名無しさん2014/08/24(日) 16:53:15.65ID:vpRSe7di
string[]
List<string>
のどっちを使ったらよいか迷った時はどっちを使うべきでしょうか?
0410デフォルトの名無しさん2014/08/24(日) 16:55:57.02ID:VSiU0JPT
配列でないと困る
のでなければList
0411デフォルトの名無しさん2014/08/24(日) 17:01:11.53ID:vpRSe7di
>>410
レス有難うございます。
配列でないと困る状況って、例えばどんな状況でしょうか?
0412デフォルトの名無しさん2014/08/24(日) 17:48:16.20ID:RqNvPXr6
ライブラリの引数が配列とか
0413デフォルトの名無しさん2014/08/24(日) 17:56:22.22ID:uBdWgXj+
>>412
メソッドに渡す時にToArray()すればよくないですか!?

Listは配列扱いやすいようにしたクラスなので、
配列でないと困る状況って無いはず・・・

配列のままのほうが扱いやすい状況というのはあると思う。
0414デフォルトの名無しさん2014/08/24(日) 17:57:08.42ID:qJpGnFc5
固定長で移動が発生しなかったり、逆に複数要素の同時挿入があるような場合は配列のが適切かなあ
0415デフォルトの名無しさん2014/08/24(日) 18:09:53.68ID:RqNvPXr6
長年配列が使われてた世界では配列でやってんだろ
ゲーム用のライブラリ使う時とか
0416デフォルトの名無しさん2014/08/24(日) 18:37:03.23ID:6BxzdmBG
.ToArray を実行するコストってのもあるからな。
差し支えがないなら好きな方を使えばいいんじゃね。
0417デフォルトの名無しさん2014/08/24(日) 18:58:23.83ID:uBdWgXj+
ToArrayをILSpyで見ると↓
// System.Collections.Generic.List<T>
/// <summary>
/// <see cref="T:System.Collections.Generic.List`1" /> の要素を新しい配列にコピーします。</summary>
/// <returns>
/// <see cref="T:System.Collections.Generic.List`1" /> の要素のコピーを格納する配列。</returns>
[__DynamicallyInvokable]
public T[] ToArray()
{
    T[] array = new T[this._size];
    Array.Copy(this._items, 0, array, 0, this._size);
    return array;
}
0418デフォルトの名無しさん2014/08/24(日) 19:06:15.13ID:S0RId4dY
>>417
ILSpyじゃなくてこっちみたほうがいいんじゃない
http://referencesource.microsoft.com/#mscorlib/system/collections/generic/list.cs

ローカル変数なら配列かリストでもいいけど、メソッドの引数なら
IEnumerable<T>が無難だな
0419デフォルトの名無しさん2014/08/24(日) 19:08:20.29ID:uBdWgXj+
>>418
知らなかった、ありがとう!
0420デフォルトの名無しさん2014/08/24(日) 19:14:07.25ID:qJpGnFc5
メソッドはIEnumerable<T>にparams T[]をオーバーロードしとくと便利
0421デフォルトの名無しさん2014/08/24(日) 20:40:44.78ID:gxl9aRfR
public static T[] AsArray<T>( this T t )
{
 return new T[]{ t };
}

で完璧
0422デフォルトの名無しさん2014/08/24(日) 20:44:02.91ID:qJpGnFc5
t.AsArray()
new[]{t}

…長くなってないか?
0423デフォルトの名無しさん2014/08/24(日) 20:55:06.48ID:FyeLCg2h
短いコード=良いコード
という頭の悪そうな前提の発言ですね
0424デフォルトの名無しさん2014/08/24(日) 21:05:35.52ID:5pi7MzUS
配列でいいに決まってるじゃん
処理の途中でAddとかRemoveとかするつもりなわけ?
0425デフォルトの名無しさん2014/08/24(日) 21:11:59.44ID:mxC/5Br6
生成時に要素数が決まっていて変更するつもりが一切無いなら
配列にすることで使用用途がわかりやすくなる。
クラス型でなくインターフェース型で受け渡しするのと同じ
0426デフォルトの名無しさん2014/08/24(日) 22:13:30.86ID:C31bX29R
List<T>の中身って配列だっけ。だからforeachで順序が保証されてるとか。

1000万とかのループになるとさすがに速度に差が出てきて
差し替えたことある
0427デフォルトの名無しさん2014/08/24(日) 22:48:04.11ID:vpRSe7di
FontDialogでApplyボタンやOKボタンを押すと選択したフォント情報が得られますが、
そうではなくて、FontDialogのListBoxでフォント名をいろいろ選択した時点でどんなフォントが
選択されているかを取得して、それを利用してTextBoxのTextにそのフォントを適応して
動的にフォントを変えたいのですが、お勧めのやり方を教えてください。
0428デフォルトの名無しさん2014/08/24(日) 22:57:31.48ID:dSaHZUjz
FontDialogに似たダイアログを作る
0429デフォルトの名無しさん2014/08/24(日) 23:58:23.72ID:6BxzdmBG
とゆーか、それをそのままプログラムにすればいいだけなんじゃ。
0430デフォルトの名無しさん2014/08/25(月) 00:13:45.88ID:TMQbcYa1
コモンダイアログは細かい制御出来ないよ
0431デフォルトの名無しさん2014/08/25(月) 09:35:59.22ID:ILMmfGg0
FontDialog継承してHookProcオーバーライドして
フォント名が変わったら何かメッセージでも飛んでこないか調べればなんとかなるかもよ
0432デフォルトの名無しさん2014/08/25(月) 22:46:14.70ID:x9ClVc+n
sshで入ってソリューションを微修正くらいできるコンソール向けの簡易的な統合開発環境はないの?

phpなんかと違ってファイル単位で修正するわけにもいかないし、slnファイルを扱える簡易的なエディタが欲しいんだが。
Turbo PascalやQuick Cみたいなやつ。
0433デフォルトの名無しさん2014/08/25(月) 23:08:04.50ID:vwMZpBcP
>>432
マルチ
0434デフォルトの名無しさん2014/08/25(月) 23:08:17.57ID:ose3aRe9
諦めてgitでローカルのVS使え
0435デフォルトの名無しさん2014/08/26(火) 00:49:07.47ID:HrT/idVN
リモートデスクトップ
0436デフォルトの名無しさん2014/08/26(火) 02:24:39.91ID:9W6Ab6sX
>>432
需要があるのか‥
0437デフォルトの名無しさん2014/08/26(火) 10:32:38.41ID:7iMIcZrW
Makefileを出力したり取り込んだりしてほしいってことか、、、マルチか、、
0438デフォルトの名無しさん2014/08/26(火) 10:32:59.68ID:oh9Jtp5N
>>436
クラウド景気に乗って需要は凄いあるだろ。

マイクロソフトも認識しているからこそ別の回答として
slnファイルを排除したvNextを発表したんだろうし。
http://www.infoq.com/jp/news/2014/08/asp-vnext-kproj

vNext正式リリースまで我慢しろというのが今時点の回答じゃないか
0439デフォルトの名無しさん2014/08/26(火) 10:39:48.78ID:oh9Jtp5N
>>435
リモートデスクトップはない。
0440デフォルトの名無しさん2014/08/27(水) 00:06:09.65ID:lpGu5zQL
Form1から
Form2 fm2= new Form2();
fm2.show();
した場合、fm2が閉じられた時に、Form1の関数funcを実行したいのですが
どういう方法がお勧めでしょうか?ただしForm2.csファイルは変更できないので、fm2のClosing
イベントにfunc()を書き込むことが出来ないという条件で。
0441デフォルトの名無しさん2014/08/27(水) 00:11:59.46ID:KzfvDk51
>>440
Form2 fm2= new Form2();
fm2.FormClosed += (sender, e) => { /* 処理 */ };
fm2.Show();
0442デフォルトの名無しさん2014/08/27(水) 00:40:10.23ID:lpGu5zQL
>>441
ありがとうございました!
こんな物凄い技があるとは知らなかったです。
大変感謝しています。皆さん優秀ですね。
0443デフォルトの名無しさん2014/08/27(水) 01:51:17.28ID:oHiXfyQn
モーダルのときしかDialogResult列挙体って返ってこないんだっけ?

DialogResult dr = new DialogResult ();
Form2 frm2 = new Form2();
dr = frm2.ShowDialog();
if ( dr == DialogResult.OK ){処理}
とかにしたらお手軽
0444デフォルトの名無しさん2014/08/27(水) 02:15:22.66ID:4d3kWlnn
それはClosedだからClosingとは違うね
Closingなら閉じるの止めることができるし
0445デフォルトの名無しさん2014/08/27(水) 02:16:26.74ID:cVoJQZ3D
何言ってんだおめーわ
newする必要のないものをnewしてるし修行が足りねーんだよバカたれ
0446デフォルトの名無しさん2014/08/27(水) 09:56:30.54ID:pNPs7EXf
なんでこんなことやってんだろ
配列で痛い目にあって何でも初期値いれるようにしてるとかw
0447デフォルトの名無しさん2014/08/27(水) 12:30:50.37ID:vxFwWuw8
プログラミング歴2分とかなんだろ
0448デフォルトの名無しさん2014/08/27(水) 13:33:59.63ID:adsBspgK
2分でここまで来れるのか
自分の能力の無さに絶望すら感じるわ
0449デフォルトの名無しさん2014/08/27(水) 19:24:22.75ID:lpGu5zQL
new 一つ付けたくらいでそんなに責めなくてもいいだろ。
仲良くしようよ。
0450デフォルトの名無しさん2014/08/27(水) 19:41:31.41ID:bHLx5W9n
値型の既定のコンストラクタとかキモくて呼び出せないわ
0451デフォルトの名無しさん2014/08/27(水) 19:51:40.53ID:OpQLzo4a
てかダイアログとして使うことを前提に作ってないFormはDialogResult.Cancelが返ってくるんじゃね
0452デフォルトの名無しさん2014/08/27(水) 20:29:31.86ID:4dM7HKBO
閉じられた時に(無条件で)実行なんだから、DialogResultを受け取る必要自体が無いな。
0453デフォルトの名無しさん2014/08/29(金) 01:19:29.66ID:b0G4rJJs
規定のマーシャライズが貧弱なのだがC++/CLIでマネージラッパー書くのとC#でComImportのためのインターフェース書くのとどちらが良いんだ?
0454デフォルトの名無しさん2014/08/29(金) 01:55:08.38ID:QVz0i4+W
貧弱と感じてる点を詳しく
まあ多分俺には分からん水準の話なんだろうな
スルーしてくれていいが多分後者だ。賭けてもいい
だが給料日が末日なので今あれなのだが480円ほどでお願いしたいがどうか
ローンもあるので来月分からどうこうってのも実はきつくて
0455デフォルトの名無しさん2014/08/29(金) 02:25:40.21ID:b0G4rJJs
>>454
一般的な形態で配布されたコンポーネントから生成したインターフェースは開発時の厳密な型情報を失っているからね
クライアントに都合のいいインターフェースでない場合も多い
0456デフォルトの名無しさん2014/08/29(金) 14:35:44.75ID:GE9T7ii6
mediainfo.dllってのを使っているんだが、メインの画面から起動した小画面で実行すると
STAでも必ず初期化で落ちる。親画面で初期化さえしちまえば、以降は小画面のMTAでも
しっかり動くから問題はないのだが、何故動かないの知っている人居ませんか?
0457デフォルトの名無しさん2014/08/29(金) 22:05:49.64ID:XAMnH2wW
知らないけどどんなエラーで落ちるの?
0458デフォルトの名無しさん2014/08/29(金) 22:06:55.84ID:XAMnH2wW
知らないけどどんなエラーで落ちるの?
0459デフォルトの名無しさん2014/08/30(土) 01:23:28.75ID:mKj4uuDd
>>458
ハンドルは取得できたし、オープンまでは行くんだけど、次のデータ取得で
100%値が返ってくる筈の命令に対してnullが返ってくる
0460デフォルトの名無しさん2014/08/30(土) 02:28:46.90ID:k0REAwDT
コードと実行環境も書けないなら諦めろ
0461デフォルトの名無しさん2014/08/30(土) 03:33:23.65ID:Zo/caOTr
嫌です
0462デフォルトの名無しさん2014/08/30(土) 06:18:07.93ID:mKj4uuDd
>>460
http://mediaarea.net/en/MediaInfo/Download/Windows

ここのdllってやつに同梱されているサンプルコードそのまんまですから検証お願いします
当方の環境はWin8.1. Net4.5です。 32bitでも64bitでも状況は変わりません

バグを避けてコーディングするは可能だから、小画面の時に動かない理由を知りたかっただけだが
コードを用意したら検証していただけるようなのは有難いですね
0463デフォルトの名無しさん2014/08/30(土) 07:22:28.78ID:5GMQYsKF
次の方どうぞ
0464デフォルトの名無しさん2014/08/30(土) 07:25:00.06ID:yVYmk059
んなもん知るか。そのサイトで聞けよ。
検証しろってアホか。しねーよ。
0465デフォルトの名無しさん2014/08/30(土) 10:41:25.28ID:3/vPlGwH
久しぶりにC#スレに帰ってきてしまった・・

HDMIキャプチャを複数接続して1枚の画面の中でマルチ監視モニター
ぽいことをしようと思ってDirectShow.netでHDMIキャプチャデバイスから
映像は取れたんだけど、よくある表示部分をダブルクリックするとフルスクリーン表示
するという動作ができなくて困ってます

どうもDirectShow.netにハンドルを渡した表示対象となるコントロールのマウスイベントが
無効になってるぽいんですけど対策方法はありませんでしょうか?
0466デフォルトの名無しさん2014/08/30(土) 10:49:32.64ID:nBidJroR
DirectIO
0467デフォルトの名無しさん2014/08/30(土) 11:56:13.03ID:3/vPlGwH
書き込むと解決するのはあるあるですね・・・
自己解決しました

描画対象となるコントロールのハンドルをvideowindowのMessageDrainから
渡した上でformのWndProcをoverrideしてマウスイベントを拾えばOKでした
0468デフォルトの名無しさん2014/08/30(土) 13:13:30.34ID:BN/LzAfD
部屋の隅にぬいぐるみでも置いとけよ
0469デフォルトの名無しさん2014/08/30(土) 18:40:27.34ID:nBidJroR
部屋の隅にぬいぐるみ
を検索してみた

【心理テスト】
部屋の隅のぬいぐるみが一言呟きました。
何と呟いた?
A.どうしてこんな ところにいるんだろう?
B.僕はいったい誰なんだろう?
C.僕はこれからどうなるんだろう ?

【結果】 あなたは A.身体的 B.感情 C.頭 の知性の持ち主です。

なんだこれ?
0470デフォルトの名無しさん2014/08/30(土) 18:51:16.40ID:EmqnD2gG
そもそもなんでググった
0471デフォルトの名無しさん2014/08/30(土) 19:09:14.73ID:X7Sg99Ns
プログラミング作法を読むのだ

バグに困ったらテディベアに相談しよう
0472デフォルトの名無しさん2014/08/30(土) 19:13:49.39ID:nBidJroR
ペアプログラミング? いいえ、ベアプログラミングです
テディベアだけに・・・

うん つまらん
0473デフォルトの名無しさん2014/08/30(土) 19:14:57.07ID:ohOGIdyA
身体的の知性?
0474デフォルトの名無しさん2014/08/30(土) 19:29:16.44ID:EmqnD2gG
プロスポーツ選手が体で覚えた、瞬間的判断を連続で組み立てる戦術みたいな奴かな
知らんが
0475デフォルトの名無しさん2014/08/31(日) 02:02:07.57ID:4XvXTjFr
聞いてアロエリーナ ちょっと言いにくいんだーけど
ttp://www.youtube.com/watch?v=DvNycHeyhr8
0476デフォルトの名無しさん2014/08/31(日) 09:06:32.87ID:oilNB/q8
>>468-475
死ね
0477デフォルトの名無しさん2014/08/31(日) 10:28:00.74ID:pXVZWtAP
>>476
あ?
電車に飛び込む手伝いでもしてやろうかゴミ
0478デフォルトの名無しさん2014/08/31(日) 10:45:22.00ID:4XvXTjFr
>>476
つ 鏡に向かって3回唱えてみ?
0479デフォルトの名無しさん2014/08/31(日) 11:41:53.74ID:TTyls8fW
気持ちよくなってきましたハアハア
0480デフォルトの名無しさん2014/08/31(日) 13:01:44.23ID:1E15v6hg
Win7Pro 64bitのVS2013のC#で
objというobject型の変数が、イミディエイトウインドウで見ると16進表示で

 obj  0x0000000000000003  object {long}

となっているのですが、これは、16バイト(=128ビット)整数ということですか?
0481デフォルトの名無しさん2014/08/31(日) 13:04:44.20ID:R32ZyjOr
実は1バイトは0x00から0xffまで表現できるぞ!
0482デフォルトの名無しさん2014/08/31(日) 13:23:11.68ID:1E15v6hg
>>481
ああ、そういうことですか。
てっきり俺のVS2013は128ビット整数が扱えるのかと思って、ビックリした
のですが。
0483デフォルトの名無しさん2014/08/31(日) 13:23:59.18ID:Zgss2pgg
16進表記は2文字で1バイトだしlong(≒Int64)って書いてあるだろ
0484デフォルトの名無しさん2014/08/31(日) 13:27:24.06ID:R32ZyjOr
ちなみにSystem.Nemerics.dllにBigIntegerがある
0485デフォルトの名無しさん2014/08/31(日) 21:00:14.32ID:1E15v6hg
レジストリ削除するのに
RegistryKey.DeleteSubKeyTree
っていうのが有るのを見付けたのですが、
こんなの使って、サブキーの指定間違えたら、レジストリが全部消えてしまう
危険性ありませんか?
0486デフォルトの名無しさん2014/08/31(日) 21:16:35.34ID:fFHXuzxL
意外と気持ちいいぞ
0487デフォルトの名無しさん2014/09/01(月) 00:45:36.39ID:oasrXTsG
そういうのあるんだ。その辺は凄く便利そうだな。
0488デフォルトの名無しさん2014/09/01(月) 05:46:28.96ID:h32PmXO5
>>485
ディレクトリ削除するのに
Directory.Delete(String path, Boolean recursive)
っていうのが有るのを見付けたのですが、
こんなの使って、パスの指定間違えたら、フォルダが全部消えてしまう
危険性ありませんか?
0489デフォルトの名無しさん2014/09/01(月) 06:01:19.28ID:SfHA5O2Z
なぜかWinGroove事件を思い出した
0490デフォルトの名無しさん2014/09/01(月) 07:42:50.25ID:7AvYn8bh
昔、ム板のどっかで、
アンインストーラで指定フォルダ以下を全部削除する方法なんて質問挙がってたな。。
もちろん突っ込み入れたが。
0491デフォルトの名無しさん2014/09/01(月) 07:56:50.71ID:SfHA5O2Z
みずいろを思い出した
0492デフォルトの名無しさん2014/09/02(火) 13:55:33.80ID:KwpVGuSr
EnumWindowsとかに渡したdelegateって
EnumWindows内で呼び出されたときに
thisポインタ保持してますが、
これってどういう仕組みになってるんですか?

4バイトの関数ポインタだけ渡されて、
stdcallで呼び出されてから、どうやって
thisポインタを復元するんですか?
0493デフォルトの名無しさん2014/09/02(火) 15:07:45.26ID:pgEUShTg
C#でツリー構造を作る場合、
Hashtableを利用することはありますか?
それともあまり一般的ではないですか?
0494デフォルトの名無しさん2014/09/02(火) 18:05:33.80ID:bKcv+jaw
リスト構造等でデータを可変的に扱いまくる場合
リソースの解放を自分でコードに入れるのとガベージコレクタにまかせるのは、どっちが処理速度早いの?
長時間動かし続けるプログラムで
0495デフォルトの名無しさん2014/09/02(火) 18:52:54.51ID:eu1sh5+C
三連続ウンコ
下痢でもしてるのか
0496デフォルトの名無しさん2014/09/02(火) 19:05:51.23ID:Ez6/NLoq
>>493
ツリービューのアイテム使えば?TreeNodeだっけ?
作るにしてもツリーってだけならListかな
0497デフォルトの名無しさん2014/09/02(火) 20:16:26.11ID:eOKhcC61
キーが必要だとしてもKeyedCollectionだな
0498デフォルトの名無しさん2014/09/02(火) 20:25:45.58ID:hUjf3Nke
>>492
1. アンマネージ関数を動的に生成する
2. CLRが内部的に持っているテーブルに対し、1.で生成した関数の関数ポインタをキーとしてデリゲートオブジェクトを登録する
3. 1.の関数ポインタを引数として、目的の関数を呼び出す
4. 目的の関数が1.の関数ポインタを呼び出す
5. 1.の関数内で2.のテーブルからデリゲートを取り出す
6. 5.のデリゲートを呼び出す
こういう仕組みらしい
0499デフォルトの名無しさん2014/09/02(火) 20:49:31.97ID:DkC97hkb
>>494
そんなの実際のコードで実行してテストしろとしか
0500デフォルトの名無しさん2014/09/03(水) 00:16:41.96ID:/DOsRWjf
>>493
目的によるかな
Hashtable でツリーを作るなら
UI 関係なくてデシリアライズ不要で参照を使うとき
0501デフォルトの名無しさん2014/09/03(水) 13:05:42.74ID:57q8cCGD
昨日からvs2013.3_dskexp_JPN.iso落としてるけど5GBってあほかと、なぜ5倍も大きくなった
やっと84%まできて残り5時間とか、回線細いと辛いわ〜
0502デフォルトの名無しさん2014/09/03(水) 15:47:03.98ID:ekTu9Izi
無圧縮の中身スカスカDVDじゃね
0503デフォルトの名無しさん2014/09/03(水) 19:25:32.87ID:19rr1NRc
visual studio2013のC#のFormアプリのデバッグの際に、
�@ Console.WriteLine 出力ウインドウ
�A Debug.WriteLine  イミディエイトウインドウ
に、文字列を出力した場合、�@のほうがスクロールする速度が
遅いのですが、例えば
100行くらいのテキストファイルの中身を読み込んで
出力ウインドウに出すと完了するのに数秒かかります。
どうして、こんなに遅いのでしょうか?
0504デフォルトの名無しさん2014/09/03(水) 21:11:19.53ID:98dEo3v/
仕事で詰まっているので質問させてください


C#でストアドを呼び出します。
その後、Sqlserverのストアドの戻り値を
呼び出したC#で受け取る方法はありますでしょうか?

コーディングレベルで教えていただければと思います。


具体的に話しますと、
ストアドで複数テーブルをDELETEしたりINSERTしたりします。
どのテーブルでどのような処理(DELETE、又は、INSERT)で異常終了したかを知り
その情報をC#で受け取りたいです。

ただ、ストアドは正常系のリターン0、異常系のリターン1の2択しかなかったような気がして
無理なんでしょうか?
リターン値に値セットしても、C#では正常0、異常1しか戻らないし
困ってます
0505デフォルトの名無しさん2014/09/03(水) 21:29:01.34ID:lXYrBgsz
SqlCommandのParametersにDirectionをOutputにしたパラメータを追加しとくと実行後に値が反映されると思う
0506デフォルトの名無しさん2014/09/03(水) 21:38:37.24ID:VxSjmx8l
ストアドの戻り値ならParameterDirection.ReturnValueだろうな
0507デフォルトの名無しさん2014/09/03(水) 23:02:48.06ID:5VVmGuDH
最近久しぶりにストアド書かされて苦労したんだが、ストアドって今でも必要だと思う?
LINQ to SQLあるし、DB関係は全部LINQでいいと思うんだが・・・
っつーか本当にSQL ServerのストアドはLINQと比較して全てにいおいてパフォーマンス優れてるのか?
0508デフォルトの名無しさん2014/09/03(水) 23:09:45.97ID:98dEo3v/
>>507

C#とかだと本番環境で不具合発生した場合
サービス止めてビルドしてリリースしたりして手間がかかるけど
ストアドならサービス止めないで修正モジュールをCREATEで一瞬で終わるので
ストアドを使用している企業はおおいかな

いろんなところに派遣で行くけど
できるだけストアドでできるところはストアドで
それ以外を他の言語でという感じかな

DB言語はSQLできれば誰でも対応できるし
0509デフォルトの名無しさん2014/09/03(水) 23:11:22.52ID:m5rxId//
仕事の質問なら会社名を名乗るのが筋だろ。
0510デフォルトの名無しさん2014/09/03(水) 23:13:36.53ID:98dEo3v/
>>509
個人情報違反だよ それ
0511デフォルトの名無しさん2014/09/03(水) 23:14:52.34ID:2ANinLsJ
>>507
・ネットワーク越しに処理を投げたいときにどうするの?
・データベースに繋ぐクライアントが.NETとは限らない
・CLRストアドは要らないかも
0512デフォルトの名無しさん2014/09/04(木) 00:21:38.63ID:wyz+uFP0
細かい情報が知りたければ、ストアドの中で結果をテーブルに放り込んで後から読めばいい
0513デフォルトの名無しさん2014/09/04(木) 01:29:31.00ID:m8z0a+Ny
C#で書いた方が手っ取りはやいしデバッグやテストもしやすい
ストアドは必要になるまで後回し
0514デフォルトの名無しさん2014/09/04(木) 02:39:22.94ID:RFMLdQbe
>>510
あなたの会社の教育程度が知れる見事なレスですなぁ。

ところでマルチポスト先はここを含めて3箇所でいいの?
0515デフォルトの名無しさん2014/09/04(木) 04:58:58.09ID:GZmHy/2T
>>507
>LINQ to SQLあるし、DB関係は全部LINQでいいと思うんだが・・
LINQ to SQLって更新まともにできるか?
単純なSELECTしかしないようなストアドなら良らんだろうけど
ビジネスロジックをストアドで作りこむようなところもあるからなぁ
パフォーマンスだけがストアド使う理由じゃないぞ

専属のDBAいるようなところだと積極的に使うとこはある
単一システムのデータストアとしてしかDB使わんのならまあ不要だと思うが
0516デフォルトの名無しさん2014/09/04(木) 05:02:30.92ID:8sv7DhrX
バカを相手にするなよ
参照系だったら競合するわけでもない
使いどころがまったく違うだろ
0517デフォルトの名無しさん2014/09/04(木) 09:10:31.61ID:pRdxmtOk
相手を馬鹿と決めつけないと自分を保てない人ってなんなんだろうね
0518デフォルトの名無しさん2014/09/04(木) 12:07:14.89ID:W9dAm0Zk
誤(不当な人格の否定/中傷):
バカを相手にするなよ
参照系だったら競合するわけでもない
使いどころがまったく違うだろ

正(根拠を示した上での発言内容の否定):
バカげた発言に反応するなよ
参照系だったら競合するわけでもない
使いどころがまったく違うだろ
0519デフォルトの名無しさん2014/09/04(木) 12:38:47.78ID:S67bCNe6
馬鹿には無理
こうですか?
0520デフォルトの名無しさん2014/09/04(木) 13:36:04.14ID:MHZTueb1
例外を握り潰すさんから
相手は馬鹿&ガキと決めつけてナンボだと実践でレクチャーされたから。
0521デフォルトの名無しさん2014/09/04(木) 20:20:33.59ID:GZmHy/2T
>>518
わかってる人には馬鹿げた発言でも、質問者にはそうでも無かったりするからな
そういう発言を全部無視するなら、質問系の掲示板なんて成り立たんわ
馬鹿げた発言だと思うなら黙ってスルーしとけ
0522デフォルトの名無しさん2014/09/04(木) 20:38:06.79ID:CRg7xf6G
まあそうだけど、それも程度問題だからなあw
0523デフォルトの名無しさん2014/09/04(木) 21:01:32.96ID:SeObKpOy
>>515
LINQ to SQLは触ったことないけど、EntityFrameworkなら可能
バルク更新が必要な場合はEntityFramework.Extendedで
0524デフォルトの名無しさん2014/09/04(木) 21:53:07.60ID:w9ZHx+P2
俺にはEFやLINQ使わない(知らない・触ったことない)のにJavaじゃなくあえてC#で開発してる奴らって勉強不足すぎると思うんだマジで
0525デフォルトの名無しさん2014/09/04(木) 22:11:14.26ID:GZmHy/2T
使わない事が知らない事と同じだと思ってるのか?
典型的な道具に使われるタイプだな
0526デフォルトの名無しさん2014/09/04(木) 22:19:16.03ID:MHZTueb1
OK.
狂ったようにデザパタ適用するわ
0527デフォルトの名無しさん2014/09/04(木) 22:50:25.38ID:4zWrpPIb
同じだと思ってないから「使わない(知らない)」って併記してあるんじゃねえの
0528デフォルトの名無しさん2014/09/04(木) 22:57:06.32ID:SeObKpOy
EFは一度知っちまうと戻れなくなる
麻薬だわ
0529デフォルトの名無しさん2014/09/04(木) 23:39:06.93ID:m8z0a+Ny
そういうのに頼り過ぎると将来マイグレーションで泣きを見るからやめろよ
どの言語でも手書きで再現できる機能だけ使ってシンプルなコードを書きなさい
0530デフォルトの名無しさん2014/09/05(金) 00:24:44.69ID:JmPCGbhP
最新の技術追わないPGって技術者として終わってんだよ
いつまでも古臭い化石みたいなアーキテクチャで顧客ニーズに対応できてないし、そういう奴がPM・PLだとメンバも苦労するぜ

>>529
対応できないならそれはその時勉強すればいいんだよ、次は.NET5.0でASP.NET vNextなんて超進化してるぜ
SignalRとか知ってる(書ける)奴みたことないね
0531デフォルトの名無しさん2014/09/05(金) 00:34:05.17ID:pF8QxnwG
それも程度問題だよねえw
あらゆる技術を習得する時間的余裕と能力があるのならそれでいいけど、
そうでなければ取捨選択が必要になるわけだが、有用性と新しさはイコールじゃないから。

経済学の限界効用逓減則じゃないけど、むしろそうじゃない場合の方が多いし。
0532デフォルトの名無しさん2014/09/05(金) 01:03:05.63ID:dV/65a75
よくアニメーションツールなどであるタイムラインビューってC#で実現するとなるとどうすればいいの?
そういう用途の汎用的なコントロールライブラリみたいなのがあるのかな?
0533デフォルトの名無しさん2014/09/05(金) 01:22:28.65ID:q1GO8x6P
最終的に>>531なんだろうがPGとしては>>530に一票

>>532
こんなの?
http://timeline.codeplex.com/
有料でも無料でもいくらでもあるよ
0534デフォルトの名無しさん2014/09/05(金) 01:55:33.82ID:Bgboff1E
バカばっかりやなあ
技術は好きな時に身につけりゃいい
くっそ狭い視野でしか物を見れない雑魚がそれを仕事で使いたがるなよ
0535デフォルトの名無しさん2014/09/05(金) 02:00:19.82ID:OXQ6malv
MSが放り投げるかもしれない新技術に頼り切るなってことだと思うけど
技術が変わったときにまるっと書き直せればいいけどね
ActiveXすげえって極限まで使いまくったシステムとか移行するの大変だったろうし
0536デフォルトの名無しさん2014/09/05(金) 02:04:41.26ID:Bgboff1E
使い捨てのゴミアプリとか書いてる二流コーダーなら後先考えずに色々チャレンジ出来て楽しいだろうね
0537デフォルトの名無しさん2014/09/05(金) 02:29:14.87ID:a7+2CN2u
>>535
企業のシステムは、ある程度の粒度のサブシステムに分けて、
技術もある程度ばらけさせておきたいところだな
一極集中&肥大化した挙句の「ビッグバン」だけは勘弁だ
0538デフォルトの名無しさん2014/09/05(金) 02:32:51.78ID:8d25IQlr
10年以上保守るようなシステムとか絶対関わり合いたくないし新技術満載でいいわ
つーか新技術禁止にしたがる連中のソースって例外なくゴミなんだが
0539デフォルトの名無しさん2014/09/05(金) 06:38:33.76ID:L9jBRhl4
 マ 板 で や れ
 
 
0540デフォルトの名無しさん2014/09/05(金) 07:27:06.67ID:Puc1bb2Q
EFとかASP.NET MVCのことなら新技術ってほど新しくないぞ
バージョンも5、6まで行ってるし
0541デフォルトの名無しさん2014/09/05(金) 07:48:59.50ID:NMfZE3Cv
>>536
つまんねえ仕事で人生の貴重な時間を浪費するとか
ドMレベル高すぎて見習えねえわw
05424922014/09/05(金) 08:29:02.75ID:CqgVbrMD
返事が遅くなりましてすみません

>>498
なるほど、関数:オブジェクトが1:多なのを実現するには
動的な関数を作って、多:多にしていたということですか。
ありがとうございました。
0543デフォルトの名無しさん2014/09/05(金) 14:32:41.47ID:McsiSaST
>>533
うん、そういうやつ。
.NETにデフォルトで入っては無いんだよね?
0544デフォルトの名無しさん2014/09/05(金) 17:50:21.42ID:7QQvhi7k
無いよ
0545デフォルトの名無しさん2014/09/05(金) 19:56:44.12ID:+EECx998
EntityFramework使うのは構わないが
EntityFrameworkがSQL的に何をしてるかを
理解しているやつを見たことがない
0546デフォルトの名無しさん2014/09/05(金) 20:26:42.91ID:NecQB92T
SQLをマトに何をしてるか
マトもに理解してないんですが
EntityFrameworkって何するものなのですか?
0547デフォルトの名無しさん2014/09/05(金) 21:11:17.56ID:0CDHk7zA
確かにIQueryableが式木をうまいこと変換してくれてることくらいしか知らんな
0548デフォルトの名無しさん2014/09/05(金) 21:37:21.84ID:JmPCGbhP
>>545
じゃあなんでおまえはFramework使ってるんだよ・・・
こういうこと言い出す奴って馬鹿だよな、理解せずとも問題解決できることの素晴らしさがわからないんだね
はじめから理解できるやつは理解して、わからない奴も理解できるレベルになったその時再度学び直せばいいだけの話
なんで0か1なんだ?w
日本のソフトウェアの弱さは技術オタクばかりでセンスないからだろうが、エンドユーザーのこと考えて設計・コーディングしてる奴なんて10年以上経験あるが見たことないね
だからデザインもUIもUXも糞なんだよ日本のソフトウェアは・・・
デザインにも拘ろう、エンドユーザーのことを考えてUI作ろうって何度言っても相手にされないしセンスないやつらと仕事したくねーよほんと
0549デフォルトの名無しさん2014/09/05(金) 21:41:12.76ID:L9jBRhl4
やっぱスレチで糞議論続けるような低能ばっかだからじゃね?
0550デフォルトの名無しさん2014/09/05(金) 23:15:50.40ID:9R1ZKGlv
EF使用者を根拠なく見下したいって願望は分かった
0551デフォルトの名無しさん2014/09/05(金) 23:28:21.43ID:OXQ6malv
>>540
WebFormsで作り込んだシステムとか
最近の流れに対応するの面倒じゃない。
わりとMVCからバックポートされてるけど。

WPFはどうなるかな。
Silverlightやり込んだ人とかハズレだったよね。

C#自体はMSが力入れてるから今のところ安心か。
VB.NETはどうなるかな
0552デフォルトの名無しさん2014/09/06(土) 00:00:45.32ID:Abal/gUW
XAMLは細々と生き残るだろ。
俺なんて最近はストアアプリしかやってないぜ。
こんな奴かなり稀だろうが。
0553デフォルトの名無しさん2014/09/06(土) 00:16:17.05ID:pLN4mCUo
XAMLの方がレイアウト便利だしね
0554デフォルトの名無しさん2014/09/06(土) 00:24:28.86ID:8j9V64vl
XAMLはtreeviewがもう少しバインドしやすければよかったのだが
0555デフォルトの名無しさん2014/09/06(土) 00:35:40.19ID:AAfyxNeF
ダブルクリックを簡単にVMに伝える仕組みからだな
0556デフォルトの名無しさん2014/09/06(土) 06:46:22.90ID:lDOzh9kA
欲しい新機能は沢山あるけど、まずは放置されてるXAML2009対応してくれよ
0557デフォルトの名無しさん2014/09/06(土) 07:37:50.18ID:QHztkFSD
>>551
>VB.NETはどうなるかな

MSもgoogleとかiosに押されてるんだから、
C#に力点おいてコストカットした方が良いんじゃないかと思う。

もう、使ってる人間少ないだろVB
0558デフォルトの名無しさん2014/09/06(土) 07:42:42.15ID:pLN4mCUo
馬鹿な企業はVBの方が技術者多いからって理由で移行しないよ

あのVB信仰は何なんだろう…
0559デフォルトの名無しさん2014/09/06(土) 07:58:08.45ID:sW1/UIY4
最初のやつはさておき、今の最新のVBだと
そんなに機能的にC#と変わらんけどな

ただまあ、だからこそ2つも同じものいるか?という気分になるが。
0560デフォルトの名無しさん2014/09/06(土) 08:09:50.47ID:GuSRX+KM
業務なんかExcel方眼紙に書かれた表に従ってデータの切り貼りとエラーチェックをするだけの単純作業だから
実際なんでもいい
0561デフォルトの名無しさん2014/09/06(土) 08:40:24.67ID:RRWHy/v+
残念なことに、ゲイツの目が黒いうちはVBがなくなることはない。
0562デフォルトの名無しさん2014/09/06(土) 10:11:28.79ID:GifCPNgi
>>494
うちの会社で使ってるプログラムは、
C#が初期のころに作ったもので、「ガーベジコレクションが信用できん」としたC出身者が
解放まで入れた(全部ではない)プログラムなんだけど、クソ早い。
やっぱり解放処理を自動でやるには、自動でやるだけの処理がかかるから、それが積もるとバカにならんのだと思う。
0563デフォルトの名無しさん2014/09/06(土) 10:34:24.29ID:GuSRX+KM
自分で全く理解してないのが明らかなレスだな
そもそもマネージメモリの解放って手動じゃ不可能なんだけど
アンマネージメモリ確保してんの?
それともある程度のマネージメモリをまとめて確保しておいて自分で切り売りしてるってこと?
そして、そのプログラムが速いのはGCに頼っていないことが理由であると言える根拠は何?
個人的な経験だけど、そういう人はGC関係なく極端に遅いコードは書かないよ
0564デフォルトの名無しさん2014/09/06(土) 10:35:16.41ID:pLN4mCUo
アンマネージドコードの話???
0565デフォルトの名無しさん2014/09/06(土) 10:38:19.22ID:GuSRX+KM
>>564
普通に考えてマネージコードの話だろう
マネージコードだろうがアンマネージコードだろうが
マネージヒープ上のオブジェクトの領域を明示的に解放する手段はないよ
0566デフォルトの名無しさん2014/09/06(土) 10:39:59.18ID:lDOzh9kA
GCを乱射している可能性も一応
0567デフォルトの名無しさん2014/09/06(土) 10:52:36.56ID:z/gbJJfC
※ Java上がりのnew乱射コードと比較しての話です ※
0568デフォルトの名無しさん2014/09/06(土) 11:04:04.10ID:73g62t4Z
GC.Collectを連打して何かを解成した気になってるクソコードとか昔はありましたね
0569デフォルトの名無しさん2014/09/06(土) 15:44:25.45ID:IZ2O7tcf
素人がタスクマネージャの使用メモリ量見て文句言ってくる
↓
半素人がGC.Collect()呼びまくって解決しました、と報告する

みたいな感じはよくあった
0570デフォルトの名無しさん2014/09/06(土) 16:35:40.70ID:Pc7smWbU
ちょっとこのスレをSystem.GC.Collect();しておきますね
0571デフォルトの名無しさん2014/09/06(土) 17:04:39.02ID:ChfT6Oe0
うちのfirefoxちゃんが調子が悪いのはGC.Collect()のせいにちがいない
0572デフォルトの名無しさん2014/09/06(土) 20:22:49.93ID:2tzVhvhT
最近彼女がsex拒むのはGC.Collect()のせいにちがいない
0573デフォルトの名無しさん2014/09/06(土) 20:51:50.78ID:RswtrB7q
元彼からの参照が強く残ってたのか
0574デフォルトの名無しさん2014/09/06(土) 21:35:54.16ID:L7GF+p/v
>>572結合テストする前に単体テスト終わらしてください
0575デフォルトの名無しさん2014/09/06(土) 21:55:27.06ID:2/Bmlb1D
マ板大喜利 in C#になりつつあるな
0576デフォルトの名無しさん2014/09/07(日) 00:33:30.44ID:eq6Jizsh
最近マ板全体がこんな空気な気がするよ
すぐ茶化す
0577デフォルトの名無しさん2014/09/07(日) 00:45:09.66ID:ExXEc25n
まあ基本便所の落書きだからな

C#ってわりかし作りが奇麗だから
言語単体で考えるとあんまり相談いらんよな。
.NET全体やVisual Studioだといろいろありそうだけど
言語単体としては未来を語るくらい?
C#と同じ機能をVB側に実装するのが年々大変になってるな。
ILレベルでは同じになるから可能なんだけど
VB側の文法がどんどん変態的になってきてる

そういえばADO.NETのまとまった解説ってWeb上ではあんまないよね
解説したがりの人でもあんまりモチベーション湧かないのかな
0578デフォルトの名無しさん2014/09/07(日) 01:39:26.10ID:HbYwcme0
C#の自作 Formアプリ.exe と、自作の クラス.dll を
ILMerge.exe で合体できたのですが、
Fromアプリ.exe の Main() の先頭で
Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture("en");
のように言語を英語に変えているのですが、合体前は上手く日本語から英語に変わったのに、
合体後は日本語のままです。ILMerge.exe使うとこういうこと起こりますか?
解決方法ありますか?
0579デフォルトの名無しさん2014/09/07(日) 01:59:26.01ID:3FwLfqJp
>>578
カルチャ変更出来ないのは普通に考えて無いでしょ、まず自分を疑おう。
カルチャ変更後のカレントカルチャ出力したら変わってないの?
ローカライゼーションは何を使ってんの?
自作?サテライトアセンブリ?
0580デフォルトの名無しさん2014/09/07(日) 02:53:00.92ID:HbYwcme0
>>579
レスありがとうございました。

>まず自分を疑おう。
そうでした。

>カルチャ変更後のカレントカルチャ出力したら変わってないの?
変わっていました。

>ローカライゼーションは何を使ってんの?
既定と英語です。

>自作?サテライトアセンブリ?
日本語と英語の多国語対応のFormを初めて作ったので、サテライトアセンブリ
というような用語も今初めて知ったのですが、プロジェクトのフォルダには
リソースファイルが2つ出来ていて
   Resources.resx
   Resources.en.resx
があります。
ILMergeする前は、カルチャ変更でリソースが切り替わっていたのですが、
ILMergeしたら、いつも日本語リソースが読み込まれているようです。
どうしたら良いでしょうか?
0581デフォルトの名無しさん2014/09/07(日) 02:57:35.74ID:zJuHifTQ
どっかの鯖煮ソース揚げ
0582デフォルトの名無しさん2014/09/07(日) 03:46:39.32ID:3FwLfqJp
>>580
それだと日本語がデフォで英語がオプションだから日本語になるだろうね

確認したけどAssembly.GetExecutingAssembly().FullNameがマージ後の名称になるのでリソース検索に失敗する
サテライトアセンブリも同じようにマージしてやる必要がある
ILMerge /out:A_merged.resources.dll A.resources.dll B.resources.dll

ちなみにマージドexeでも[プロセスにアタッチ]からのデバッグで例外ブレークポイント使って原因特定出来るね
Main先頭でメッセージボックス表示して止まってる間にVSからアタッチすると楽
0583デフォルトの名無しさん2014/09/07(日) 05:22:24.09ID:AvfUsBTO
>>563
GCを真に理解した人間が書いたプログラムはマジで比較にならんぐらい速いよ
たかがGCでなんでそんなって驚いたよ
まあそんな高レベルな技術者はなかなか雑魚企業には居ないのだけど
0584デフォルトの名無しさん2014/09/07(日) 06:06:34.97ID:HbYwcme0
>>582
わざわざ実験して頂いてありがとうございます。

教えて頂いたアドバイスを元に試行錯誤しているのですが、カルチャを"en"にしても
マージ後のexeで英語リソースが読み込まれません。

実験のためにボタン1個だけのフォームと、簡単なクラス作って
フォームは既定と英語の多言語設定にしました。

マージはこんなふうにしています。

 ILMerge.exe /ndebug /targetplatform:v4 /out:MyFrom1Merge.exe MyFrom1.exe /log ClassLib1.dll

プロジェクトはビルドすると、exeやdllは

 bin\Debug\MyForm1.exe
 bin\Debug\ClassLib1.dll
 bin\Debug\en\MyFrom1.resources.dll

が出来ています。
0585デフォルトの名無しさん2014/09/07(日) 06:07:32.11ID:HbYwcme0
↑の続き

582さんに教えて頂いたのは
> ILMerge /out:A_merged.resources.dll A.resources.dll B.resources.dll
のようにAとBの二つのリソースのdllがありますが、
私が実験で作ったプロジェクトでは、MyFrom1.resources.dll だけです。
この中に英語のリソースが入っているんですよね。

ILMergeをどのように実行すれば良いのか分りません。

それと、
>ちなみにマージドexeでも[プロセスにアタッチ]からのデバッグで例外ブレークポイント使って原因特定出来るね
>Main先頭でメッセージボックス表示して止まってる間にVSからアタッチすると楽
を試したのですが、アタッチするところまでは出来たのですが、例外ブレークポイントというのは使った事が
ないのでやり方が良く分りませんでした。
0586デフォルトの名無しさん2014/09/07(日) 06:17:34.86ID:+jw+GCP2
>>583
はいはいそうでちゅねー
0587デフォルトの名無しさん2014/09/07(日) 07:27:54.10ID:Ek55f8TU
>>583
解放処理って何のことなんだよ?
0588デフォルトの名無しさん2014/09/07(日) 07:35:33.47ID:vxcVo4sc
バッファーの使いまわしとかString.Internとか直接GCとは関係ない改善の結果GC回数が減っただけじゃないの
0589デフォルトの名無しさん2014/09/07(日) 07:40:07.45ID:5UMv+wxP
最近、システムの形だけきにして

単体テスト→結合テスト→システムテスト→ユーザー受け入れテストを行う会社多くなってきて
無駄に実装の時間削られるが本当に腹がたつ

単体〜結合まではシステム会社で
システムテストは第一ベンダー(基本的にエンドユーザーのシステムを任されているベンダー又は子会社)
受け入れテストはエンドユーザ


今受け入れテストで不具合でて問い合わせ調査及び不具合対応してるけど
休日出勤するように言われて第1ベンダーから不具合報告書の提出と対面でのレビューやらされた
ものすごく怒られた

というかお前らの必要性のないシステムテストがざるだから
受け入れテストで不具合でたんだろ?
お前らのシステムテストの仕様書よこせや
おれがレビューしてやるよ

基本仕様に書いている、稀なケースを注意書きで書いてあるよな?
ならそのケースをテスト仕様書にかけよ

SQLserverまじでうざい
時刻が

日付のマッチングで入力ファイルともう1つの入力ファイルの日付が一致したら
データ作成する仕様だけど、時刻部分がアンマッチでアンマッチ
あほか
時刻なんか編集せなあかん属性なんかにするな
あほ
0590デフォルトの名無しさん2014/09/07(日) 07:44:47.17ID:vxcVo4sc
SQL Serverはミリ秒の末尾が0, 3, 7に丸められる仕様だったと思う
0591デフォルトの名無しさん2014/09/07(日) 07:47:39.89ID:KNwhARCn
>>589
文句があるなら上に転職しろ
奴隷に口無し
0592デフォルトの名無しさん2014/09/07(日) 07:52:44.92ID:9sJKeOy5
>>589
ぐたぐた言ってないで、はよバグ直せや
0593デフォルトの名無しさん2014/09/07(日) 08:17:24.13ID:5UMv+wxP
デー子のPMクラスで給与40万
こんなら残業で同じ分もらえる奴隷の方がいいよ
自分の仕事だけしてればいいし
自社に帰属意識ないから帰社日にかえらなくていい
客先には帰社日の名目で月1回15時くらいに早上がりして
早退できる実際には帰社しないで家に帰るけど

自分の仕事さえしていれば
500人以上のシステム会社正社員の
部署会、年2回の納会、年1の忘年会、定期的な飲み会
この苦痛以外なにものでもないイベント行事をしなくていい
ピラミッドの底辺が一番らくだよ
0594デフォルトの名無しさん2014/09/07(日) 08:48:45.11ID:P+sGFsS3
>>585
ILMergeなんて俺もわからんよw
とりあえず実行時にはMyFrom1Merge.resources.dllが必要で、
プロジェクトのプロパティからアセンブリ名を変え(MyFrom1Merge)てビルドすれば得られるよ
そのDLLは退避しておいて実行フォルダに配置ね
つかILMergeで名前変えないのは出来ないんか?

[ツール]-[例外]でCommonなんたらのカテゴリをチェックすると全例外の発生時にブレークするようになる
0595デフォルトの名無しさん2014/09/07(日) 09:12:27.96ID:3xCPEmky
>>562の書き込み見てGCの動作仕様を調べようと思ったが、
うわべの解説は一杯でてくるけど細かいのが見当たらない。誰か教えてください

マネージ領域はどんな構造なの?
0596デフォルトの名無しさん2014/09/07(日) 09:13:46.49ID:P+sGFsS3
>>594
[デバッグ]-[例外]の間違い

サテライトアセンブリが1つでもマージ出来たよ
ILMerge.exe /ndebug /targetplatform:v4 /out:MyFrom1Merge.resources.dll MyFrom1.resources.dll /log
0597デフォルトの名無しさん2014/09/07(日) 09:17:03.36ID:3xCPEmky
古いけど、MSのGCの解説ページに

>多すぎるポインタの問題
>ポインタが網の目のように張り巡らされたデータ構造を作成する場合、2 つの問題があります。
>第 1 に、オブジェクトへの書き込みが大量に行われます (下の図 3 を参照)。
>第 2 に、そのデータ構造に対してガベージ コレクションが行われる際に、ガベージ コレクタがすべ
>てのポインタを辿ることになり、オブジェクトの移動があれば、それらのポインタがすべて変更される
>ことになります。データ構造の存続期間が長く、あまり変更されない場合、ガベージ コレクタがこれ
>らのポインタをすべて確認するのは、完全なガベージ コレクション (gen2 レベルのガベージ コレク
>ション) のときだけで済みます。しかし、このようなデータ構造を一時的に作成する場合 (トランザク
>ション処理の一部として作成する場合など) は、このコストがはるかに頻繁に発生することになります。

という文があるように、やっぱり構造によっては、きちんと自分で解放処理を意識してプログラミングしないといけないってことでしょうか?
0598デフォルトの名無しさん2014/09/07(日) 09:22:43.13ID:KNwhARCn
意識すべきなのは解放処理ではなくオブジェクトの寿命だ
一般に、一時的なオブジェクトはなるべく早く使い捨てれば高速なgen0のGCで回収されるので
ほとんど問題にならない
中途半端にキャッシュすると世代が昇格してしまって逆にGCの負担になってしまうこともある
0599デフォルトの名無しさん2014/09/07(日) 09:45:03.97ID:3xCPEmky
GCの影響により処理速度が落ちるというより、画像などをC#で扱う場合、ページングの影響が大きいというのも見たが、どうなんでしょう?
基本的に.Net系はメモリを大量に消費するプログラムには向かないってことでしょうか?
0600デフォルトの名無しさん2014/09/07(日) 09:52:01.13ID:KNwhARCn
.NET4.5では解決されたけど、以前は極端に大きいオブジェクトを置くための領域(Large Object Heap)が断片化して
メモリをバカ食いし、メモリが足りなくなるという問題があった
0601デフォルトの名無しさん2014/09/07(日) 11:39:14.00ID:JJ1m+vUL
やっぱりアプリ終了まで一切開放しないのが一番やで
0602デフォルトの名無しさん2014/09/07(日) 11:43:19.61ID:+jw+GCP2
いやいやアプリを終了しないのが一番やで
0603デフォルトの名無しさん2014/09/07(日) 11:56:16.07ID:nVxlSK6H
そもそも起動(ry
0604デフォルトの名無しさん2014/09/07(日) 12:55:48.58ID:7c+Hv3u7
firefoxちゃんはアプリ終了まで解放しないけど
アプリ使ってる途中でも勝手に再起動して掃除してくれる
0605デフォルトの名無しさん2014/09/07(日) 14:04:07.69ID:Ek55f8TU
>>562
もしかしてGCが発生しない構造体にしたってこと?
でもコピーのコストは高くなるよ
0606デフォルトの名無しさん2014/09/07(日) 14:23:57.06ID:HbYwcme0
594さん、
わざわざ実験して頂きまして大変有難うございます。

>とりあえず実行時にはMyFrom1Merge.resources.dllが必要で、
>プロジェクトのプロパティからアセンブリ名を変え(MyFrom1Merge)てビルドすれば得られるよ
>そのDLLは退避しておいて実行フォルダに配置ね

この方法で出来ました!でも、DLLは実行フォルダではなくて
MyFrom1Merge.exe
en\MyFrom1Merge.resources.dll
のように、enフォルダの中に置く必要がありました。


>サテライトアセンブリが1つでもマージ出来たよ
>ILMerge.exe /ndebug /targetplatform:v4 /out:MyFrom1Merge.resources.dll MyFrom1.resources.dll /log

私も試してみましたが、確かにマージは出来ますが、私の場合は上で報告したように、
実行フォルダ下のenフォルダに英語リソースファイルが無いと、リソースが有効にはならないようで、
カルチャをenにしても日本語になってしいました。

というわけで、ほぼやりたいことが出来ましたが、enフォルダにリソースを置く必要があるので、
この点をどうにか解決したいです。
0607デフォルトの名無しさん2014/09/07(日) 14:26:51.17ID:6WTc15/U
ガベージコレクションはどんなケースでも「そこそこ動く」ためのものだから
全てのケースで最適なわけじゃない
性能が要件と照らし合わせて問題となった時に個別にチューニング
をするのはおかしくない
0608デフォルトの名無しさん2014/09/07(日) 15:07:07.90ID:UvfFH3lC
そりゃGCも速度要因の一つではあるが、普通はディスクI/Oとかグラフィックスの方からチューニングしたほうが速度は稼げるよね
勿論メモリーリークだけは細心の注意をするべきだが
0609デフォルトの名無しさん2014/09/07(日) 15:10:00.30ID:P+sGFsS3
>>606
実行フォルダ=enフォルダのつもりだった
その.Net標準の方法ではenフォルダ必須だよ
VS自体.Netアプリでdevenv.exeのところにもjaフォルダあるでしょ?

あとそのやり方ではjaカルチャ時にjaフォルダ検索してるはず
体感出来る差は無いが、
[プロジェクトのプロパティ]-[アプリケーション設定]-[アセンブリ情報]のニュートラル言語に日本語を設定し、
jaカルチャ時のリソース検索を抑止出来る

最後に言うのもなんだがILMerge情報少ないし怪しげだしオススメしない
上でアセンブリ情報の変更を提案したがマージでどうなるか分からないし厳密名絡んだらまた問題出そうだし
0610デフォルトの名無しさん2014/09/07(日) 15:31:53.19ID:rwjUyK8n
C#がstructでお茶を濁す一方
GoはGCの効率を上げるためポインタを用意した
0611デフォルトの名無しさん2014/09/07(日) 15:51:49.97ID:6BBgRau/
free忘れや二重freeを検出する仕組みってのはそこそこあるけども、GCの場合も
無駄なオブジェクトの保持を発見できるような支援機構ってないもんかな。
0612デフォルトの名無しさん2014/09/07(日) 15:53:42.76ID:KNwhARCn
CLR Profiler
0613デフォルトの名無しさん2014/09/07(日) 16:11:33.64ID:6BBgRau/
おお、これはありがたい。
0614デフォルトの名無しさん2014/09/07(日) 16:29:00.12ID:GFgnwjrO
.NETで扱えるコントロールの画像付きの一覧とか欲しい
0615デフォルトの名無しさん2014/09/07(日) 16:51:52.71ID:AvfUsBTO
>>586
本当に知らないんだな
学生か
0616デフォルトの名無しさん2014/09/07(日) 17:02:05.25ID:eUMfgX6t
こんなところにはカス以外いませんから
学生ではないにしろあなたはカスでしょう
0617デフォルトの名無しさん2014/09/07(日) 17:09:04.59ID:vxcVo4sc
こいつまだGCされてなかったのか
0618デフォルトの名無しさん2014/09/07(日) 17:15:14.20ID:AvfUsBTO
>>616
カスの自覚あることはいい事だよ
これからも謙虚に生きなさい
0619デフォルトの名無しさん2014/09/07(日) 17:16:33.98ID:fRH66jMu
ほとんどスーパーハカーの友人がいる(ことになってる)ガキのレスと同じだねw
0620デフォルトの名無しさん2014/09/08(月) 10:58:39.87ID:SHsZtZDp
>>617
こういうセンスのある嫌味を即座に言えるようになりたいわ
0621デフォルトの名無しさん2014/09/08(月) 20:19:00.88ID:kaEhSBtj
C#は、互換性を付けてくれ。
古いバージョンでビルドできないとか、XPでは動かないとか、
そもそもマルチプラットフォームが一つの目的だったんだろ。
激しくバージョン依存する言語になっている。
0622デフォルトの名無しさん2014/09/08(月) 20:21:21.69ID:PbRMq4gS
一理ある
0623デフォルトの名無しさん2014/09/08(月) 20:23:31.75ID:JcWBhojR
旧バージョンへの互換性とか無茶を言う
0624デフォルトの名無しさん2014/09/08(月) 20:24:27.24ID:M92Wr6ln
>>621
サポート打ち切ったOSにまで金掛けたくねーよって話だからなあ
0625デフォルトの名無しさん2014/09/08(月) 20:31:57.34ID:94RDtJAo
4.5から4.0対応に落とすのなんてすぐ終わる
0626デフォルトの名無しさん2014/09/08(月) 21:03:51.28ID:K14WNnAR
C#……言語。
XPで動くかどうかはフレームワークの話。OK?
0627デフォルトの名無しさん2014/09/08(月) 21:11:24.11ID:kaEhSBtj
新バージョでしかビルドは出来なくとも、ビルド後のものは下位バージョンに対応出来るはず。
存在しない機能はビルド時に下位バージョンの機能を使い実装すればいい。
0628デフォルトの名無しさん2014/09/08(月) 22:43:43.30ID:7bILeyvz
だから無茶なことは言うなっての
0629デフォルトの名無しさん2014/09/08(月) 22:44:03.46ID:sWXXsq31
>>627
>> 存在しない機能はビルド時に下位バージョンの機能を使い実装すればいい。
これのコストが膨大だと思うんだが。
VistaでAPIがいっぱい追加になってるし、それをフレームワークで再実装とか労力に見合わないと思う。
0630デフォルトの名無しさん2014/09/08(月) 22:54:06.14ID:lUOyVRaN
現金3兆円も持ってるんだから多少金使ってでもやるべきだろ
0631デフォルトの名無しさん2014/09/08(月) 23:01:28.99ID:94RDtJAo
まず4.0環境で使えない機能を確認して、それによって重大な影響があるか考えてから死んできたら?
0632デフォルトの名無しさん2014/09/08(月) 23:50:23.38ID:3GR90xPD
今の環境が過去の物になったら4.0C#はゴミかな?
0633デフォルトの名無しさん2014/09/08(月) 23:56:21.32ID:LiuBTFeI
互換性とか考えなきゃならない立場の技術者居るんだ?
レスの程度の低さからして入門ほやほやの素人ばかりだと思っていたわ
0634デフォルトの名無しさん2014/09/09(火) 00:04:20.25ID:8wc1ge1t
>>627
2.0使っていれば問題ないのでは?
3.0以降にしかない機能を使いたければ2.0の機能を使って実装すればいい。
0635デフォルトの名無しさん2014/09/09(火) 00:04:44.46ID:85ehTVCI
いちいち自己紹介しなくていいです
0636デフォルトの名無しさん2014/09/09(火) 03:11:47.88ID:+h+xKEPP
C#はバージョンアップし続ける限り、異なるランタイムすべてインストールすることになるが。
アセンブラとかLLVMは、C++言語がバージョンアップしても、基礎部分の更新不要だ。新言語の方が既存機能にあわせてくる。
C#は未完成で実験的に次々と更新してるのか?
そろそろ基礎を確定させてくれ。
0637デフォルトの名無しさん2014/09/09(火) 06:30:18.30ID:bCXrjuEX
アメリカ崩壊でC#が消滅する可能性も高い
0638デフォルトの名無しさん2014/09/09(火) 06:47:39.88ID:+FBK4F3k
VC++6.0のCランタイムとかMFCランタイムとかは、OSにプレインストール済みなので
作ったexeファイルをその環境にコピーするだけなんだが、
それ以降だとランタイムのインストールが要るんで不便なんだよな。
0639デフォルトの名無しさん2014/09/09(火) 07:23:03.63ID:4hXBlZe8
MFCとかも再頒布パッケージのインストールが必要なケースがあると記憶しているが・・・
そりゃ静的リンクすりゃ関係ないだろうけど、DLLの利点完全に殺しますよね
0640デフォルトの名無しさん2014/09/09(火) 07:51:29.97ID:fpBPeycQ
バージョンはもう少しちゃんとやればマシだったんだがな
0641デフォルトの名無しさん2014/09/09(火) 08:16:08.15ID:Vi+Y63Qm
.NETはとりあえず対象バージョンの.NET入れとけという
大雑把なバージョン管理であることに意義がある
0642デフォルトの名無しさん2014/09/09(火) 08:33:33.87ID:Gm/ykyol
実用上最新版いれとけばほとんど動くだろうし
フレームワークのバージョン違いのせいで不具合でるのってそれほど多くないだろ
0643デフォルトの名無しさん2014/09/09(火) 10:15:30.68ID:fpBPeycQ
そんなこと言ったら他のも全部同じ
0644デフォルトの名無しさん2014/09/09(火) 20:47:41.95ID:wyVbFh1O
最近は問題にならないのは、
Vista以降はアホみたいにHDDが巨大になるバージョン管理手法をとってるからだろう。
0645デフォルトの名無しさん2014/09/09(火) 21:16:20.03ID:eGs557ao
HDDの容量を圧迫するほどじゃないんだからそれが正解ってことだよね
0646デフォルトの名無しさん2014/09/09(火) 21:29:44.63ID:wyVbFh1O
おまえがそう思うのならそうなのだろう。
0647デフォルトの名無しさん2014/09/09(火) 22:03:16.99ID:r6Job8SJ
まあいまどきランタイムが1Gくらいあっても問題ないわな。
包含関係にないのがややこしいけど。

最新4.5.2入れたのに2.0が必要だからWindowsの機能で3.5を有効にしろとか
開発者ならともかくツールを使うだけのユーザーにはひどいな
0648デフォルトの名無しさん2014/09/09(火) 22:06:29.72ID:Vi+Y63Qm
マニフェストの設定で動くようにできるよ
テストしてないのに勝手に動かそうとして動かないと文句言われても困るだろう
0649 ◆QZaw55cn4c 2014/09/09(火) 23:17:58.44ID:3avbYtDV
>>639
DLL の利点って何?
0650デフォルトの名無しさん2014/09/10(水) 00:02:28.52ID:nyZDPrby
異なるCLR間の呼び出しなんてできるの?
COMみたいに外部プロセスにしてプロクシでしこしこ頑張るの?
0651デフォルトの名無しさん2014/09/10(水) 00:31:33.43ID:GV7HHc1o
DataGridViewの列と行を入れ替えるのって今でもできないのかな?
0652デフォルトの名無しさん2014/09/10(水) 00:49:40.42ID:fLkR7p90
4.5になってからMSDNの日本語がまともに見れないか消滅してるんですけど
0653デフォルトの名無しさん2014/09/10(水) 00:57:55.44ID:nyZDPrby
原文が安全だよ
日本語は特にダメだね
学問には使えない言語
0654デフォルトの名無しさん2014/09/10(水) 01:02:15.19ID:fLkR7p90
お前らが頑張って日本語訳してくれると思ったから翻訳投稿機能をつけて自前の翻訳を捨てたんじゃろうが
0655デフォルトの名無しさん2014/09/10(水) 01:43:23.09ID:smziAd9p
開発ドキュメントは保守のためにスナップショットがほしいんだよ。昔のMSDNライブラリみたいに。

今のMSは手抜きすぎる。
0656デフォルトの名無しさん2014/09/10(水) 06:35:24.45ID:ADC46RWM
>>653
>学問には使えない言語
そうなのか?言語自身のポテンシャルは高いと思うんだが
0657デフォルトの名無しさん2014/09/10(水) 06:38:52.93ID:Vjdq7FSm
誰が書いても曖昧さだらけのコードになり
コンパイラが空気を読んで分かったふりをして勝手な動作をしてくれるゴミ言語
0658デフォルトの名無しさん2014/09/10(水) 06:45:52.39ID:Nhb5WnWQ
プログラマーなら自然言語処理とかで日本語のクソさを味わうものじゃないのか
0659デフォルトの名無しさん2014/09/10(水) 06:57:17.98ID:ADC46RWM
>>657
それは英語もどっこいどっこいだぞ‥
分詞構文とか仮定法現在とかひどいものだ‥
ほい、日本国憲法前文だ
We, the Japanese people, acting through our elected representatives in the National Diet,
determined that we should secure for ourselves and our posterity the fruits of peaceful cooperation with all nations and the blessings of liberty all over this land,
and resolved that never again shall we be visited with the horrors of war through the action of government,
do proclaim that sovereign power resides with the people and do firmly establish this Constitution.
0660anonymous2014/09/10(水) 10:43:54.58ID:UJH43PvG
フォーム上のボタンがあり、(ネームスペースA)
それをクリックした中で、別のネームスペースBの
クラスのメソッド(public bool kansuu() を呼び出します。@
このクラスのメソッドはデータテーブルをエクセルを出力する処理で
引数として、データテーブル、出力するエクセル名、シート名をとります


この呼出たクラスの中で、ループ処理を行っており、その中の変数を

フォーム上のプログレッシブバーに表示するために、値取得したいのですが、
これは可能でしょうか?
0661デフォルトの名無しさん2014/09/10(水) 11:42:36.43ID:IIHTcJpZ
メインスレッドでやってて処理中にメインフォーム触ると反応がなくなる奴とみた
プログレスバーも動かないから気にしなくて良いよ
0662anonymous2014/09/10(水) 11:51:30.43ID:UJH43PvG
>>661

はい、動かなくなってしまいます。
これとは、別にC#の基本的なことなのですが、呼び出しの中の変数をフォーム上で取得することは可能でしょうか?
0663デフォルトの名無しさん2014/09/10(水) 12:16:30.86ID:pA1ov2xM
WPFのいい参考書を教えてちょ
0664デフォルトの名無しさん2014/09/10(水) 12:32:37.47ID:u2LjLTiW
>>662
デリゲートやIProgress等を引数で取って、ループ中で定期的に呼び出せば良かろう。
0665デフォルトの名無しさん2014/09/10(水) 12:37:54.82ID:QYGBN0RH
VC#では、switch文で所謂、VBのようなselect文のような書き方が
できませんが、下記のような場合どのように条件分岐をしたら良い
のでしょうか?

テーマ:
1.数値が1〜100まであって、これを5段階に分ける。
2.それぞれ用に別にルーチンA〜Eが用意されている。

select文だと、
select case tempman
 case 1 To 20

 case 21 To 40

 case 41 To 60

 case 61 To 80

 case Is > 81

end select

なんて書きますが、caseの条件判定がswich文だと、色々に書けないの
で困ってます。
0666デフォルトの名無しさん2014/09/10(水) 12:45:53.00ID:u2LjLTiW
>>665
if ( 〜 )
else if ( 〜 )
 :
 :
0667デフォルトの名無しさん2014/09/10(水) 13:04:02.46ID:3PmIyH9H
caseの羅列を思いついた俺はダサい
0668デフォルトの名無しさん2014/09/10(水) 13:17:13.44ID:/KH51cxp
>なんて書きますが

書きません
0669anonymous2014/09/10(水) 13:31:03.00ID:UJH43PvG
ありがとうございます。
Iprogess は、初めてききますが、ドットネット4.5からみたいですね
デレゲートもまだ理解していないので、少しいじってみます。
これらで、ループ中に、呼び出すとは、メインPGから別ネームスペースのクラス内の変数(ループ内のカウンタ)
をよびだせれば、表示可能になると思います



>>664 :デフォルトの名無しさん:2014/09/10(水) 12:32:37.47 ID:u2LjLTiW
>>>>662
>>デリゲートやIProgress等を引数で取って、ループ中で定期的に呼び出せば良かろう
0670デフォルトの名無しさん2014/09/10(水) 14:32:54.80ID:RUX2hYVm
swith tempman / 20
case 1:
:
default:

じゃダメかね。いい書き方じゃないけど。
0671デフォルトの名無しさん2014/09/10(水) 14:42:51.20ID:QYGBN0RH
>>670
それですと、1〜100じゃなく、1〜100の中で
20で割れたもの以外はdefaultで処理されてしまうような気がするのですが。
0672デフォルトの名無しさん2014/09/10(水) 14:56:00.50ID:IIHTcJpZ
なるほどVBerだな
C#の/演算子はVBの\演算子と同じよ
0673デフォルトの名無しさん2014/09/10(水) 15:10:37.77ID:QYGBN0RH
>>672
なるほど。

商で出た余りを見るわけですね
0674デフォルトの名無しさん2014/09/10(水) 15:21:51.10ID:IIHTcJpZ
VBの剰余演算子はModだろ…
0675デフォルトの名無しさん2014/09/10(水) 15:42:20.54ID:QYGBN0RH
>>674
すみません。勘違いしてました。

整数除算して、余り切り捨てた時の数字を判定材料に
使うと、caseでずらーっと書くよりも、よりselect case文の
ように、スマートな判定式を作れるわけですね。

0
1
2
3
で、それぞれにあとは、処理用のルーチンを渡してbreak;
すると。

大変参考になりました。お手数おかけしました∪・ω・∪
0676デフォルトの名無しさん2014/09/10(水) 20:56:47.64ID:RxfE0CVd
まあ普通は商で分岐なんてトリッキーなことしないで
if使うけどね
0677デフォルトの名無しさん2014/09/10(水) 20:59:54.16ID:/0104ssA
自分用なら好きにすればええ
他人が見るからと.net2.0時代の表記を強制されるとか堪らんわ・・・
0678デフォルトの名無しさん2014/09/10(水) 22:34:48.95ID:683Kw++q
トリッキーかなぁ?
0679デフォルトの名無しさん2014/09/10(水) 22:40:51.60ID:epLGeAAS
5段じゃなくなったりこの範囲は一律このルーチンとかなったら
結局作り直さないといけないからな。
数値を渡すとデリゲートにルーチンA-Eを設定するメソッド、とかが
C#ぽいんじゃないの
0680デフォルトの名無しさん2014/09/10(水) 23:10:24.69ID:gJ8C27uq
質問があります。

Hogeというネームスペースを定義して、
Hogeを使うPiyoというネームスペースを定義しています。
HogeはコンソールアプリでPiyoはフォームアプリです。
ビルドするとHoge.exeとPiyo.exeができます。
実際に配布したいのはPiyo.exeだけなんですが、
Hoge.exeがないと動きません。
(例えばReleaseフォルダからデスクトップに移動すると)

どうすればPiyo.exeだけで動かすことができますか?
0681デフォルトの名無しさん2014/09/10(水) 23:18:34.14ID:qNm9BHd8
>Hogeを使うPiyoというネームスペースを定義しています。

>Hoge.exeがないと動きません。

当たり前じゃんw
どうしたいのさ
0682デフォルトの名無しさん2014/09/10(水) 23:25:03.09ID:gJ8C27uq
>>681
配布するときにPiyo.exeだけで動くようにしたいんですが・・・
0683デフォルトの名無しさん2014/09/10(水) 23:35:46.39ID:RUX2hYVm
静的リンクすればいいんじゃねーの。
0684デフォルトの名無しさん2014/09/10(水) 23:43:48.50ID:gJ8C27uq
>>683
配布するときにHoge.dllとPiyo.exeをセットにするということですか?
やはりこうするしかないんでしょうか・・・
静的リンクでPiyo.exeにひとまとめにすることはできないですか?
Hogeをdll化したところでPiyoからしか使われないわけですし・・・
0685デフォルトの名無しさん2014/09/10(水) 23:44:56.80ID:gJ8C27uq
すいません、>>683を「動的リンクすればいいんじゃねーの。」と勘違いしてました。
静的リンクするにはどうすればいいですか?
0686デフォルトの名無しさん2014/09/11(木) 00:15:09.12ID:giQVrv0t
そのPiyoから使っているHogeのコード部分をHoge.exeから分離すればいいんじゃないの?
それをPiyo.exeとHoge.exeから使うようにして。
0687デフォルトの名無しさん2014/09/11(木) 00:15:34.05ID:fAutpztf
1つのプロジェクトで完結させればいいだけじゃ…
0688デフォルトの名無しさん2014/09/11(木) 00:20:22.58ID:suS3hZzX
ソリューション毎のビルド設定で、
Hoge プロジェクトの生成物の形式を静的ライブラリ(.lib)に設定する。
Piyo の参照設定で Hoge を参照するように設定する。

で、出来たような気がするけど、最近は触ってないからよく覚えてない。
調べる気はないので、違ったら自分で調べるか(基本的なことなので調べればすぐにヒットするはず)、賢者が現れることを祈れ。
0689デフォルトの名無しさん2014/09/11(木) 00:27:58.16ID:jelsmP7a
アセンブリをマージするって前にこのスレでも見たような...
個人的に興味がない(別にdllのままでいいじゃん)ので記憶に残ってないが。
0690デフォルトの名無しさん2014/09/11(木) 00:38:28.42ID:bE0XmE2o
構成としてはひとつのソリューションの中に
Hogeというプロジェクトと
Piyoというプロジェクトがあって、
HogeはCUI的な扱いで(Mainは動作確認程度)
PiyoはGUI的な扱いになってます。

>>686
Hoge.exeはいらないんですが、
PiyoプロジェクトのReleaseフォルダの中に生成されますよね。
あっ、もしかしてネームスペースHogeの中のMainを削除すればいいんですかね?

>>687
Hogeネームスペースに書かれたコードをPiyoネームスペースにコピペすれば
単一実行ファイルにできることはわかるんですが、それは避けたいです。
現在はPiyoプロジェクトの中にPiyo.csがあって、
Hogeプロジェクトの中にHoge.csがあるんですが、
Hoge.csをPiyoプロジェクトの中に項目追加とかでなんとかなりますか?

>>688
ありがとうございます。
ちょっと試してみます。
0691デフォルトの名無しさん2014/09/11(木) 00:54:18.56ID:vleFyoUy
ILMerge
0692デフォルトの名無しさん2014/09/11(木) 04:23:38.88ID:bE0XmE2o
以下のページの通りにやったらできました!
みなさまどうもありがとうございました。

http://www2.tbb.t-com.ne.jp/wizard/csharp/cs2008/link_classes.html
0693デフォルトの名無しさん2014/09/11(木) 15:43:05.76ID:vFz0q7PT
ListViewのItemとSubItemの関係が今一つ良く分らないのですが、
Detailモードで、
Column1  Column2
の時に、Itemを追加する方式で
listView1.Items.Add(new ListViewItem(new string[] { "item1", "item2" }));
とすれば、

Column1  Column2
item1   item2

こんなふうにアイテムが2つ追加できますが、一方、SubItemを追加する方式でも
(ただし、引数など省略しています)
ListViewItem lvi = new ListViewItem(省略)
var subItem1 = new ListViewItem.ListViewSubItem(省略);
lvi.SubItems.Add(subItem1);

var subItem2 = new ListViewItem.ListViewSubItem(省略);
lvi.SubItems.Add(subItem2);

listView1.Items.Add(lvi);

のようにすれば同じように2つのアイテムが追加できると思うのですが、
ItemとSubItemって、何が違うのでしょうか?
どちらも表示したら同じように表示されると思うのですが。
0694デフォルトの名無しさん2014/09/11(木) 15:56:57.90ID:SNUYrGFx
Item は row + column[0]
SubItem は column[1], column[2], ...
0695デフォルトの名無しさん2014/09/11(木) 16:22:50.87ID:vFz0q7PT
>>694
レスありがとうございます。
まだ良く分らないのですが、どちらを使っても表示上はおなじように見えますよね?
最初に示した例のように2カラム追加すれば、Item方式でもSubItem方式でも
同じように2カラム追加されて、表示も同じように見える。
だとすると、Item方式とSubItem方式の二つある理由が分らないのですが。
どちらか一つだけで良いのでは無いですか?
それとも両者を使い分けなくてはならない状況があるのでしょうか?
よろしくお願いします。
0696デフォルトの名無しさん2014/09/11(木) 16:29:00.79ID:SNUYrGFx
だから
Item は row + column[0]
SubItem は column[1], column[2], ...
0697デフォルトの名無しさん2014/09/11(木) 16:30:07.54ID:SNUYrGFx
SubItem 方式しか存在しない
二つあると思うのは気のせいだから忘れろ
0698デフォルトの名無しさん2014/09/11(木) 16:32:43.86ID:vd4own10
693のいうItem方式はSubItemが不要なDetail以外で簡単に扱うための便利機能と考えれ
0699デフォルトの名無しさん2014/09/11(木) 17:30:00.73ID:EXOyNbGn
ItemとSubItemの違いはわかってるものとして、その方式の差は
ListViewItemを作る時に、サブアイテムも一緒に作るか
先にListViewItem作っといて、あとからサブアイテムを指定するか
の違い
0700デフォルトの名無しさん2014/09/11(木) 20:30:30.03ID:IuHoN8Gf
var task = Task.Run( ()=>{
this.Invoke( (Action)delegate{
//コントロールいじる
} );
} );
task.wait();

waitで止まって戻ってこないんだけどなんで?
0701デフォルトの名無しさん2014/09/11(木) 20:37:42.89ID:1XX3yAfA
普通にデッドロックしてるから
TaskがInvokeの完了を待つ
メインスレッドがTaskの完了を待つ
メインスレッドは停止中だからInvoke呼び出しはいつまでも処理されない
await Task.Run(...);
タスク完了時の処理
とか書く
0702デフォルトの名無しさん2014/09/11(木) 20:46:56.40ID:IuHoN8Gf
あーそういうことか。ありがとう
意外と簡単にデッドロックしちゃうのね
0703デフォルトの名無しさん2014/09/11(木) 20:49:19.19ID:qT2YKu7z
async awaitを全部に付ければ解決
0704デフォルトの名無しさん2014/09/11(木) 21:39:07.11ID:CsfuAfpa
こんばんは
ユーザーコントロールを猿にも分かるように説明して欲しいです…
0705デフォルトの名無しさん2014/09/11(木) 21:44:49.84ID:1XX3yAfA
既存のコントロールをまとめて一つにしたもの
0706デフォルトの名無しさん2014/09/11(木) 21:45:47.00ID:jpjc/vED
System.Windows.Forms.UserControl
System.Windows.Controls.UserControl
System.Web.UI.UserControl

どれだよ
0707デフォルトの名無しさん2014/09/11(木) 21:55:02.94ID:CsfuAfpa
>>705
コントロールというのはウィンドウに表示されている部品のようなもので、それをまとめる入れ物のようなもの?

>>706
わからないですウホ…

解説サイトみてても唐突にコントロールとかいう用語使いだすからわけかわらんですよ
0708デフォルトの名無しさん2014/09/11(木) 22:06:26.06ID:tK69d/xa
>>707
まず自分が『何』で作ろうとしているのかを説明しないと先に進まないぞ
0709デフォルトの名無しさん2014/09/11(木) 22:06:36.99ID:fAutpztf
コントロールくらい検索しようぜ
http://msdn.microsoft.com/ja-jp/library/windows/desktop/aa511482.aspx

>>706 は WinForms、WPF、ASP.NET 全部でユーザーコントロールってあるから
0710デフォルトの名無しさん2014/09/11(木) 22:09:09.09ID:jpjc/vED
画面に配置する部品 ⇒ コントロール
部品の入れ物 ⇒ コンテナー
別ファイルで中身を入れておくコンテナー ⇒ ユーザーコントロール

ぐらいの理解でいいんじゃないの
追加でプロパティとか定義しないと有効利用は出来ないけど
0711デフォルトの名無しさん2014/09/11(木) 22:11:34.81ID:CsfuAfpa
>>708
いかがわしいゲームを作ろうとしてます…ごめんなさい

>>709
つまりコントロールを日本語になおすとなにウホ?
0712デフォルトの名無しさん2014/09/11(木) 22:15:38.62ID:CsfuAfpa
>>710
コントロールは部品でよかったのですか。なんで統制、支配とかが部品になるのかわからんですが・・・
別ファイルで中身を入れておくというのは、別のcsファイルにそういう処理を書くという意味ですか?
0713デフォルトの名無しさん2014/09/11(木) 22:22:36.58ID:1XX3yAfA
リモコン=リモートコントローラは遠隔支配者なのか怖いな
0714デフォルトの名無しさん2014/09/11(木) 22:34:36.33ID:VMJ3olzF
>>712
うん、車のパーツも複数のモデルで流用してコスト抑えてるでしょ?
プログラム部品も同じ
0715デフォルトの名無しさん2014/09/11(木) 22:38:04.29ID:f08XHIWY
ユーザーコントロールをボンとおいて
その上に出来合いのコントロールをポトペタしていくっていう感じじゃないの

いっぺんに全部の処理を書くとクラスがでかくなるから
機能毎にGUIパーツを集めてユーザーコントロールにして
必要な処理をpublic公開するすような感じでただのクラスのように使ってるなあ
0716デフォルトの名無しさん2014/09/11(木) 22:44:48.57ID:CsfuAfpa
つまりコントロールという小さい部品でくみたてたパーツがユーザーコントロールというわけですか
おかげさまで、なんとなく雰囲気はつかめましたが、やっぱり何か本でも買って読んだほうが良さそうですね…

皆さんありがとうございました
0717デフォルトの名無しさん2014/09/11(木) 23:34:07.35ID:UmAlHxFp
本なんか読むよりソース読んだ方が速い
ユーザーコントロールでぐぐってソース拾えよ
プロジェクトまんま入ってる奴もころがってるだろ
0718デフォルトの名無しさん2014/09/12(金) 00:02:48.92ID:DNf7PEGd
みなさん、沢山のレス有難うございました。
>>696
>だから
>Item は row + column[0]
>SubItem は column[1], column[2], ...
すみません、まだよく分らないのですが、今はDetailモードで表示しているのですが、この場合に
row+column[0]の意味が良く分らないのですが。


>>697
>SubItem 方式しか存在しない
>二つあると思うのは気のせいだから忘れろ


>>698
>693のいうItem方式はSubItemが不要なDetail以外で簡単に扱うための便利機能と考えれ
結論としては、ListViewにアイテムを追加する場合はSubItemの方式をいつも使えば良いでしょうか?


>>699
>ItemとSubItemの違いはわかってるものとして、その方式の差は
ここが分っていないのかもしれません。

>ListViewItemを作る時に、サブアイテムも一緒に作るか
>先にListViewItem作っといて、あとからサブアイテムを指定するかの違い
だとしたら、やはりItem方式とSunItem方式は同じものですか?
でもそれだと、697さん、698さんの説明と矛盾しませんか。
ますます分らなくなってきました。
0719デフォルトの名無しさん2014/09/12(金) 00:07:21.80ID:HfdJ5Emu
本なんか読んでないけど仕事は出来て
る。
だから土方なんだ。
0720デフォルトの名無しさん2014/09/12(金) 00:16:29.41ID:nuEPiIOR
変なところで改行している奴に仕事なんて出来るわけ無いだろ。
0721デフォルトの名無しさん2014/09/12(金) 00:23:01.06ID:RqVODSbX
>>718
方式ってのは、普通、やり方の事をいうんだが
お前の言うItem方式とSubItem方式はやり方が違うんだから別の方式だろ

出来上がるものは同じListViewItemだがな
0722デフォルトの名無しさん2014/09/12(金) 10:18:28.96ID:WLvtPktD
Item方式はSubItem方式のラッパーだと思えば解決するだろ〜?(´・ω・`)
内部では同じ事やってんだルルォ?
0723デフォルトの名無しさん2014/09/12(金) 14:44:05.82ID:NgfP7GVf
BindingListで削除した要素を取得する方法ってある?
ListChangedイベントでItemDeleted受け取った時点ではもう消えてるし。
0724デフォルトの名無しさん2014/09/12(金) 15:11:18.05ID:WfJC1uO1
それはBindingList<T>ってことでいいんだよな
派生クラスでRemoveItemとかオーバーライドすればいける
生のBindingList<T>なら多分無理じゃね
0725デフォルトの名無しさん2014/09/12(金) 15:14:25.56ID:NgfP7GVf
>>724
�d
ちょっとオーバーライドしてくる。
0726デフォルトの名無しさん2014/09/13(土) 11:41:52.53ID:Na2o1SVC
警告のところに

言語名 'ja-JP' は無効です。 ファイル CSC

と出ているのですが、どうすれば消えるのでしょうか
今のところ動作に支障はないんですが、すごい気になっています
0727デフォルトの名無しさん2014/09/13(土) 12:17:16.34ID:lsp5of7C
プログラミング初心者が一から勉強するならC#とJAVAどちらが比較的簡単?
どうぞ宜しくお願いします
0728デフォルトの名無しさん2014/09/13(土) 12:27:29.75ID:iEhTYses
言語だけならどっちもかわらん
ただ、それでなにか作ろうと思ったら
基本オールインワンで完結できるC#(というかVS)のほうが楽かもな
Javaは自分でフレームワーク選定してプラグイン探さなきゃいかんし。
0729デフォルトの名無しさん2014/09/13(土) 12:39:30.33ID:UYHdO/CQ
言語的にJavaのが低機能だけど、importとかチェック例外とか煩雑にする仕様だけは充実しててシンプルではないし
WebとかAndroidとかでないとJavaを選ぶ必然性がない
0730デフォルトの名無しさん2014/09/13(土) 12:44:25.00ID:58+xB2iQ
初心者ならコンソールアプリよりWindowsアプリの方がモチベーション上がるでしょう
C#一択
0731デフォルトの名無しさん2014/09/13(土) 12:46:59.42ID:fBCf/dYL
今時の初心者ならandroidアプリとかの方がモチベーションあがるんじゃねーの 知らんけど
0732デフォルトの名無しさん2014/09/13(土) 12:57:09.96ID:UYHdO/CQ
モチベーションだけでAndroidエミュレーターに耐えられるのかねえ
0733デフォルトの名無しさん2014/09/13(土) 15:51:30.59ID:UTK/dH9B
>>727
後発の分C#のほうが洗練されてるから変な癖が付かなくていいと思う
あと>>728の言う通りVisual Studio Expressが使えるのがでかい
0734デフォルトの名無しさん2014/09/13(土) 17:52:23.62ID:wiNyIyeA
Java(Android)は開発環境を組み上げるのは未だに慣れん。昔よりマシだけど全体的に重いし。
Android Studioもまだまだだもんなぁ。
0735デフォルトの名無しさん2014/09/13(土) 19:31:59.82ID:nl7GGicj
Androidのエミュレータを4〜5年くらい前に試した時は重すぎて絶望したんだけど
今でもまだ同じくらい酷いの?
0736デフォルトの名無しさん2014/09/13(土) 20:06:46.88ID:DTDaEtud
インテルの仮想マシンが使えるようになったから多少マシになったけど
WinストアアプリやiOSアプリのようなシミュレータ方式ではないのでやっぱり遅い
0737デフォルトの名無しさん2014/09/13(土) 20:11:23.39ID:Mqgtp+Th
ARMイメージは相変わらず重い
重い理由がQEMUでCPUエミュレータしてるからなので今後も軽くはならない
x86イメージはホストのCPUでほぼ直接実行するから軽い

アセンブラ弄ってる人以外もう開発中にARMイメージ使ってる人いない気がする
0738デフォルトの名無しさん2014/09/13(土) 20:34:28.58ID:UYHdO/CQ
会社のi5ノートだとHAXM使っても軽いってレベルではなかった
0739デフォルトの名無しさん2014/09/14(日) 00:27:07.27ID:zhGPfh96
ShowDialogで呼び出したフォーム内のTask処理の返り値をうまいこと取得できない?

ttp://ideone.com/faXVtV
0740デフォルトの名無しさん2014/09/14(日) 01:18:42.16ID:RihVVb48
>>739
適当だがこんな感じ?
ttp://ideone.com/zy1Tqt
0741デフォルトの名無しさん2014/09/14(日) 01:22:19.35ID:gCeTYvpe
ShowDialogってなんかインチキ臭い
0742デフォルトの名無しさん2014/09/14(日) 05:37:25.46ID:CmCIz2FW
Hide()した後にawaitすると、ShowDialog()が終わる
0743デフォルトの名無しさん2014/09/14(日) 14:27:20.81ID:Bz7JX47u
質問です。
Method([CallerMemberName] string name=null);
みたいな呼び出し元情報って言語仕様的にどう解釈すればいいんでしょうか?
デフォルト引数の仕様では呼び出しコードで実引数が省略されると
「メソッド宣言のデフォルト値を渡さなければならない」のだと思うんですよ。
何故nameにnull以外の値が入るのかわかりませぬ。
0744デフォルトの名無しさん2014/09/14(日) 14:50:14.40ID:VxA609sk
>>743
わかるわからないじゃなくて、そういう言語仕様に変わっただけ
くだらないことのために言語仕様を大きく弄りたくなかったんだろう
カスタム属性+デフォルト引数という形ならパーサーもメソッド解決ルールも弄らずにデフォルト値の変更だけで済むからな
0745デフォルトの名無しさん2014/09/14(日) 14:53:19.04ID:CNusFnO1
>>744
>そういう言語仕様に変わっただけ

そーすは?
0746デフォルトの名無しさん2014/09/14(日) 16:11:37.81ID:M8U8K9Br
VisualC#の仕様がC#の言語仕様に反しているのではないか
という質問だと思うのだが
属性が付いていると文法がねじ曲げられる糞コンパイラなんだろ
0747デフォルトの名無しさん2014/09/14(日) 16:28:11.15ID:hor4RBfn
寝言の前にC# Language Specification確認したほうが良いよ
0748デフォルトの名無しさん2014/09/14(日) 16:33:52.58ID:WYugIEYy
質問者の質問の意図がよく分からんけど、要するに

(1) CallerMemberName属性は引数の規定値をコンパイル時に呼び出し元の名前で上書きする
(2) 引数がオプション引数であることを表すには規定値が必要

というだけの話じゃないの?
規定値がただのプレースホルダーみたいになっちゃってるのは不恰好だけど...
0749デフォルトの名無しさん2014/09/14(日) 16:49:02.47ID:ga9p17hQ
>>746
1.0の頃からインターフェイスをnewできちゃうコンパイラでしたね
0750デフォルトの名無しさん2014/09/14(日) 16:55:26.56ID:xGAHyC6K
オプション引数に CallerMemberName 属性が付与されていると、
呼び出し側で引数を省略しているにも関わらず、既定値以外が入っているのが不思議なのかな?

もともと省略可能な引数の既定値は、コード上の宣言は呼び出される側で書くけど、
コンパイルすると既定値の実装は呼び出す側で実装されるようだから、
CallerMemberName などの Caller 系属性は、その仕組みに乗せただけなんじゃないのか?

オプション引数の既定値が、コンパイル後に呼び出し側に実装される様子は、
呼び出される側と呼び出し側のアセンブリを分けておくと体感できる
07517432014/09/14(日) 17:58:13.48ID:Bz7JX47u
>>750
わかりにくくてすみません。
>既定値の実装は呼び出す側で実装されるようだから
その呼び出す側で付け足す値に
宣言に書かれたデフォルト値以外が許されるものなのか
というのが疑問なのです。
0752デフォルトの名無しさん2014/09/14(日) 20:17:10.62ID:ga9p17hQ
むしろ何故許されないと思うのか
というかまず言語仕様確認しろ ちゃんと載ってるから
0753デフォルトの名無しさん2014/09/14(日) 20:25:49.98ID:op5p09uO
偉そうに命令口調で言ってる奴自身がそれをやってないんだから笑える。
それ、どう考えても「言語」仕様の問題じゃない。
馬鹿丸出しだな本当。
0754デフォルトの名無しさん2014/09/14(日) 20:35:25.66ID:hor4RBfn
いやこの件に関しては仕様に定義されてるからね?
0755デフォルトの名無しさん2014/09/14(日) 20:42:38.57ID:fu89zHcD
>既定値の実装は呼び出す側で実装される
規定値ってそんな扱いなの?
つまり呼び出し側で規定値を調べて自分でセットするの?
それをコンパイル時にやってるの?

そうすると
別アセンブリ呼び出してるとき、呼び出される側の規定値変えても
呼び出し元再コンパイルしないと古い規定値のままで呼び出されるって事?
0756デフォルトの名無しさん2014/09/14(日) 20:55:40.87ID:bvYu6VnA
実行環境がコンパイラを備えているという事はプログラムがプログラムを産んだり、自身を書き換えたり
0757デフォルトの名無しさん2014/09/14(日) 21:09:46.99ID:oiv3svus
(ここまで仕様の記述の提示無し)
0758デフォルトの名無しさん2014/09/14(日) 21:22:07.16ID:VxA609sk
わざわざ証拠を出すまでもないが言語仕様だ
http://www.microsoft.com/en-us/download/confirmation.aspx?id=7029
の17.4.4を参照
0759デフォルトの名無しさん2014/09/14(日) 21:26:15.55ID:ZQOJunIb
これか。
17.4.4.3 The CallerMemberName attribute
a string literal representing the name of that member is used as an argument to the invocation instead of the default parameter value.

>>755
呼び出し側で規定値を調べて自分でセットする(7.5.1.2)
0760デフォルトの名無しさん2014/09/14(日) 21:26:26.66ID:ObKRQoSj
>>755
そうなんであまり使わないようにしよう
enumもだな
0761デフォルトの名無しさん2014/09/14(日) 21:34:20.37ID:VxA609sk
enumは値に意味を持たせるもんじゃないから、定数であることを理解して使う分には問題になることはない
0762デフォルトの名無しさん2014/09/14(日) 21:45:15.46ID:hor4RBfn
そもそもアセンブリのみ配布して参照するような用途を想定しているのか、とか聞くと
循環参照おじさんが湧くから止めよう
0763デフォルトの名無しさん2014/09/14(日) 21:45:45.07ID:gCeTYvpe
規定値はnullでしょ
構造体もnullableで受けたらいい
0764デフォルトの名無しさん2014/09/14(日) 21:47:16.25ID:s+BV7Cb9
いやそこは week pointer おじさんの方が怖い
0765デフォルトの名無しさん2014/09/15(月) 05:13:00.61ID:WqDLDQj3
なんでShowDialogさんすぐ死んでしまうん...
0766デフォルトの名無しさん2014/09/15(月) 22:01:59.00ID:dSjuL/FS
くだらない質問で申し訳ないのですが、
webbrowserのメソッドで、navigateは使えるんですが、
navigatetostreamやnavigatetostringが使えません。
どうしたら使えるようになるのでしょうか?
0767デフォルトの名無しさん2014/09/15(月) 22:24:07.92ID:4G6KibiI
>>766
祈れ
0768デフォルトの名無しさん2014/09/15(月) 22:30:09.86ID:dSjuL/FS
わかりました
0769デフォルトの名無しさん2014/09/16(火) 01:30:02.62ID:zOHXRsLm
.NET開発者って祈ってばかりで全然働かないよね
0770デフォルトの名無しさん2014/09/16(火) 02:43:19.56ID:2LiLAqxL
LINQ 使ってると、ときどき型宣言だけで長くなることない?
クラスを作るのも結合度あげることになりかねないし
typedef 復活してくれないかな
0771デフォルトの名無しさん2014/09/16(火) 02:46:36.50ID:klLrpZrV
つ型推論
0772デフォルトの名無しさん2014/09/16(火) 05:24:05.52ID:S9t8Wiut
>>771
(相手しちゃダメ)
0773デフォルトの名無しさん2014/09/16(火) 06:51:55.02ID:FT1RYq8r
【VB.NET】LINQ友の会【C#, C♯, C#】
http://peace.2ch.net/test/read.cgi/tech/1202568694/
0774anonymous2014/09/17(水) 14:56:32.41ID:8wy7jTEr
Linq を使った結果が、query.ToArray()
に入っています。

dataGridView1.DataSource = query.ToArray();

として、dataGridViewSorce に表示しています。

dataGridViewのデータ・ソースは、dataTable を取ることも
できることは知っています。

このquery.ToArray()を dataTableに入れる事はできないでしょうか?

できるだけ、簡単で早い処理で行いたいです
0775デフォルトの名無しさん2014/09/17(水) 15:00:13.40ID:d7KYS/p9
ToArray じゃなくて CopyToDataTable でいいんじゃ?
0776anonymous2014/09/17(水) 16:53:00.10ID:8wy7jTEr
>>775
thanks.
CopyToDataTable について調べて、下記にもあるように、
ttp://stackoverflow.com/questions/16948665/copytodatatable-method


DataTable table = query.CopyToDataTable();

としたけど、CopyToDataTable() が選べない状態です。
query. で検索しても、メニューの中に、CopyToDataTableはありませんでした。

VC#2010です。
0777デフォルトの名無しさん2014/09/17(水) 16:59:56.87ID:sIgujKHq
型ぐらい合わせられないのかよ
0778デフォルトの名無しさん2014/09/17(水) 17:09:03.46ID:d7KYS/p9
IEnumerable<DataRow> じゃないなら
http://msdn.microsoft.com/ja-jp/library/bb669096.aspx
これか、、、元がどうなってるのかわからんとなんとも
0779anonymous2014/09/17(水) 17:18:29.59ID:8wy7jTEr
>>777,778
thanks

XElement root = XElement.Load(@"C:\a.xml");
var query = from SAMPLE in root.Descendants("ACCESS")
select new
{
aaaa = (string)SAMPLE.Element("DTTM").Value,
bbb = (string)SAMPLE.Element("TYPE").Value,
};
となっております。
型を合わせるの意味が勉強不足で理解できておりません。
もう少しヒントを頂けないでしょうか?
0780anonymous2014/09/17(水) 17:28:52.34ID:8wy7jTEr
いろいろ調べてみましたが、
ttp://stackoverflow.com/questions/1595350/why-am-i-not-getting-copytodatatable-in-linq-query
これ見ると、CopyToDataTable() is only available on IEnumerable<T> where T is or derives from DataRow.
CopyToDataTable() は、DataRowから引き出されたIEnumerble<T>からしか有効ではない
このいみもよくわからないのですが、だからどうすればいいのでしょうか?
0781anonymous2014/09/17(水) 17:36:26.17ID:8wy7jTEr
>>778

つまり、これを実装すれば、いけるかも?ってところでしょうか
でも実装の仕方がよくわかりません。
他に、query の結果から datatableを作成する方法は無いでしょうか?
0782デフォルトの名無しさん2014/09/17(水) 18:39:44.57ID:Bov+mNdP
778が分からないなら、
素直にnew DataTableしてColumns.AddしてRows.Addしていけばいいよ
0783anonymous2014/09/17(水) 18:51:46.16ID:8wy7jTEr
>>782
>>素直にnew DataTableしてColumns.AddしてRows.Addしていけばいいよ
ありがとうございます。いままで、コピペでなんとかやってきたので、l
実は、Columns.AddしてRows.Add を書くのも大変そうなのですが、できそうですね。query.ToArray からどうやって、要素を取り出すかから、調べてやってみます
0784anonymous2014/09/17(水) 19:36:26.08ID:8wy7jTEr
foreach (var p in query.ToArray()) Console.Write("{0}\n", p);
として、query の中から、要素を取り出したいのですが、

インデックスが範囲を超えています。負でない値で、コレクションのサイズよりも小さくなければなりません。
パラメータ名:index

と出てしまいます。
やりたいことは、queryからdataTable を作成したく、Columns.Add するために要素を取り出したいです
ちなみに、同じ所で、dataGridView1.DataSource = query.ToArray(); はOK!です
0785デフォルトの名無しさん2014/09/17(水) 19:40:34.54ID:fve3dke2
いやいや、そんな汚ねえ自力実装はやめとけ
必死こいて778を理解しろ
時間なくて切羽詰ってるなら別だが
0786デフォルトの名無しさん2014/09/17(水) 19:43:56.28ID:fve3dke2
うーん、程遠いなw
DataTableにするの諦めたら?
0787デフォルトの名無しさん2014/09/17(水) 21:48:12.17ID:q0kO1DWi
そもそもなぜDataTableにしたいのか
0788デフォルトの名無しさん2014/09/17(水) 22:26:14.32ID:Q9nG2mjz
憧れ
0789anonymous2014/09/17(水) 22:58:41.42ID:yJJR1TY2
理由は、結果をdatatable で、渡す必要があります。
ttp://qiita.com/RyotaMurohoshi/items/ecda8257178ba39867eb
今回私が使ったlinq のクエリは、>>779の通りで、これが匿名型とのことです。
とりあえず、要素を取り出したいのですが、恐らくindex のエラーではないか
と考えました ttp://qiita.com/RyotaMurohoshi/items/ecda8257178ba39867e
b
foreach に絡めてまわすとき、うまくindex を入れてやれば良さそうなのです
が、いまいちわかりません。

》このような場合バグはForeach文を使えば防げますが、ここではindexが必要で
》す。ここでSelectのインデックスも使うオーバーロードが役に立ちます。また、
》匿名型も使います。(匿名型はめちゃくちゃ便利でLINQで活躍する場面が多い
》です。以前、C#の匿名型について調べてみたという投稿をしたので興味がある
》方は見てください。)
》
》foreach(var element in boys.Select((name, index) => new {name, index})
》) {
》 SampleMethod(element.name, element.index);
》}
》このようにSelectで匿名型(ここではstring型のnameとint型のindexというプ
》ロパティを持つ匿名型)に射影して、それをforeach文で回せば、SampleMethod
》を呼び出すことが可能です。
0790デフォルトの名無しさん2014/09/17(水) 23:09:30.07ID:yXdqptHs
凄まじく読みにくいんだけど
諦めて原始的なやり方でやったら?

var dt = new DataTable();
dt.Columns.Add("AAA", typeof(string));
dt.Columns.Add("BBB", typeof(string));

var dr = dt.NewRow();
dr["AAA"] = "hoge";
dr["BBB"] = "fuga";
dt.Rows.Add(dr);

dt.AcceptChanges(); // 必要なら

まあ型付きにした方が良いかな
0791デフォルトの名無しさん2014/09/17(水) 23:18:06.67ID:Edj0zk+3
>>790 に賛成、現状ではいちばん近道っぽい

"AAA" "BBB" のような型の中身がわからないなら、
>>778 のように一部 GetProperties() などを使えば、
カラム名と型も取れる
0792anonymous2014/09/18(木) 00:08:13.49ID:einFkX4J
>>790
>>791
Thanks
0793anonymous2014/09/18(木) 01:14:18.33ID:einFkX4J
>>785
Rowに直接ベタでやる方法もつまずき、
必死になって、MSのサイトに関して海外のサイトみて、ようやく解決しました。
query がAnonymousなのに、query. とすると、CopyToDataTableとでてきました。

やったことは、海外のサイトのモジュールを貼り付けただけです。
ほとんど理解していないけど、コピペでなんとかなるC#凄い!
0794デフォルトの名無しさん2014/09/18(木) 01:40:12.03ID:CJXNo/YK
C#やってるんですけど、いろいろあってwindows使えなくなったので
ubuntuでC#を使いたいんですけど、.Net Framework4.5使えるような開発環境ってないですか?

スレちだったらすみません
0795デフォルトの名無しさん2014/09/18(木) 05:58:44.24ID:i+RFBiSC
Mono
0796デフォルトの名無しさん2014/09/18(木) 08:20:35.49ID:eazEolrW
ざまりんもあるぜよ
0797デフォルトの名無しさん2014/09/18(木) 09:16:47.57ID:7eeU4PcQ
>>794
じぶんはXPで4.5が動作しないのでMONOが動くか試してみる。
0798デフォルトの名無しさん2014/09/18(木) 14:07:40.62ID:cNu5b3I5
Windowsが使えなくなるってどういう事情よ
0799デフォルトの名無しさん2014/09/18(木) 14:25:03.89ID:vb0rMY2V
あえて好意的に考えてやると、XPマシン使ってたけど新しいの買う金が無いからubuntu入れたとか
0800デフォルトの名無しさん2014/09/18(木) 16:01:02.58ID:lsy6YbFy
漏れはまだXP現役
0801デフォルトの名無しさん2014/09/18(木) 18:23:30.20ID:DZNiwbgJ
ネットに接続しないのならXPでも大丈夫だろう。
機材更新の経費ケチってLinuxにしても余計に経費が掛かる事があるって気が付いてないお偉いさんって結構多いよな。
0802デフォルトの名無しさん2014/09/18(木) 18:30:26.86ID:+RCIR0sT
XP に VM 入れて Linux で良い
08037942014/09/18(木) 23:25:13.71ID:CJXNo/YK
>>799 それです
Monoだと
System.Net.Http;がエラーになるんですが
どうしたらいいのでしょうか
0804デフォルトの名無しさん2014/09/19(金) 00:19:40.78ID:7/VKQkFn
>>803
働いて金貯めろよ...
0805デフォルトの名無しさん2014/09/19(金) 00:40:08.36ID:OKwVWCiL
C#にはJBossに相当するものはありますか?
移植が現実的に可能か調査してるんですが
0806デフォルトの名無しさん2014/09/19(金) 06:37:03.76ID:xonljUnN
>>805
そもそもJavaではなんでそんなものが必要なのかを考えよう。
Javaは周辺技術が極めてカオスであり、導入や運用が困難になっている。
だからオールインワンの製品があれば便利というわけ。
.NETの場合、もともとVSと.NETを入れたら一式揃う。
ASP.NET(MVC)やWCFなど、Javaの標準ライブラリに比べてAPIも高レベルだ。
もちろん欠けている機能もあるので、何が不足しているのかを調査して「あくまで.NETの標準機能ベースで」
不足しているものを提供すればニーズはあるかもね。
0807デフォルトの名無しさん2014/09/19(金) 09:10:23.65ID:mmV6v+yA
>>806
ま、ぶっちゃけ、Eclipseだなんだ言っても

どこまでいってもJava。おまけにOracleに飼い殺し。あの会社に
開発環境だの言語だの無理。

徐々にサーバーでも使われなくなり始めてる
0808デフォルトの名無しさん2014/09/19(金) 09:36:27.15ID:bmV+6U9F
>>807
そうなんだ
サーバでは何が流行り始めてる?
0809デフォルトの名無しさん2014/09/19(金) 10:03:39.74ID:FK+N+0Q2
>>808
Node.jsとかRoRじゃね。
大企業の基幹はJavaとかaspxが多いけど
0810デフォルトの名無しさん2014/09/19(金) 20:06:08.52ID:y7NXgNW0
>>806
JBossの代用にはならんだろ。
あれフレームワークというより複数のソケットサーバー(サービス)を内包したりクラスタリング組めたり
WindowsならOSの機能でやるようなのまで持ってるし一種のOSだろ。
0811デフォルトの名無しさん2014/09/19(金) 23:18:10.32ID:2IMRiDT9
>>803
Windows 7で使ってるが普通に使えてる
エラーってのはコンパイルエラー?
参照するアセンブリとして指定してる?
0812デフォルトの名無しさん2014/09/20(土) 08:16:53.99ID:h2zgrmBy
WINDOWS7にてPC名を変更するには?

http://know-how-tree.com/archives/719
0813デフォルトの名無しさん2014/09/20(土) 08:43:59.23ID:p579UTgt
>>812
それは変更じゃなくてアカウント作り直しだよ
せっかくダミーアカウント作る手順でやってるんだから
ちゃんと変更するにはUSER_Aを削除する前に
USER_Bを作ってプロファイルの移動をするのが正しい手順
0814デフォルトの名無しさん2014/09/20(土) 08:47:24.74ID:3vSsVPxw
インストールパッケージ化について、お薦めありますか?
C#2010Express使っているんだけどとりあえず、EXEのインストーラーは作成出来ますよね
もう少し、スマートなmsi形式とかで、インストールパッケージ作りたいのだけど、
お薦めありますか
Professional バージョンだと作れるとか?
0815デフォルトの名無しさん2014/09/20(土) 09:15:30.09ID:i7TP0ilO
>>814
2013使え
0816デフォルトの名無しさん2014/09/20(土) 13:46:31.14ID:imyVY37b
>>815
馬鹿だろお前。
命令口調君って馬鹿だな、まで読んだ。
0817デフォルトの名無しさん2014/09/20(土) 13:48:01.39ID:zD8dbrJE
>>815
答えになってなくね?
0818デフォルトの名無しさん2014/09/20(土) 14:19:24.33ID:mVPfJUJ8
君って馬鹿だな、ってよく見かけるなと思った。
相談室とふらっとの過去ログ見ると2008年から常駐なのね。
0819デフォルトの名無しさん2014/09/20(土) 14:20:16.50ID:bHzmxQLg
>>814
Professional なら簡単なものなら作れる。普通はそれで十分。
フリーなのなら使ったことないけどInnoSetupをよく聞く。
0820デフォルトの名無しさん2014/09/20(土) 14:22:53.75ID:mVPfJUJ8
ClickOnceは昔キレた奴がいたので可能でもやめてください
一般ユーザー権限でそういうの勝手にインストールされると困るとか何とか
0821デフォルトの名無しさん2014/09/20(土) 14:34:43.66ID:RJVjybNh
セットアップはNSISかな
VS謹製よりいい
0822デフォルトの名無しさん2014/09/20(土) 14:37:49.75ID:imyVY37b
>mVPfJUJ8
こういう馬鹿ってテメエのこと気色悪いと思わないんだろうか。
っていうか、言い負かされてキレたのはたぶんこの馬鹿の方だろうね。
だから過去のことをいつまでもネチネチ恨んで掘り返す。
語るに落ちてる。

自分が見えてないこと、福田康夫並み。
0823デフォルトの名無しさん2014/09/20(土) 14:40:17.34ID:bHzmxQLg
VSインストーラー、何で2012からなくなっちゃったんだろ。簡単で便利だったんだけどな。
単体テストもテストの作成が無くなってたり、微妙に退化してるのは何故だろう。
0824デフォルトの名無しさん2014/09/20(土) 14:51:35.11ID:GbFNl7YA
MS製品はリニューアルするたびに
かならずどこかを退化させてる
0825デフォルトの名無しさん2014/09/20(土) 15:06:20.19ID:j5IvbYO8
InnoSetup NSIS なるほど、いろいろありますね。使い方もVisualStudio
に比べると、難しそうだけど、調べてやってみます
0826デフォルトの名無しさん2014/09/20(土) 15:09:12.54ID:imyVY37b
>>823
2013では一応復活したでしょ。
http://blogs.msdn.com/b/visualstudio/archive/2014/04/17/visual-studio-installer-projects-extension.aspx
0827デフォルトの名無しさん2014/09/20(土) 15:15:32.01ID:GbFNl7YA
exeコピーで済むので
インストーラーは要らない
0828デフォルトの名無しさん2014/09/20(土) 15:21:52.61ID:zD8dbrJE
>>827
キミはいらないだろうが、
無いとインストール出来ない人たちもいるんだよ
0829デフォルトの名無しさん2014/09/20(土) 15:51:18.78ID:bHzmxQLg
>>826
プラグインで復活してたのか。
知らなかった。ありがとう。
0830デフォルトの名無しさん2014/09/20(土) 16:58:24.50ID:TRP3aVht
マウスカーソルを使わずに画面の指定座標を
クリックしたのと同じ効果を得るにはどうしたらいいですか?
0831デフォルトの名無しさん2014/09/20(土) 17:15:38.70ID:AddSfJ/q
WiX使っているのは俺ぐらい?
0832デフォルトの名無しさん2014/09/20(土) 17:23:26.73ID:vycWo1zT
WiXは設定が訳分からんレベルって聞くけどどうよ
0833デフォルトの名無しさん2014/09/20(土) 17:27:43.95ID:WqPEDqAv
>>830
座標下にあるWindowのHandleへPostMessageじゃないかな
0834デフォルトの名無しさん2014/09/20(土) 18:34:57.11ID:bk+1k56b
boo の質問なんですけど、いいですかね?

booで既存DLLのimportが
--
import somedll
--
みたいにできると思うんですが、この時のdllのサーチパスってどうやって設定すればいいんでしょうか?
booi で実行することを想定しています。
booi にはオプションがないみたいなので、環境変数なのかmono側の設定なのか。。。
PATH、LD_LIBRARY_PATHにDLLがあるディレクトリを指定するというのは試したのですが、効果なしでした。
下記環境などです。

% mono --version
Mono JIT compiler version 3.2.8 (Debian 3.2.8+dfsg-4ubuntu1)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
TLS: __thread
SIGSEGV: altstack
Notifications: epoll
Architecture: amd64
Disabled: none
Misc: softdebug
LLVM: supported, not enabled.
GC: sgen
% uname -a
Linux nkmbp1 3.13.0-35-generic #62-Ubuntu SMP Fri Aug 15 01:58:42 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
0835デフォルトの名無しさん2014/09/20(土) 18:38:44.54ID:BY0bZ8RB
booスレでやれよ
0836デフォルトの名無しさん2014/09/20(土) 19:16:00.62ID:Qp73O3uJ
キャサリンちゃんに一票よろしくお願いします!
このスレの住人なら楽勝で解けるよね?
https://codeiq.jp/wp/vote/
0837デフォルトの名無しさん2014/09/20(土) 20:10:01.64ID:AddSfJ/q
>>832
所詮インストーラーだからネットの情報でなんとかなるレベル
GUIのエディターもあるしね
0838デフォルトの名無しさん2014/09/21(日) 04:11:16.65ID:hzBq2+VL
>>822
冗談がうまいね
さすがに6年も痴呆老人みたいな真似してる奴には敵わないよw

あと、こそこそせずにアンカーはキチンと打てよ
年寄りだから指でも震えたか?
0839デフォルトの名無しさん2014/09/21(日) 09:35:18.27ID:bd2ZhPkS
>>838
カワウソ海胆
0840デフォルトの名無しさん2014/09/21(日) 09:50:24.35ID:TDjHt+G+
よそでやれキチガイども
0841デフォルトの名無しさん2014/09/24(水) 22:56:45.47ID:VAzlx+/X
Datagridviewで、行を移動して、カーソルの移動元ではなく、移動先のセルの値を取得したい。
下記の例だと、カーソルの移動元の値を引っ張ってくるんだけど、移動先
のセルの値を取得するいい方法ないでしょうか?


private void dataGridView1_RowEnter(object sender, DataGridViewCellEventArgs e)
{
MessageBox.Show(dataGridView1.CurrentRow.Cells[1].Value.ToString());
0842デフォルトの名無しさん2014/09/24(水) 23:26:33.59ID:1YUdVhW7
eに入ってね?
0843デフォルトの名無しさん2014/09/25(木) 08:52:56.30ID:Zjy5adUK
>>842
eの中身リストをどうやってみたらいいですか?
0844デフォルトの名無しさん2014/09/25(木) 09:44:25.94ID:PQH/RCDK
Don't look.
Feeeeeeeeeel !!
0845デフォルトの名無しさん2014/09/25(木) 18:29:17.26ID:FxDbhKqU
eはDataGridViewCellEventArgs型だから
DataGridViewCellEventArgsのヘルプ読むといい
0846デフォルトの名無しさん2014/09/25(木) 19:56:34.17ID:HwpZrCil
まさにふらっとスレ向けだなぁ
0847デフォルトの名無しさん2014/09/26(金) 14:39:59.15ID:HCHLkM4n
例えば下のように作った場合
Test2から帰ってきた後のConsole.Writeで"Count=2"が出力されて
DataListは"TestData1"と"TestData2"が入ってる状態になるってことで間違いないですよね?

private void Test1() {
 var DataList = new List<string>();
 DataList.Add("TestData1");
 Test2(DataList);
 Console.Write(string.Format("Count={0}", DataList.Count));
}

private void Test2(List<string> Arg) {
 Arg.Add("TestData2");
}
0848デフォルトの名無しさん2014/09/26(金) 16:18:40.10ID:2Rrqxh+D
ちょいご相談
asp.netレン鯖でファイル書き出しするんだけど、排他制御どうしたらいい?
信頼レベルがMediumだから名前付きMutexが使えない
ファイルオープン時にShare.Noneすると待機せずにソッコーで例外来る
Sleepしてリトライくらいしか手がないのだろうか
0849デフォルトの名無しさん2014/09/26(金) 18:12:56.56ID:0C5jJAcT
>>847
そうだけど、実行してみればいいじゃないの
0850デフォルトの名無しさん2014/09/27(土) 09:56:46.70ID:KE8XqyCz
だれかジオメトリシェーダー部分を書いて下さい
http://monobook.org/wiki/SL_Sharp
0851デフォルトの名無しさん2014/09/27(土) 15:11:37.47ID:Q7f9fSd6
>>849
立っている者は親でも使えっていうじゃん
0852デフォルトの名無しさん2014/09/27(土) 15:15:33.51ID:AcQC/hdr
http://hissi.org/read.php/tech/20140927/MFRhdVpVdmo.html
0853デフォルトの名無しさん2014/09/27(土) 15:21:40.92ID:Q7f9fSd6
素性の知れないドメインだ
0854デフォルトの名無しさん2014/09/27(土) 18:21:14.72ID:1N5NQFWN
SharpDevelopでC#でコンソールアプリを作り、その標準入出力を複数パターンでテストしたいんですが
何か効率よくできる方法はないでしょうか?

決まった標準入力をテキストに書いておいて、標準入力にリダイレクトさせて実行することすらうまくできていません
プロジェクトのプロパティを開き、デバッグタブのコマンドライン引数に”< input”と書いて
作業ディレクトリにinputというファイルを置いておけば読み込んでくれるかと思ったのですが
読み込んでくれず、普通にキーボードからの入力待ちになります
効率の前にまずは単純なリダイレクト方法でもよいので知りたいです
0855デフォルトの名無しさん2014/09/27(土) 18:54:22.21ID:VDtF7fTw
別に引数に文字列入れて実行すればいいじゃん
0856デフォルトの名無しさん2014/09/27(土) 20:26:06.12ID:AcQC/hdr
SharpDevelop越しじゃなくて
シェルスクリプトあたりで対処したほうが楽そうに思える
0857デフォルトの名無しさん2014/09/28(日) 15:55:14.87ID:G9FaIjmz
なぜ、IsNullOrEmptyは
var s = ""
s.IsNullOrEmpty()のようなオブジェクトベースでなく
String.IsNullOrEmpty(s)という関数ベースなのでしょうか?
0858デフォルトの名無しさん2014/09/28(日) 16:06:40.64ID:5j7N5TLg
sがnullのときどうすんだよ
IsNullOrEmptyが用意されたときは拡張メソッド無かったし
0859デフォルトの名無しさん2014/09/28(日) 16:08:11.98ID:J5abx0zT
関数ベースってスタティックメソッドのこと?
nullだったらIsNullOrEmptyメソッドがないからだろう。
0860デフォルトの名無しさん2014/09/28(日) 16:11:15.02ID:G9FaIjmz
拡張メソッドがない昔はともかく今は拡張メソッドで
s.IsNullOrEmpty()でいけるじゃないですか。
なぜ、標準じゃないんです?
0861デフォルトの名無しさん2014/09/28(日) 16:24:19.00ID:l6LuFsPY
知らねーよ。MicroSoftに聞けっての。
0862デフォルトの名無しさん2014/09/28(日) 16:24:46.45ID:yX+9d7PK
s が null なら、null.IsNullOrEmpty() となって null exception になるからでそ。
まあ ruby とかだと nil.nil? とかあるから、その感覚で言ってるんなら分からなくもないけど。
0863デフォルトの名無しさん2014/09/28(日) 16:25:45.07ID:2nzg73P2
聞く前に、これで済むものをなんで今拡張メソッドで用意しなければならないのか教えてくれよ
public static bool IsNullOrEmpty(String value) {
return (value == null || value.Length == 0);
}
0864デフォルトの名無しさん2014/09/28(日) 16:38:39.83ID:G9FaIjmz
>>863
string.isnullorempty(s)
s.isnullorempty()

全然時間が違うじゃん
設計的にもオブジェクト指向なんだから
極力関数使いたくないじゃん。
0865デフォルトの名無しさん2014/09/28(日) 16:43:21.21ID:G9FaIjmz
>>863
で、それ書くならこれ書くならこれも書いて置けよって話じゃないですか?
public static bool IsNullOrEmpty(this String value) {
return (value == null || value.Length == 0);
}
0866デフォルトの名無しさん2014/09/28(日) 16:44:11.59ID:J5abx0zT
null が空文字列かを調べる必要がどこにあるんだよ
文字列の1形態じゃないんだよ、nullは
0867デフォルトの名無しさん2014/09/28(日) 16:59:03.81ID:G9FaIjmz
??
いつnullが空文字か?なんて意味不明なコードは提示したんでしょうか?
0868デフォルトの名無しさん2014/09/28(日) 17:05:21.32ID:PQY0m1AR
IsNullOrEmptyはDB(SQL Server)から返ってきた値が””なのかNULLなのか”NULL”なのかわからない場合に”NULL”は判定できないからだろ
0869デフォルトの名無しさん2014/09/28(日) 17:26:10.20ID:XvTEDtHL
ちょっと何を言いたいのか意味が分からないレベル
0870デフォルトの名無しさん2014/09/28(日) 17:33:28.58ID:myz6PGz2
SQLServer使いにはこれがわかるの?
0871デフォルトの名無しさん2014/09/28(日) 17:33:44.81ID:G9FaIjmz
オブジェクト指向なのに
なぜこのようなメソッドを用意されていないのでしょうか?
実現する仕組みがあるにも関わらず、
用意されていないのはなにか弊害があるためですか?

string s = null;
s.IsNullOrEmpty()
0872デフォルトの名無しさん2014/09/28(日) 17:35:18.50ID:J5abx0zT
nullはstringじゃないからだって言ってるだろ
0873デフォルトの名無しさん2014/09/28(日) 17:38:48.26ID:XvTEDtHL
拡張メソッドは値じゃなくて式に対して作用するんだからnull云々はナンセンス
0874デフォルトの名無しさん2014/09/28(日) 17:42:33.35ID:ihbatZ6r
保守性の問題だよ
nullに対してメソッド呼び出し(に見える)なんて事が許されたらソースを速読する際にかなりのタイムロスが発生する
0875デフォルトの名無しさん2014/09/28(日) 17:43:37.07ID:DjhEOhLj
拡張メソッドってLINQ用のクエリ演算子以外にも標準(?)でついてるのってあるの?
もし拡張メソッドが大量にあるソースコードもらっても読むの辛そう

MSDNでも↓って言ってるし
ttp://msdn.microsoft.com/ja-jp/library/bb383977.aspx
>拡張メソッドは、一般的に、必要な場合に限り注意して実装することをお勧めします。
>クライアント コードで既存の型を拡張する必要がある場合、可能であれば既存の型から派生した新しい型を作成することで行ってください。
0876デフォルトの名無しさん2014/09/28(日) 17:49:44.65ID:DjhEOhLj
>>871
オブジェクト指向なのに
ってのはどういう意味?

C#は関数型言語だからあるべきってならわかるけど
別にIsNullOrEmptyはオブジェクトの振舞じゃなくただのチェック関数だし関係なくないか
0877デフォルトの名無しさん2014/09/28(日) 18:17:52.09ID:G9FaIjmz
う〜ん、よくわからん。
s.IsNullOrEmptyがなくて
String.IsNullOrEmptyがある。
s.Splitがあって
String.Splitがない理由の切り分けは?
0878デフォルトの名無しさん2014/09/28(日) 18:20:46.58ID:5j7N5TLg
だいたい874だろ
標準の拡張メソッドでnullに対する呼び出しをフォローしてるのあったっけ?
0879デフォルトの名無しさん2014/09/28(日) 18:22:52.56ID:pAfSMvLV
馬鹿を相手にすんなよ
Connectで作者に聞いてこいで済む話だ
0880デフォルトの名無しさん2014/09/28(日) 18:24:00.26ID:wJGww22G
s.IsNullOrEmpty →ヌルか空文字列かをsに訊いてみる→おかしい
String.IsNullOrEmpty →ある文字列がヌルか空文字列かをStringクラスに訊いてみる
s.Split →s自身の分割をsに要求する
String.Split →ある文字列の分割をStringクラスに要求する→おかしくはない
0881デフォルトの名無しさん2014/09/28(日) 19:08:57.38ID:lwUZotcA
>>870
SQL-Server 使いだけど、さっぱりわからん
0882デフォルトの名無しさん2014/09/28(日) 19:12:37.52ID:fsbcfLQr
なんか今日はやたら煽る馬鹿が多いけど、オブジェクト指向的におかしいなんて言うのなら
そういうおかしいことを可能にする拡張メソッドそのものを否定しなきゃならなくなる。

もうそんな教条的にオブジェクト指向を振りかざす時代じゃないと思うけど...
C#では現にそれが可能なんだし、それほど不自然とも直感に反するとも思えんが。
0883デフォルトの名無しさん2014/09/28(日) 19:16:31.60ID:RjyOyRBi
nullの問題はC#5.0でほぼ解決だろ
どうでもいいよ
0884デフォルトの名無しさん2014/09/28(日) 19:17:49.08ID:XvTEDtHL
Roslynが正式にローンチされれば全部勝手に改造しろで済ませられるのに
0885デフォルトの名無しさん2014/09/28(日) 19:17:57.96ID:G9FaIjmz
s=null
s.IsNullOrEmpty →ヌルか空文字列かをnullに訊いてみる
s.Split →null自身の分割をnullに要求する//nullだから当然できない

s= "s"
s.IsNullOrEmpty →ヌルか空文字列かを"s"に訊いてみる
s.Split →"s"自身の分割を"s"に要求する

別に不自然を感じないのですが、
おかしいってことですねありがとうございます。
0886デフォルトの名無しさん2014/09/28(日) 19:20:08.05ID:RjyOyRBi
まあ俺はs.IsNullOrEmptyをnullに対して実行して
例外じゃなくtrueが返ってきたら
絶頂射精するくらい嬉しいけどね
0887デフォルトの名無しさん2014/09/28(日) 19:24:50.29ID:4VbBw7JL
nullはStringでもないしIntでもない宛先不明みたいなもんなんだがら
答えが却ってきたらおかしいわけよ

それよかDBNullとnullを言語側で統一してほしかったわ
0888デフォルトの名無しさん2014/09/28(日) 19:27:17.51ID:PQY0m1AR
SQL Server使いってなんだよw
SQL ServerはOracleと違って空白文字列とNULLは別の値として返ってくるんだよ
あとデータにNULLを入れる奴もいるからそれぞれ比較しないといけないだろ
これがわかんないって意味がわかんないよ逆に
0889デフォルトの名無しさん2014/09/28(日) 19:30:36.72ID:XvTEDtHL
あんた以外誰も"NULL"の検出なんて話題にもしてないからだよ
0890デフォルトの名無しさん2014/09/28(日) 19:42:09.68ID:yX+9d7PK
「null かどうかを null 自身に聞いてみる」ってのは null という存在があるから出来ることなんだよね。
C# の場合は null って言うオブジェクトが存在しないから聞くことが出来ないだけなんだけど。
null って名前の人が部屋の中にいれば答えは返ってくるけど、「誰もいない」なら答えは返ってこない。

null はオブジェクトが存在しないことを明示的に示す記号ってイメージでいいんだっけ。
0891デフォルトの名無しさん2014/09/28(日) 19:47:47.28ID:RjyOyRBi
そんなの解釈次第だろ
既にnullに対する問い合わせは拡張メソッドにより可能になったと考えてもいいし
nullが「呼び出したら絶対に例外が返るもの」でなければならない必然性もない
C#のeventはnullに対する加算を行ってるし
nullに対する問い合わせができたほうが利便性は上がる
0892デフォルトの名無しさん2014/09/28(日) 20:11:18.07ID:ASVuT7pT
つまりC#は欠陥言語なのである。
0893デフォルトの名無しさん2014/09/28(日) 20:13:40.32ID:rHIfrvPm
でもJavaよりはマシだよなぁ・・・
下と比べても仕方ないけど。
0894デフォルトの名無しさん2014/09/28(日) 20:21:15.08ID:pAfSMvLV
Javaはお経ですよ
唱えること書くことが修行だから
0895デフォルトの名無しさん2014/09/28(日) 21:20:03.10ID:zX0vIkGp
>>891
イベントの+=はイベントハンドラ(デリゲートオブジェクト)に対してじゃなくて
イベントを持ってるオブジェクトに対してのメソッド呼び出しだぞ
プロパティの=と同類
0896デフォルトの名無しさん2014/09/28(日) 21:24:33.16ID:yX+9d7PK
それに、
>拡張メソッドにより可能になったと考えてもいい
あくまで「拡張」で「考えてもいい」って程度のシロモノなんだよね。
0897デフォルトの名無しさん2014/09/28(日) 21:32:39.93ID:zX0vIkGp
オブジェクト指向というより静的型としてはnullは不完全な部分と言えないこともない
nullを「メンバを持たない型」と考えればnullがどんな型にも入れられるというのは型安全性を壊してるわけだからな
0898デフォルトの名無しさん2014/09/28(日) 21:33:55.74ID:rJB8wEzT
>>892
つまり最強の言語はなんですか?
0899デフォルトの名無しさん2014/09/28(日) 21:34:36.79ID:RX8cnd8s
nullと(string)nullをすり替えられても
0900デフォルトの名無しさん2014/09/28(日) 21:54:03.37ID:jS7fCZE8
こんなどうでもいい事で結構伸びるんだな…
お前らは能力あるのかバカなのかよくわからん
0901デフォルトの名無しさん2014/09/28(日) 22:00:51.70ID:lwUZotcA
>>897
> nullを「メンバを持たない型」と考えれば

そんなアホな発想でいちゃもんつけられても...
0902デフォルトの名無しさん2014/09/28(日) 22:14:43.50ID:1DAlNS/O
>>865
自分でこのメソッド用意すればいいじゃん
不足だと感じたら自分で補うしかない

IEnumerable<T>.IsNullOrEmpty()でもいいぞ
0903デフォルトの名無しさん2014/09/28(日) 23:02:19.13ID:G9FaIjmz
>>899
s.IsNullEmptyを使って
すり替えられても困る場面はあるんですか?
0904デフォルトの名無しさん2014/09/29(月) 07:03:20.08ID:o7UTHZS8
nullとと評価されるstring型の式の話なのにnullキーワードの意味論でイミフなことを喋ってる人がいるだけだと思う
0905デフォルトの名無しさん2014/09/29(月) 07:34:03.65ID:wd4qvqdb
あれだろう、文字列比較に単純な等号を使うな、というのと同じような無意味論なんだろう?
0906デフォルトの名無しさん2014/09/29(月) 10:58:51.27ID:Mw2nXNtn
自分だけのアプリ作ってるんだけどUIをいじる際にFormにボタンとかベタ張りから
タブコントロールの中へ移動する際にイベント関連がクリアされるんだけど
イベント再設定しないで昔のまま移動することはできるのかな?
0907デフォルトの名無しさん2014/09/29(月) 11:24:40.20ID:eJcQvFYL
>>906
それは「移動」じゃなくてカット&ペーストしてるからじゃないの?

ドラッグ&ドロップかドキュメントアウトラインを使って移動すればそんな問題は
発生しない。
0908デフォルトの名無しさん2014/09/29(月) 11:49:28.54ID:Mw2nXNtn
>>907
あ・・・まさにカットアンドペーストしてました・・・
ありがとうございます
0909デフォルトの名無しさん2014/09/29(月) 14:26:43.85ID:AG+JzUTr
D&Dしゅごい
0910デフォルトの名無しさん2014/09/29(月) 23:42:31.28ID:wLUytaVU
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(@"C:\hoge.xml");
XmlDocumentを使うときは、いつもこうやってxmlファイルをロード
させています
xmlを投げて帰って来た結果をそのまま使ってそのまま、
XmlDocumentに読み込ませる方法がありますか?
いつも、一度、テキストファイルに出力してから読み込みをさせています。
凄い無駄なような気がします
例えば、xmlREADERだと、下記のようにコードの中で直接サーバーから
帰ってきた、xmlを読み込みさせることができます。
ds.ReadXml(XmlReader.Create(new StringReader(recivingxml)));
あと、xmlDOCと、XMLREADERどっちがお薦めですか?
0911デフォルトの名無しさん2014/09/29(月) 23:48:55.36ID:o7UTHZS8
Loadにオーバーロードがあるでしょ
0912デフォルトの名無しさん2014/09/29(月) 23:54:33.04ID:5cYdnQQn
XmlSerializerで直接構造体に読み込んでしまうとか
0913デフォルトの名無しさん2014/09/30(火) 00:09:16.64ID:hjyyL69i
拡張メソッドってなに?
どう書けばs.IsNullOrEmpty()って使えるようになるんですか?
0914デフォルトの名無しさん2014/09/30(火) 02:05:56.38ID:vEfd8XRg
>>910
XElement.Parse
0915デフォルトの名無しさん2014/09/30(火) 02:32:45.77ID:4TmfBnqZ
Linuxの、tmpfs のようにメモリ内にだけ存在して、
HDDなどの実際のデバイスに、割り付けられていない、
仮想ファイルのようなものを使えば?
MemoryMappedFileだっけ?

メモリ内に、仮想ファイルとして読み込む
次にそれを変更した後、プログラム内に読み込んで使う
0916デフォルトの名無しさん2014/09/30(火) 05:35:00.83ID:Z6zJvTLh
他の人がデザインしたUIのとあるTextBoxにあるクラスのStringをバインド
しようとしてるのですが一部のTextBoxだけバインドできなくてこけます
TextBoxのプロパティのここをいじるとバインドできないとか注意事項はありますか?
0917デフォルトの名無しさん2014/09/30(火) 05:38:09.82ID:itWl9ssf
>>915
別プロセスが絡まないならMemoryStreamでもbyte[]でも良いと思うけど
0918デフォルトの名無しさん2014/09/30(火) 13:32:49.58ID:HPIIMJ5F
IsNullOrEmptyだけの話だったら、そもそもC#のことではなくFramework全体の話になってくるけどな・・・
個人的にはそんなことよりSplitはcharが指定できるのに、逆操作であるJoinには指定できないのが腑に落ちないが
どっちにしてもスレチな気がする
0919デフォルトの名無しさん2014/09/30(火) 22:13:13.14ID:zBVVSUId
>>918
Splitでchar[]を使えるのは、入力のバッファとしてchar[]を使い回すためだろ
その意味では、逆操作があるとすれば出力としてchar[]を使えるべきで、
void Join(string separator, string[] values, char[] buffer)
こんな感じだろうな
Cではこういうのよくあるけど、戻り値なしで配列2つ渡すオーバーロードなんて紛らわしいからやめたんだろ
09209192014/09/30(火) 22:17:19.70ID:zBVVSUId
訂正
>>919だと結果の文字数が分からないから、戻り値はintにして文字数を返すべきだな
配列に収まらなかった場合の処理とか考えると、バッファを使い回したいならJoin程度自分で実装したほうが早い
0921デフォルトの名無しさん2014/09/30(火) 22:25:07.31ID:TrQNGngF
string.Join<T>無視してどうでもいい議論してんな
0922デフォルトの名無しさん2014/09/30(火) 22:29:41.52ID:vEfd8XRg
JoinはIEnumerable<T>の拡張メソッドにして欲しかった
0923デフォルトの名無しさん2014/10/01(水) 01:24:22.53ID:RMn95Wno
同意
0924デフォルトの名無しさん2014/10/01(水) 01:29:25.90ID:yGBlf3TV
>>921
>>918が言いたいのはseparatorにchar使えないのなんで?って話だと思うんだが

>>919の言いたいことは分からん
0925デフォルトの名無しさん2014/10/01(水) 01:51:00.96ID:8RBgwhnR
>>924
> (Joinの)separatorにchar使えないのなんで
それは問題設定そのものが倒錯してる。
そうじゃなくてSplitの方にセパレータをcharでしか指定できない事情がある。
0926デフォルトの名無しさん2014/10/01(水) 02:18:00.69ID:kM7uhOo0
別に「でしか指定できない」わけではないだろ 最適化に都合が良いだけで
0927デフォルトの名無しさん2014/10/01(水) 08:53:53.59ID:wr8b4lcO
>>919
char[] separatorをバッファに使いまわしたら、渡されたseparator自体はどうすんだよ・・・

>>924
そう、Joinのseparatorにcharが使えないのはションボリだなって感じ
Join<T>はJoinする列挙要素の型をTで指定するだけだから別の話やんね

>>925
何がどう倒錯してるの?
あと、Splitのseparatorはstring[]も指定できるぞ
0928デフォルトの名無しさん2014/10/01(水) 12:25:47.97ID:D8C03Nec
>>927
Splitのそのオーバーロードの説明よく読んでみ。

っていうか、Joinのセパレータにはstringを指定できるのに、それとは別にcharを指定できる
オーバーロードを用意することに何の意味があるの?
0929デフォルトの名無しさん2014/10/01(水) 13:29:18.45ID:wr8b4lcO
>>928
良く読むどころか使ったこともあるから知ってるけど?
上から目線でドヤ顔してるとこ悪いけど、stringとcharは別物だからね?
↓の2つはまったくの別結果よ?

"TesteData".Split(new string[]{"es"}, , StringSplitOptions.None);
"TesteData".Split(new char[]{'e', 's'}, , StringSplitOptions.None);
0930デフォルトの名無しさん2014/10/01(水) 13:44:48.68ID:s7TGI1jH
今見たら
> If any of the elements in separator consists of more than a single character,
> only the first character of that element is considered a delimiter,
> and any subsequent characters are ignored.
> For example, if one of the elements in separator is "10",
> attempting to split the string "This10is10a10string." returns the following four-element array:
> { "This", "0is", "0a", "0string." }.
なんて次の節と矛盾しまくりの記述があって、928さんはMSDNの被害者だったんだ!多分
0931デフォルトの名無しさん2014/10/01(水) 14:55:38.28ID:9pwkFFZH
>>930
なんじゃこりゃ
嘘だろ・・・?
0932デフォルトの名無しさん2014/10/01(水) 15:15:19.16ID:wr8b4lcO
>>930
それどこにある?
今のWEBのMSDNのドキュメントじゃないよね?
0933デフォルトの名無しさん2014/10/01(水) 15:24:25.03ID:s7TGI1jH
あ、英語版だとちゃんとなってるわ
ttp://msdn.microsoft.com/en-us/library/tabh47cf%28v=vs.110%29.aspx
ttp://msdn.microsoft.com/ja-jp/library/tabh47cf%28v=vs.110%29.aspx
930は日本語版の翻訳用ポップアップからコピペしたんだがここが間違ってるとかどうにもなんねぇな
4.5で追加された文言だね
0934デフォルトの名無しさん2014/10/01(水) 15:37:42.05ID://PF9s0k
ん? 原文も同じこと書いてあるぞ。
実際の動作と異なるようだ。
0935デフォルトの名無しさん2014/10/01(水) 15:49:42.29ID:wr8b4lcO
>>932の英語版の方はちゃんとなってるなw
日本語版は>>930のようなおかしな記述になってる
しかも"10"じゃなくて「10"とかなってて色々おかしいしw
0936デフォルトの名無しさん2014/10/01(水) 15:50:27.91ID:wr8b4lcO
>>932じゃなくて>>933だった・・・

この記述、4.5からのようだな
4以前のSplitのとこには無かった
0937デフォルトの名無しさん2014/10/01(水) 15:54:14.79ID:atxLjnDh
おまえらモテないくせに英語読めるんだなあ
尊敬するぜ
0938デフォルトの名無しさん2014/10/01(水) 16:11:56.55ID://PF9s0k
よく見たら日本語ページから入って原文に切り替えたのと
原文ダイレクトで内容違うのかよ
ひどいなコレは
0939デフォルトの名無しさん2014/10/01(水) 16:36:06.87ID:qV+tqzH4
まあどっかのタイミングで英語だけ直したけど日本語は手つかずってだけだろな
0940デフォルトの名無しさん2014/10/01(水) 17:09:38.20ID:yW4yhB09
技術者が気が付いて正しい方向の修正だから良かれと思って先走って直した結果
いろんなところとの仕様書バージョン違いによる混乱大発生
0941デフォルトの名無しさん2014/10/01(水) 21:13:25.03ID:8lh20o4x
>>929
Splitの方の仕様は俺が勘違いしてたけど、どっちにしろJoinの方はセパレータにcharが
指定できるバージョンなんか必要ないでしょ。
0942デフォルトの名無しさん2014/10/01(水) 21:29:01.81ID:/rAd4le2
Windows 10きたな!
サーバー、デスクトップ、タブレット、スマホ、全てのデバイスで一つのOSだってよ。
これはストアアプリ作らざるを得ないだろ、っつーかそういうことなんだろ?ストアアプリをウィンドウ化したのもそのためだろMS?
.NET NativeがC#かつストアアプリ限定ってのが、ストアのサーバーでクラウドコンパイルされるって技術的な要因だけじゃないと思ってたけどこういうことなんだな
ストアアプリわくわくしてきたわ
0943デフォルトの名無しさん2014/10/01(水) 22:26:02.98ID:W3RtXEoN
広く普及する見込みがない/させる気がないからサポートコストをケチってるだけだよ
XNAみたいなもん
0944デフォルトの名無しさん2014/10/01(水) 22:38:32.09ID:9pwkFFZH
ストアアプリって何が使えるの?
XAMLにすればいけるの?
0945デフォルトの名無しさん2014/10/01(水) 23:12:30.64ID:gNoQ9GhW
.NET Nativeとか、C#に注力して早めに開発して欲しいわ。

MSもgoogleに押されて苦しいんだから、
VBとかF#にコスト割いてる暇無いだろ。
0946デフォルトの名無しさん2014/10/01(水) 23:21:41.84ID:9pwkFFZH
ググって見てたらストアアプリの開発にはWin8.1が必要とか出てきてやる気なくなったわ
0947デフォルトの名無しさん2014/10/02(木) 02:05:15.65ID:UX4Sw3I3
やるとしても10買ってからだな
自他共に認めた駄作の8.xはありえない
0948デフォルトの名無しさん2014/10/02(木) 10:14:29.85ID:02eVHk3K
>>941
必要が無いかどうかはお前が決めるこっちゃないと思うが
まぁ俺が思うに、最初に言いだした彼は
文字関係でstringとcharがあるんだから両方使えて当たり前だろって思ってんじゃないかね
0949デフォルトの名無しさん2014/10/02(木) 10:33:38.58ID:kBafHe2t
axacropdfを使って、ボタンを押すとpdfを表示したいと考えています。
private void button1_Click(object sender, EventArgs e)
 {
  axAcroPDF1.src = @"c:\test\testpdf.pdf";
 }
これは問題なく動きました。
ただ、pdfを表示する間フリーズしてしまうので、バックグラウンドで動かしたいと思い、taskのなかに入れたところ、動かなくなってしまいました。
private void button1_Click(object sender, EventArgs e)
 {
  Task.Factory.StartNew(
   () =>
  {
   axAcroPDF1.src = @"c:\test\testpdf.pdf";
  });
 }
対処法わかる方いらっしゃいましたら、教えてください。
0950デフォルトの名無しさん2014/10/02(木) 10:37:41.03ID:kBafHe2t
backgroundworkerもやってみましたが、ダメでした。
0951デフォルトの名無しさん2014/10/02(木) 10:40:16.97ID:RLtAlyj/
DirectX.NETとかの例もあるし、普及するまで様子見だは
0952デフォルトの名無しさん2014/10/02(木) 10:42:10.59ID:pmwc9HIV
別スレッド化はコントロール自身が実装してない限り多分無理
0953デフォルトの名無しさん2014/10/02(木) 11:33:07.54ID:GRRS1kt2
Task.Factory.StartNewってまだ使うの?
Task.Runでいいんじゃ
0954デフォルトの名無しさん2014/10/02(木) 11:51:08.52ID:eiHNA2fi
>>948
頭の悪さがにじみ出てる物言いだね。
誰も俺の主観の話なんかしてない。客観的に必要ないと言ってるんだよ。
0955デフォルトの名無しさん2014/10/02(木) 11:53:42.80ID:E5/+JNtl
>>949
axacropdfっての触ったことないから知らんけどSTAスレッドじゃないとだめとか
StaTaskSchedulerでぐぐれ
0956デフォルトの名無しさん2014/10/02(木) 12:17:54.41ID:02eVHk3K
根拠も示さず客観と来たww
0957デフォルトの名無しさん2014/10/02(木) 12:24:32.09ID:syaU1WJo
C#で、Oracleのclobをインサートするサンプルコードあります?
ネットにも余り転がって無くて、外国サイトのサンプルコード実行すると
NULLデータがダメですみたいなエラーが出ます。
コードのパターンや、入れる文字列を変えてみてもclob変数.writeメソッドで同じエラーがでるので
どうもOracle提供のライブラリ内にバグがあるように見えるのですが。
0958デフォルトの名無しさん2014/10/02(木) 13:24:55.59ID:zng1zo+b
ソケット使ったプログラム向けのアプリケーションサーバーってありますか?
JavaのJBossのJMX-Consoleみたいのがサクッと使いたいのですが
0959デフォルトの名無しさん2014/10/02(木) 15:17:15.32ID:uz98qf7t
>>954
客観的w
0960デフォルトの名無しさん2014/10/02(木) 15:49:53.90ID:ZYSi2hn2
GlassFishとか
0961デフォルトの名無しさん2014/10/02(木) 15:56:58.58ID:eopNGIwV
>>813
結局うまくいってるからいいじゃないの。
0962デフォルトの名無しさん2014/10/02(木) 15:57:06.26ID:0LTpdoQf
>>959
いい歳こいてるんだろうに幼稚なことやってないで、
Joinにcharのセパレータを取るバージョンを追加することが蛇足じゃない理由を挙げてみたら?

利便性を増やさないオーバーロードを追加することが無駄かどうかの判断は、
その人の主観性が入り込む余地のある問題なのか?

2chって何でこういバカな上に幼稚な奴が多いのかね。
幼稚な自分は嫌だっていう自意識ぐらいねえのかよ本当。
0963デフォルトの名無しさん2014/10/02(木) 16:01:56.01ID:Ob3tDv0H
>>962
お前も幼稚だよ。
客観的に見て。
0964デフォルトの名無しさん2014/10/02(木) 16:11:49.05ID:02eVHk3K
なぜchar版オーバーロードが利便性を増やさないと思うのだろうね
プログラム内で扱われる文字関係は全てstringだとでも思っているのか・・・
0965デフォルトの名無しさん2014/10/02(木) 16:42:43.87ID:tlj8GW9K
馬鹿には無理
0966デフォルトの名無しさん2014/10/02(木) 16:42:57.83ID:lffyVmzw
これではCのときの面倒さと変わらないじゃないか。BASIC並に簡単にしてくれよ。
0967デフォルトの名無しさん2014/10/02(木) 16:48:06.09ID:uz98qf7t
>>962
馬鹿すぎるな
0968デフォルトの名無しさん2014/10/02(木) 16:56:26.23ID:4FoM01T7
>>953
自分でTaskSchedulerとTaskFactoryを作ったときに使うんだぜ
0969デフォルトの名無しさん2014/10/02(木) 17:04:50.56ID:02eVHk3K
>>953
まだ使うも何も、.NET4.5じゃないとTask.Runは無いから
4.0ならStartNewになるじゃない
0970デフォルトの名無しさん2014/10/02(木) 19:50:01.30ID:t+0vpqCH
なぜJoinごときにここまで熱くなれるのかねえ
0971デフォルトの名無しさん2014/10/02(木) 21:12:44.77ID:ts5hx9kN
>>957
どんなミドルウェアを使って
どんな文字列を
どんな入れ方でいれたら
どんなエラーが出る

とか書けないのか
System.Data.OracleClientは廃止されたから使うなよ

どうしても分からなければTO_CLOB使って文字列でぶっこめ
0972デフォルトの名無しさん2014/10/02(木) 21:17:54.18ID:Zuslu+Dz
ソース公開されてるし、自分で用意すればいいじゃん
http://referencesource.microsoft.com/#mscorlib/system/string.cs

Join(char, params string[]) がない理由は UnSafeCharBuffer に AppendChar が無いからじゃね?

Join(string, IEnumerable<string>) の実装見ると StringBuilder でもよさげだから、まねて作ればいい
0973デフォルトの名無しさん2014/10/02(木) 22:04:25.48ID:zOaM9of+
ジェネリクスでintやfloat、doubleなどの数値型に限定する方法おしえてください。
0974デフォルトの名無しさん2014/10/02(木) 22:08:30.29ID:t+0vpqCH
無い
T4使った方が幸せになれるかも
0975デフォルトの名無しさん2014/10/02(木) 22:10:03.91ID:2RE8tR2v
>>973
ない
できたとしてもジェネリックな演算はできないので特に意味がない
0976デフォルトの名無しさん2014/10/02(木) 22:29:37.24ID:LI8KvJh4
double.Parse(value.ToString())で数値型じゃなけりゃ例外出ってのはダメかな
0977デフォルトの名無しさん2014/10/02(木) 22:38:01.83ID:sGyqHmPN
>>960
GlassFishというか、Grizzlyはなかなかいいな。
あんなフレームワークがJava以外の環境にもないもんだろうか。
0978デフォルトの名無しさん2014/10/02(木) 22:47:36.84ID:kBafHe2t
>>955
ぐぐったら、こっちのスレの249が出てきました
ふらっと C#,C♯,C#(初心者用) Part112
http://peace.2ch.net/test/read.cgi/tech/1404669617/249

>StaTaskScheduler.csというのがあるからそれをプロジェクトに追加して
>Task.Factory.StartNewのTaskScheduler使うオーバロードにStaTaskSchedulerのインスタンスを設定すればTaskのスレッドがSTAになる
これの2行目の意味がわからないのですが、どうやってやればいいんでしょうか・・・
0979デフォルトの名無しさん2014/10/02(木) 23:19:10.76ID:UX4Sw3I3
var tf = new TaskFactory(new StaTaskScheduler());
tf.StartNew();
0980デフォルトの名無しさん2014/10/02(木) 23:48:07.47ID:kBafHe2t
>>979
ありがとうございます。勉強になりました。
結論としては動かなかったのですが、たぶんacropdfの問題なのでしょうね・・・
private void button1_Click(object sender, EventArgs e)
{
var tf = new TaskFactory(new System.Threading.Tasks.Schedulers.StaTaskScheduler(2));
tf.StartNew(
() =>
{
axAcroPDF1.src = @"c:\test\testpdf.pdf";
});
}
0981デフォルトの名無しさん2014/10/02(木) 23:56:25.23ID:iZcC+eWy
>>977
設定画面をサクッと作れるフレームワークってJava以外だと少ないよね
0982デフォルトの名無しさん2014/10/03(金) 00:06:23.10ID:PYlNFPct
1.UI部品のプロパティをUIスレッドで設定したら固まった
 ↓
2.サブスレッドで呼び出してみたら動かない
 ↓
3.どうやらSTA前提のCOMのようだ ←まあそうだな
 ↓
4.プロパティアクセスをSTAスレッドからやってみよう ←アホ

1から余計に悪化させてどうする
0983デフォルトの名無しさん2014/10/03(金) 00:19:58.22ID:1IT0rAkk
プロの人解決策きぼんぬ
0984デフォルトの名無しさん2014/10/03(金) 01:21:10.45ID:wDVTbq8H
とりあえずそれを乗っけたForm自体を別スレッドにしてApplication.Runで開始する必要があるだろ
解決するかわからんが
0985デフォルトの名無しさん2014/10/03(金) 05:15:42.87ID:Q8By6zWS
>>982
せやな
0986デフォルトの名無しさん2014/10/03(金) 10:03:44.32ID:myBerHgL
なんでstringはデフォルトEmptyじゃなくてnullなんですかね・・・
0987デフォルトの名無しさん2014/10/03(金) 10:04:28.79ID:OynHM83k
ぬるぽ
0988デフォルトの名無しさん2014/10/03(金) 10:08:38.79ID:Os/KN2bD
参照型だから以外の何が必要?
値型にして代入でいちいち実体コピーしろっての?
0989デフォルトの名無しさん2014/10/03(金) 10:13:48.85ID:yAF6QU38
stringは内部的にはポインターのようなものだから、0文字格納された場所のポインタより
ポインタ自体を0にしたほうが素直では有る

ただ、nullは不許可で定義されていたら大分楽になるよな
0990デフォルトの名無しさん2014/10/03(金) 10:14:14.03ID:Os/KN2bD
次スレたてた
C#, C♯, C#相談室 Part85
http://peace.2ch.net/test/read.cgi/tech/1412298752/
0991デフォルトの名無しさん2014/10/03(金) 10:18:36.65ID:myBerHgL
>>988
参照型だからnullが使えるのは分かるけど
デフォルト値(default(string)とか)くらいEmptyにしてくれてもいいんじゃないかと思っただけなんだけど
なんでそんなに喧嘩腰なの?
0992デフォルトの名無しさん2014/10/03(金) 10:38:12.49ID:Os/KN2bD
default(ref class)がnullじゃなかったらジェネリックメソッド書くの大混乱だよ…
0993デフォルトの名無しさん2014/10/03(金) 10:51:53.81ID:1QVvqpEG
>>991
衝撃の馬鹿さにびっくりしたんだろ
0994デフォルトの名無しさん2014/10/03(金) 11:06:33.58ID:Q8By6zWS
>なんでstringはデフォルトEmptyじゃなくてnullなんですかね・・・

こういうソボクな疑問はふらっとスレに書けば優しくしてもらえるかもよ
0995デフォルトの名無しさん2014/10/03(金) 11:55:31.72ID:8OTaypIY
Emptyの代わりにnullを突っ込んでもコケなければいいよ
0996デフォルトの名無しさん2014/10/03(金) 12:02:07.25ID:Ysp5Bk2T
>>991
C#では明示的に初期化されないフィールドは規定値で初期化されることになってる。

String.Emptyを規定値とした場合、明示的に初期化されてないstringのフィールドは
String.Emptyで初期化されるがこれは普通に考えて気持ち悪い。

かといってstringを特別扱いして(規定値と異なる)nullで初期化することにすると、
今までnullとの比較で済んでいた箇所の一部は、わざわざString.IsNullOrEmptyを
使う必要性が出て来るし、stringを特別扱いしたことによって他の型とアシンメトリーな
仕様になるのは美しくない。>>992
0997デフォルトの名無しさん2014/10/03(金) 12:11:30.05ID:UZL2a67c
いつもString.IsNullOrEmptyで比較していた俺大勝利って事でFA
0998デフォルトの名無しさん2014/10/03(金) 12:16:28.03ID:Y+itWI9D
なんで規定値がEmptyだと思えるのか分からん
規定値はnull 空文字列がEmptyだろ
0999デフォルトの名無しさん2014/10/03(金) 13:08:47.79ID:O8Kvwmj0
>>991
ここ最近のスレの流れを見ればアレな質問に皆イライラしているのが判るよ
質問している奴が同一人物に見えるレベル
1000デフォルトの名無しさん2014/10/03(金) 13:40:47.72ID:lXIQAzKJ
なるほど
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。