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


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

C#, C♯, C#相談室 Part91



1 名前:デフォルトの名無しさん [2016/06/29(水) 04:39:09.19 ID:sT3gw8va.net]
■Visual Studio 2013 Community & Express(無償の統合開発環境)等はこちら
www.visualstudio.com/downloads/

■コードを貼る場合はこちら
ideone.com/

■前スレ
C#, C♯, C#相談室 Part88 [転載禁止]©2ch.net
peace.2ch.net/test/read.cgi/tech/1437808445/
C#, C♯, C#相談室 Part89
peace.2ch.net/test/read.cgi/tech/1443271409/
C#, C♯, C#相談室 Part90
echo.2ch.net/test/read.cgi/tech/1455160063/

■次スレは>>970が建てる事。
建てられない場合は他を指定する事。

820 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 20:59:19.56 ID:vyO0bokn.net]
>>784
Task作成時にLongRunningオプション指定すれば専用スレッドが作成されるので、ずっと動き続ける処理も対応可能
外から無理やり強制終了させるのはTaskじゃ出来ないけど、それは最後の手段な気が

821 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 21:01:52.12 ID:trxVi14T.net]
ずっと裏で動いているスレッドが1つあって
そのために1つだけスレッドを作っているんだけど Threadじゃだめかな・・・

終了時、Invoke中にメイン死ぬと不正終了になるんだけど
こういうのもTaskとかだとなにもしなくても解決するのかな

822 名前:デフォルトの名無しさん [2016/10/15(土) 21:04:09.39 ID:pX/A0T2U.net]
>>793
作成可能なのかぁ
よっしゃ頑張って調べてみる
ありがとう

823 名前:デフォルトの名無しさん [2016/10/15(土) 23:28:16.70 ID:f1QyDe2U.net]
>>756
win32api 直たたきでやる

824 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 09:25:32.19 ID:N3K1drKB.net]
別にDeprecated表示が出るわけでもないのに
いちいち人の顔色確認しないと使えないのかよって感じ

825 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 09:47:25.93 ID:FoYCot45.net]
>>796
そもそもずっと動いてる必要があるのかっていう
スレッドが使われる大半のケースは非同期プログラミングが面倒だからで、
asyncのように継続を自然に記述できる十分優れたプログラミングモデルがあればそもそも必要ないことが多いよ

826 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 10:13:05.42 ID:JeZKc2qD.net]
結局、待ち合わせ処理を上手く書けなければ、非同期処理はドツボルだけだからな

827 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 10:17:44.05 ID:6cPEMPfX.net]
今はasync/awaitのせいでそれ意味あん?っての多いな

828 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 11:01:54.51 ID:jn8AI4NK.net]
IProgress<T>も追加されたし、Control.Invoke()とかBackgroundWorkerとか全然使わなくなったなぁ



829 名前:デフォルトの名無しさん [2016/10/16(日) 11:26:09.74 ID:LqkHCFhg.net]
MSHTML?とかDOM?の話ってここでしても大丈夫?

id='hoge' なdivを探して、さらにその中に散らばっている class='piyo' なdivを
コレクションしたいんだけど、うまく書けない

830 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 11:27:43.38 ID:jbRBUkYK.net]
$('hoge').children('.piyo')

831 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 16:08:56.29 ID:43exmUNo.net]
MSHTMLはCOMコンポーネントスレだな
C#ではない

832 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 16:16:22.79 ID:6cPEMPfX.net]
ここよりもどこの方が答え出やすいだろってんならわかるが、C#でやりたいってんだからここでいいだろ
変なとこで聞くとC++とかjsでの例が返ってきて面倒

833 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 17:18:36.54 ID:SvwLiUUm.net]
一方このスレでは、使ってる人が居なくて回答がないってオチなんですけどね
ふふふ

834 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 17:25:57.62 ID:FB+xb9yt.net]
逆にnugetで使えるMSHTML的なライブラリを教えてあげたらどうですか

835 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 20:17:19.13 ID:rLjB7sKS.net]
>>804
上手く書けないってどういうこと?
classNameのことかもしれないなと思ったけど違うかな?


普通にdiv取ってクラス名をアトリビュート指定するとき'class'じゃダメ
'className'じゃないといけない

836 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 20:43:38.34 ID:bkFW5Wdb.net]
俺もさっき?ってなった

837 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 20:44:43.60 ID:HptTw0AS.net]
便利な定番ライブラリー教えてください

838 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 22:10:05.08 ID:rLjB7sKS.net]
nugetにも野良にもHTMLライブラリはあまりいいものがない
XPath指定しないといけなかったり単純じゃない



839 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 22:13:37.85 ID:rLjB7sKS.net]
jqueryみたいな使い勝手のものがいいのに全然そういうのは見当たらない

840 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 22:32:11.51 ID:dK/+e+o+.net]
か余計なことせずそのまま実績のあるjquery使えばいいのでは

841 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 22:55:35.24 ID:Bi9cJ88q.net]
>>812
定番かどうかは分からないけどHtmlAgilityPackはどう?
まぁ813が言っているようにXPath使わにゃならんから面倒だけど

842 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 00:41:57.54 ID:gL0kaGzi.net]
mshtmlつかうなら
https://msdn.microsoft.com/en-us/library/cc288169(v=vs.85).aspx
queryselectorが使える

843 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 21:53:10.29 ID:vjQZXreA.net]
HtmlAgilityPackかSGMLReaderあたりかなあ

844 名前:デフォルトの名無しさん [2016/10/18(火) 16:42:09.62 ID:7mpjJA7j.net]
今動作してるIEの一覧を取得するのにSHDocVw.ShellWindows()を使うけど
IEかただのエクスプローラかそれとも何かのコンポーネントかを判別するのって
どうしたらいいの?

845 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 18:13:12.16 ID:ewOaGiwG.net]
そんなもの使うなとしか言えない

846 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 18:29:09.57 ID:mq8BnqKZ.net]
IE6のときならenumwindowで判断して、hwndからihtmldocumentに変換してたな

847 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 19:15:18.50 ID:FlxOlnSe.net]
>>820
無能だなー

848 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 20:46:41.52 ID:ewOaGiwG.net]
>今動作してるIEの一覧を取得するのにSHDocVw.ShellWindows()を使う

なぜこんなものを使う?



849 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 20:52:19.50 ID:Gt7CC2vm.net]
背後になんか面倒くさい理由を隠してるとしか思えんよな

850 名前:デフォルトの名無しさん [2016/10/19(水) 12:11:35.27 ID:LBA1+3Md.net]
>>823
こんなもの以外の方法があるならおしえて
ほかの楽な方法があるなら知りたいわ

851 名前:デフォルトの名無しさん mailto:sage [2016/10/19(水) 17:19:08.15 ID:arYWyhLn.net]
IEオートメーションじゃ実現できないのかな?

852 名前:デフォルトの名無しさん mailto:sage [2016/10/19(水) 23:13:27.42 ID:LBA1+3Md.net]
MSHTML.IHTMLElement を MSHTML.IHTMLDocument3 にキャストできるの?

853 名前:デフォルトの名無しさん mailto:sage [2016/10/19(水) 23:33:28.27 ID:O7AcwVjM.net]
documentプロパティから取れるんじゃないか?すくなくともihtmldocument2は取れる3は使ったことないから知らね

854 名前:デフォルトの名無しさん mailto:sage [2016/10/20(木) 11:00:38.44 ID:m/6IB2Ib.net]
ベクトル使いたいからWPFのチュートリアルみてるけど
もう自分で実装してForm使った方が早い気がした

855 名前:デフォルトの名無しさん [2016/10/20(木) 11:21:11.77 ID:h44EP0Eo.net]
標準のメッセージダイアログを継承して
おっきいダイアログ出せるようにできる?

856 名前:デフォルトの名無しさん mailto:sage [2016/10/20(木) 11:52:28.07 ID:h1aMlyOK.net]
>>830
継承してもstaticメソッドの実装はオーバーライドできないよね。

ゼロベースで作っても大した手間でもないよ。
俺はモーダレスかつタイマーで自動で消えるメッセージボックスを自作して使ってる

857 名前:デフォルトの名無しさん mailto:sage [2016/10/20(木) 12:16:12.40 ID:h44EP0Eo.net]
>>831
ありがとう。 自分で作った。

858 名前:デフォルトの名無しさん mailto:sage [2016/10/20(木) 12:33:25.92 ID:hy7ZxWJM.net]
なんでたまに継承できないクラスあるのかな?



859 名前:デフォルトの名無しさん mailto:sage [2016/10/20(木) 12:33:46.23 ID:hy7ZxWJM.net]
オーバーライドだった

860 名前:デフォルトの名無しさん [2016/10/21(金) 22:58:40.56 ID:qlDwM755.net]
gcnewってなに? 今でも使っているの?

861 名前:デフォルトの名無しさん mailto:sage [2016/10/21(金) 23:06:00.00 ID:myg7EJ7B.net]
>>835
c#にgcnewは無いよ。
C++/CLIでc#のnewに相当するのがgcnew。
マネージオブジェクトを割り当てるのに使う。

862 名前:デフォルトの名無しさん mailto:sage [2016/10/22(土) 11:50:35.71 ID:uYEAFNJ9.net]
>>836
ありがとう
何かの記事でごっちゃに見たみたいだな

863 名前:デフォルトの名無しさん mailto:sage [2016/10/22(土) 15:25:07.68 ID:nST3ahFj.net]
質問

LINQのクエリ/メソッド式って、どう使い分けるもんなん?
「こういう人はこう」でも「こういう状況ではこう」でもいい。

864 名前:デフォルトの名無しさん mailto:sage [2016/10/22(土) 16:27:57.03 ID:Hz0V4lr8.net]
とりあえずLINQ to Objectsの場合
基本的にクエリ式は忘れていいと思うよ
SelectManyが出てくるときだけ思い出すことはある

865 名前:デフォルトの名無しさん mailto:sage [2016/10/22(土) 16:39:49.89 ID:nST3ahFj.net]
ありがとう、あんまり気にしないことにする

866 名前:デフォルトの名無しさん mailto:sage [2016/10/22(土) 17:43:18.97 ID:29Li8We/.net]
>>829
君の言うベクトルって何?
画像系の話?

867 名前:デフォルトの名無しさん mailto:sage [2016/10/22(土) 18:08:09.54 ID:O/1X83Cc.net]
>>838
単純なクエリはメソッドの方が簡潔に書けるけど、複雑になると解読不能になるからクエリ式を使う
具体的にはネスト(SelectMany)やjoinやgroupbyを使う場合だな
クエリ式だとletでエイリアス作れるし

868 名前:デフォルトの名無しさん mailto:sage [2016/10/22(土) 19:37:45.10 ID:jUJZAwsX.net]
管理者権限が必要な処理の書き方とか全然知識



869 名前:がないんだけど、そういうの詳しく書いてある本ってあります? []
[ここ壊れてます]

870 名前:デフォルトの名無しさん mailto:sage [2016/10/22(土) 23:36:47.33 ID:AdTl/Wc+.net]
class 社員 { public string 名前; }
class 部署 { public List<社員> 社員リスト; }
class 会社 { public List<部署> 部署リスト; }
static void Main()
{
   var data = new List<string[]> {
      new string[]{ "会社A", "営業部", "社員1"},
      new string[]{ "会社A", "営業部", "社員2"},
      new string[]{ "会社A", "営業部", "社員3"},
      new string[]{ "会社A", "技術部", "社員4"},
      new string[]{ "会社A", "技術部", "社員5"},
      new string[]{ "会社A", "経理部", "社員6"},
   };
   var 会社A = new 会社();
   // ここで date を 会社A の中に代入したい
}
こういう単純なクラスとデータがある場合に、dataを会社Aに代入したいのですが、forループでやろうとすると例えば営業部の部署名が複数回出てくるので
上手く出来ませんでした。上級者の人のテクニックを教えて下さい。
本当は会社B、会社CもあるdataをList<会社>に入れたいのですが、まずは会社Aのみで。
あるいは、より良いクラス定義のしかたやデータの持ち方などありましたら教えてください。

871 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 00:22:31.27 ID:B5STCa/c.net]
>>844
何がしたいのかよくわからんけど、そのコードだと
会社は会社名のプロパティを持ってないし部署も部署名のプロパティを持ってないから
"会社A"とか"営業部"とかいうデータは使われず捨てられちゃうと思うんだけど、そこはいいのかな?w

872 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 07:53:45.11 ID:OxwAMa74.net]
>>844
Listの操作でいけるだろ
コンストラクターの引数で

873 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 09:52:13.25 ID:1pxdLQGB.net]
部署クラスが部署名を持ってないってことは、その部署クラス(のインスタンス)をみても
どの部署かわからんってことだぞ

つまり、社員の部署が分かったとしても、その社員を
List中のどの部署インスタンスに設定してよいかわからんってことだ

874 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 10:49:08.80 ID:sEyHovA2.net]
class 会社{会社CD 会社名}
class 部署{会社CD 部署CD 部署名}
class 社員{社員CD 会社CD 部署CD 社員名}
個人的にはこんなイメージ

875 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 10:57:06.97 ID:ZJ79iXt0.net]
なんだそのCDって。

876 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 11:09:20.84 ID:+n3OHrjP.net]
「コード」の略として使われてるのを、帳簿やら流通やら管理やらで結構広く使われてるけど
プログラミング界隈に絞ると余り見ない気がする

877 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 11:14:50.63 ID:hWrb1W5d.net]
flagをflgにして1バイト削減するのとどちらがいい

878 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 11:18:19.73 ID:KJ+MRgkM.net]
省略がどうしても必要にならない限り
無意味な省略はしない



879 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 11:29:06.27 ID:04VfEeFu.net]
>>844
>営業部の部署名が複数回出てくるので
>上手く出来ませんでした
この部分の意味というかどうしたいかがわからん。"会社A"の要素の振り分けならContainsで確認するだけだが

880 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 11:39:54.27 ID:hJuf8zeH.net]
データ突っ込んでDBみたいに扱いたいならDataSetでも良いんじゃないの
速度求めるならオススメできんけどさ

881 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 12:00:39.55 ID:0D6CiVY3.net]
>>851
menuをmnu、userをusr、topをtpとか
何かの制御ボードのサンプルコードで見たけど
1バイト削ることに何の意味があるのか分からん

882 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 12:14:59.88 ID:631/ZmCa.net]
バーコードの最後の数字がC/Dって呼ばれてたな確か
check digitだったと思うけど

883 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 12:15:35.19 ID:+n3OHrjP.net]
大昔には削るメリットは結構あったらしい
変数名の長さに制限があるとか、エディタで扱いやすい長さだとか、そういうの。

884 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 12:18:54.25 ID:XCFJNrSh.net]
>>844
Dictionaryを使えばいいよ

class 社員 { public string 名前 {get;set; }
class 部署 { public Dictionary<string,社員> 所属社員 {get;} = new Dictionary<string,社員>(); }
class 会社 { public Dictionary<string,部署> 所属部署{ get;} =new Dictionary<string,部署>(); }

var 会社情報 = Dictionary<string,会社>();
foreach(var d in data) {
if(!会社情報.ContaintsKey(d[0])) 会社情報[d[0]] = new 会社();
if(!会社情報[d[0]].所属部署ContaintsKey(d[1])) 会社情報[d[0]].所属部署[d[1]] = new 部署();
会社情報[d[0]].所属部署[d[1]].所属社員[d[2]] = new 社員() { 名前 = d[2] }
}

885 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 12:19:09.90 ID:sEyHovA2.net]
未だに列名6バイトなクソDB使ってて
癖ついちゃってるんだすまない

886 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 12:24:08.02 ID:LLV8Wwru.net]
ジャップランドでは今なお80文字x24行の端末で開発もオペレーションもするマシンがバリバリ現役で山ほど稼働しており、
PGという名のライン工により日夜大量の糞コードが生産され続けているのです

887 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 12:25:50.86 ID:XCFJNrSh.net]
テーブル定義からDTO自動生成したら30文字以下の略式名称が沢山出てきてイラついた事ならよくある
どこの製品とは言わんが

888 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 12:29:06.93 ID:8nXGysoS.net]
>>858
分かりずらすぎ



889 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 12:51:39.85 ID:XCFJNrSh.net]
>>862
転職をお勧めするよ

890 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 13:03:17.86 ID:8nXGysoS.net]
Dictionaryなんて使わない。

891 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 13:10:06.70 ID:Qt7KzQsX.net]
今時はクラス名や変数名とかに日本語が使えるから分かりやすくていいよね

892 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 13:15:27.54 ID:PYj3VGyg.net]
>>864
自分の使わないものを「わかりづらい」って批判するのはただの思考停止だな

893 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 13:16:08.35 ID:+n3OHrjP.net]
>>865
あとはインテリセンスちゃんに頑張ってもらうだけ!

894 名前:デフォルトの名無しさん [2016/10/23(日) 13:16:17.05 ID:qVlUr/o9.net]
フォームのボタンとかラベルの名前の付け方
何か命名規則やコーディング規約とかある?
labelHogeとかlbl_hogeとかルールあるの?

895 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 13:17:43.18 ID:PYj3VGyg.net]
>>868
そんなもの決まってないから
クラス名・変数名に迷ったら書き込むスレ。Part27
echo.2ch.net/test/read.cgi/tech/1476572490/
気になるのなら上のスレに行け

896 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 13:18:39.73 ID:YUghrMnK.net]
会社の複数形…

会社達["会社A"].,["営業部"].["社員1"];

会社達.Select社員("会社A", "営業部", "社員1");

897 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 13:19:22.06 ID:YUghrMnK.net]
間違って . いれっぱだった

898 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 13:24:40.71 ID:631/ZmCa.net]
>>868
コントロール専用のルールはないけど、VB6みたいなハンガリアンはやめろってことにはなってたはず。
ただ実際はコントロールに限ってはハンガリアン使ってる人が多いと思う



899 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 13:43:56.51 ID:7RJgAwd4.net]
アプリケーションハンガリアンは普通に使う
インテリセンスがグループ化してくれて便利やろ

900 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 13:48:58.15 ID:qVlUr/o9.net]
>>869-873
ありがとう
とりあえずマイクロソフト推奨のルールは
ないってことやね

901 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 14:47:40.36 ID:KJ+MRgkM.net]
.NET Frameworkの記法に合わせる事にしてる
ttps://msdn.microsoft.com/ja-jp/library/ms229002(v=vs.100).aspx

902 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 14:52:56.32 ID:Qt7KzQsX.net]
分かりやすい日本語にしてる

903 名前:デフォルトの名無しさん mailto:sage [2016/10/23(日) 15:22:39.08 ID:LLV8Wwru.net]
>>873
人それぞれだけど、俺は全てのラベルをラベルとしてグループ化するより
例えば会社名のフィールドならラベルとテキストボックスをまとめて会社名としてグループ化したい派
コントロールの種類でグループ化することにあまりメリットを感じない

904 名前:デフォルトの名無しさん mailto:sage [2016/10/24(月) 11:24:49.66 ID:l6YOm+ny.net]
>>874
.NET前:MS「ハンガリアンを使え」
.NET後:MS「ハンガリアンを使うな」
https://msdn.microsoft.com/ja-jp/library/ms229045.aspx

905 名前:デフォルトの名無しさん mailto:sage [2016/10/24(月) 11:33:54.68 ID:ex01Zy3v.net]
>>878
それ翻訳がおかしいだけでしょ
ちゃんと翻訳されてる方を見ろよ
ttps://msdn.microsoft.com/ja-jp/library/ms229045(v=vs.100).aspx

906 名前:デフォルトの名無しさん mailto:sage [2016/10/24(月) 11:56:19.29 ID:fiWgzVNs.net]
規約と推奨をちゃんと切り分けて話してくれよ
質問者は最初に「規約」を聞いてきてその後に「MSの推奨」になっているけど話が全然別の物になるから

907 名前:デフォルトの名無しさん [2016/10/24(月) 12:07:19.75 ID:A1JDcDJD.net]
>>880
規約があれば規約を教えてほしい。
規約はないが推奨はある というなら推奨でもいい。
推奨もないなら 「俺はこうしてる」 でもいい。

908 名前:デフォルトの名無しさん mailto:sage [2016/10/24(月) 12:16:05.65 ID:fiWgzVNs.net]
>>881
推奨は>>878>>879でリンク貼ってもらっているだろ
そういったこと気にするのなら2chで聞くよりも適当に本何冊か買って書いてあるとおりにでもやればいい
職場なら職場のルールがあるし、趣味でやっているのならどうするかは個人の勝手なんだから



909 名前:デフォルトの名無しさん mailto:sage [2016/10/24(月) 12:23:17.96 ID:csInVVUs.net]
どうでもいいことで妙な絡み方する奴だねw

910 名前:デフォルトの名無しさん mailto:sage [2016/10/24(月) 12:25:46.22 ID:TdMIMrel.net]
あとMSの提示してる規則はあくまで不特定多数にAPIが参照される前提の「ライブラリ」に対してのみの提案
だから文中にもpublic/protectedに対するものしか出てこない
アプリ内の記述とか、ライブラリでもinternalやprivateなものは完全ノータッチ

911 名前:デフォルトの名無しさん mailto:sage [2016/10/24(月) 16:07:18.44 ID:SvgB/4J1.net]
>>878
これは見事な糞機械翻訳だな

原文: [X DO NOT] use Hungarian notation.
機械: [X のしないで] ハンガリアン記法を使用します。
直訳: [×するな] ハンガリアン記法の使用。
意訳: ハンガリアン記法を使用するな。

912 名前:デフォルトの名無しさん mailto:sage [2016/10/24(月) 16:40:04.52 ID:qDj+nyPk.net]
www.atmarkit.co.jp/fdotnet/dotnettips/151winshow/winshow.html

ここを参考に、オプションを指定して2個めを起動すると、起動中のアプリに独自メッセージを投げるようにしてみた。
ただ、アプリは複数のウィンドウを開いていて、探した Process オブジェクトの MainWindowHandle には
フォーカスがある (あった?) ウィンドウのハンドルが入ってるみたいで、目的のウィンドウじゃない場合がある。
全部のフォームの WndProc をオーバーライドするのも保守性がよくないし、どうしたらいいんでしょうか。

913 名前:デフォルトの名無しさん mailto:sage [2016/10/24(月) 17:05:46.02 ID:f1Oob2xq.net]
>>886
FindWindow使うんじゃあかんの?

914 名前:デフォルトの名無しさん mailto:sage [2016/10/24(月) 17:10:36.84 ID:e0+jKQlJ.net]
そのウィンドウの作りによるけど、親子関係を維持してるなら親をたどるとか
モードレスの場合は、、、どれがメインなのかを知る手段をお互いの約束事でみつける、かなあ

915 名前:デフォルトの名無しさん mailto:sage [2016/10/24(月) 17:40:28.81 ID:TdMIMrel.net]
PostMessageでいいならIMessageFilter実装してApplication.AddFilterすれば
ちょっと構造的にやるならHWND_BROADCASTで問い合わせてみるとか

916 名前:デフォルトの名無しさん mailto:sage [2016/10/24(月) 17:41:57.18 ID:TdMIMrel.net]
っていうかそんなんやるんだったらもうIPCチャネル使ったWCFでいいか…

917 名前:デフォルトの名無しさん mailto:sage [2016/10/24(月) 20:50:12.21 ID:qDj+nyPk.net]
ご意見ありがとうございます。
タスクバーから表示を消している場合は API を使って探すしかないようなんで、それを参考にしようとしたけど、
できれば極力 API を使わない方法がないかなーと思いまして。
IPC も検討したけど、WndProc をオーバーライドした抽象クラスを作って、そこから派生させるようにしました。
まあでも IPC 使ったほうがスマートでしょうね。

918 名前:デフォルトの名無しさん mailto:sage [2016/10/27(木) 16:31:51.10 ID:NElj0+xs.net]
整数型間のキャストについてちょっと質問

■ ビット幅大→ビット幅小
上位ビットの切り捨て

■ ビット幅小→ビット幅大
符号拡張後のビットイメージのコピー

■ 同じビット幅で符号の有無が違う型の間のキャスト
ビットイメージのコピー

こういう理解で合ってる?



919 名前:デフォルトの名無しさん mailto:sage [2016/10/27(木) 17:49:24.66 ID:K4rqOI65.net]
整数間って、符号有から符号有への変換しか考慮しないのか?

920 名前:デフォルトの名無しさん mailto:sage [2016/10/27(木) 19:04:56.45 ID:Z8lrimsb.net]
>>892
全然違う
はみ出るなら普通に例外飛んでくる






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

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

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