1 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 07:31:00.51 ID:2LMOL5Ty0.net] !extend:checked:vvvvv:1000:512 !extend:checked:vvvvv:1000:512 次スレを立てる時は↑を3行冒頭に書くこと(1行分は消えて表示されない為、もう1行は予備) 「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。 他のスレッドでは書き込めないような低レベルな質問、質問者自身なんだか意味がよく分からない質問、ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。 内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。 C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください。見かけたらNGしましょう。相手してしまったらあなたも荒らしです >>980 を踏んだ人は新スレを建てて下さい。>>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 ■前スレ ふらっと C#,C♯,C#(初心者用) Part157 https://mevius.5ch.net/test/read.cgi/tech/1669349768/ ■関連スレ C#, C♯, C#相談室 Part97 https://mevius.5ch.net/test/read.cgi/tech/1671585518/ ■コードを貼る場合は↓を使いましょう。 https://ideone.com/ https://dotnetfiddle.net/ 初心者はまずVisual Studioを使いましょう。なおVisual Studioの使い方などに関しては各バージョンで違うので専用スレでお願いします www.visualstudio.com/downloads/ ■情報源 https://learn.microsoft.com/ja-jp/dotnet/standard/class-libraries https://learn.microsoft.com/ja-jp/dotnet/csharp/language-reference/ https://learn.microsoft.com/en-us/dotnet/standard/class-libraries https://referencesource.microsoft.com/ https://source.dot.net/ ・Insider.NET > .NET TIPS - @IT https://www.atmarkit.co.jp/ait/subtop/features/dotnet/dotnettips_index.html ・DOBON.NET .NET Tips https://dobon.net/vb/dotnet/index.html ++C++; // 未確認飛行 C https://ufcpp.net/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 13:05:39.10 ID:14FiY4OPM.net] C#でググれって自己紹介なのに しばらくC#でググっても上位に出て来なかったから焦ってるのか?
3 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 13:34:29.41 ID:tXMVQqKEd.net] やっぱりアンチじゃないですかー 999 デフォルトの名無しさん (オイコラミネオ MM49-3uzD) sage 2023/03/26(日) 13:01:14.46 ID:14FiY4OPM 単発うざすぎる 本人かよ 結局次スレのテンプレに入れてる テンプレに入れても利用者は誰の得にもならないのに
4 名前:デフォルトの名無しさん [2023/03/26(日) 14:32:22.87 ID:AZqv4ccCM.net] ここまで必死だと気持ち悪い 本人以外に考えられないよね
5 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 17:42:06.89 ID:xVxTUxS70.net] 匿名掲示板で本人認定するのって、20年前の話じゃないか
6 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 20:08:58.07 ID:rDmXEFHlr.net] atmarkitのC#入門・・・・はもうバージョンが古すぎて勧められないよなあ 書籍だと独習C#が定番だったなあ・・・・と検索したら第5版(2022/7)でC#10.0まで対応するアップデートが入ってるみたいだ 著者も信用できるし最新の「独習C#」を買って読むのがいいかな ufcppはさすがに初心者には酷だとは思うけど否定されるべきサイトじゃないような
7 名前:デフォルトの名無しさん mailto:sage [2023/03/26(日) 21:05:29.84 ID:NpxeEyN90.net] 古いと言えばdobonも古いよな とはいえ、比較的新しい内容にまで追従していて初心者向けでそれなりに広範囲を網羅しているようなところが有るかといえば思いつかないが
8 名前:デフォルトの名無しさん (ブーイモ MM26-pkhP) [2023/03/26(日) 21:42:52.51 ID:5JOAAmYfM.net] 今はもう公式サイトが充実してるから言語を新しく学ぶ人はまず公式から 逆引き的な調べ方をするときだけ外部サイトで補完したほうがいい
9 名前:デフォルトの名無しさん (ワッチョイ 426a-3Jul) mailto:sage [2023/03/26(日) 21:55:31.79 ID:NpxeEyN90.net] 公式は機械翻訳がクソすぎるのがなぁ 初心者に英語力まで期待するのは酷ではなかろうか
10 名前:デフォルトの名無しさん mailto:sage [2023/03/27(月) 00:54:34.52 ID:ypfR6BT30.net] 機械翻訳のせいで進めない自体になったことねぇわ
11 名前:デフォルトの名無しさん mailto:sage [2023/03/27(月) 01:40:39.65 ID:b0l2Peyd0.net] C#で書かれた、比較的著名なOSSプロジェクトって何がある? 活動が滞ってるものも含めて挙げてもらえるとうれしい(できればプロジェクトページへのリンク付きで)
12 名前:デフォルトの名無しさん [2023/03/27(月) 02:14:06.44 ID:SicRvVGw0.net] またお前か
13 名前:デフォルトの名無しさん mailto:sage [2023/03/27(月) 19:16:40.86 ID:RuCYY04Cd.net] Bingチャット便利だね。ファイル整理とか言葉通りにすぐロジック組んでくれるし。 言い間違えたのか、無限にサブフォルダ掘られたことあったけど。
14 名前:デフォルトの名無しさん [2023/03/27(月) 19:57:46.20 ID:nOVTz35cp.net] ファイル整理って何をすることなの?
15 名前:デフォルトの名無しさん mailto:sage [2023/03/27(月) 20:09:26.13 ID:RuCYY04Cd.net] >>14 テキストファイルの中身に応じてファイル名を付け直したりフォルダを移動したり。
16 名前:デフォルトの名無しさん (ワッチョイ 45e4-z+CU) mailto:sage [2023/03/27(月) 22:01:14.56 ID:dHqJNHXN0.net] 何年か前に独習買ったけど興味のあるところだけ読んだだけで7割くらいは手付けてないな ちゃんと読んだら勉強になるんだろうけどあの分厚さを前にすると気が進まない
17 名前:デフォルトの名無しさん mailto:sage [2023/03/28(火) 00:47:21.91 ID:pwf3y6wyM.net] 独習よりatmarkitのC#入門の方が合う人も多数いると思う 古いから現状にあってない場所が多いけど基本的な考えは違っていないと思う 書いてあることをそのまま読み進めるか誘導されて何か感じるかと言う面で違いがある 前にも書いたけど何冊も読めばいいと思う
18 名前:デフォルトの名無しさん mailto:sage [2023/03/28(火) 01:39:12.84 ID:XplxSxwAr.net] なんでこの子は未確認飛行にだけ当たりが強いのかね 不思議
19 名前:デフォルトの名無しさん mailto:sage [2023/03/28(火) 06:58:33.53 ID:8x+Qo82z0.net] どの本を読んでもどのサイトを読んでもいいけど、 安易にプログラミング言語学習サイト?と高額契約をしないようにね。 どんなのか知らんけど。
20 名前:デフォルトの名無しさん mailto:sage [2023/03/28(火) 06:58:57.22 ID:u3ImWfVR0.net] 思い込みの強い子なんだろう
21 名前:デフォルトの名無しさん [2023/03/28(火) 10:07:29.75 ID:fedCMYV90.net] >>11 著名なOSSってほぼ完成してるからなぁ 個人的に欲しいのはOpenTKのWinUI対応だったりかなぁ https://github.com/opentk/opentk
22 名前:デフォルトの名無しさん (スップ Sd62-M8+T) mailto:sage [2023/03/28(火) 15:57:24.36 ID:VZEZBvEld.net] オイコラは未確認飛行に何か恨みを持っていて敵視してるフシがある 妙に感情的になるし
23 名前:デフォルトの名無しさん (オイコラミネオ MM49-3uzD) mailto:sage [2023/03/28(火) 19:36:33.78 ID:hi78eiG+M.net] webランク上げすんなよw
24 名前:デフォルトの名無しさん (オイコラミネオ MM49-3uzD) mailto:sage [2023/03/28(火) 19:39:32.97 ID:hi78eiG+M.net] ++ c++になにも恨みはないよ なぜか急に不必要に持ち上げる人間が急に出てきたのがキモイだけ 信者が出るようなサイトじゃないのに がつがつワード出てくるしランク上げしてんのかと思うわ 本当に馬鹿らしい
25 名前:デフォルトの名無しさん (ササクッテロラ Spf1-wUZC) [2023/03/28(火) 19:51:13.78 ID:fqy2U+UFp.net] いや明らかにお前の方がキモい 不必要にサゲようとする明確な意思を感じる
26 名前:デフォルトの名無しさん (ワッチョイ 4d42-3uzD) mailto:sage [2023/03/28(火) 20:01:09.83 ID:AImc2+ci0.net] 初心者しかWEB見ないという前提なんだろうか?
27 名前:デフォルトの名無しさん mailto:sage [2023/03/28(火) 20:32:05.53 ID:VZEZBvEld.net] これが持ち上げランク上げとか認知バイアスにも程がある アンチが出るようなサイトじゃないのに不思議
28 名前:デフォルトの名無しさん mailto:sage [2023/03/28(火) 21:05:53.00 ID:qqfu2Biw0.net] 不必要に持ち上げてるように見えてるだけだろ。
29 名前:デフォルトの名無しさん mailto:sage [2023/03/29(水) 05:46:59.03 ID:iyrXPlc80.net] ufcppだけで0から学べるだろ
30 名前:デフォルトの名無しさん (ワッチョイ 49e5-wSlO) mailto:sage [2023/03/29(水) 08:32:42.86 ID:eQpjbl980.net] >本当に馬鹿らしい 鏡見てどうぞw
31 名前:デフォルトの名無しさん mailto:sage [2023/03/29(水) 16:36:19.86 ID:nqaTcUCud.net] >>29 他言語をそこそこ扱えるならC#ではどう書くのか調べるにはいいと思うけど プログラミング自体が初めてとかだとちときびしいかねぇ 入門とは銘打ってあるけども
32 名前:デフォルトの名無しさん mailto:sage [2023/03/29(水) 16:52:02.42 ID:eQpjbl980.net] そんなド素人レベルだと>>1 のどれ見ても無駄だと思う
33 名前:デフォルトの名無しさん mailto:sage [2023/03/29(水) 17:11:42.62 ID:HnYXmqUq0.net] すみません、質問です 名前付きパイプを作りたいのですが下記のエラーが出てしまいます Pythonなどだとエラーが出ないのでパーミッション関係ではないと思うのですが、 何が問題なのでしょうか? 環境 visual studio 2022 参考にしたサイト https://learn.microsoft.com/ja-jp/dotnet/api/system.io.pipes.namedpipeserverstream?source=recommendations&view=net-7.0 エラー内容 System.UnauthorizedAccessException: 'Access to the path is denied.' プログラム private static void ServerThread(object data) { using (NamedPipeServerStream pipeServer = new NamedPipeServerStream("testpipe")) { } }
34 名前:デフォルトの名無しさん mailto:sage [2023/03/29(水) 20:04:16.04 ID:LcQDukOu0.net] >>33 そのまま動かしてみたけどエラー再現しないなあ。learn.microsoftのサンプルで動いて自分のコードでエラー出るのならそこに書いてないusingの中身に問題があるのでは
35 名前:デフォルトの名無しさん mailto:sage [2023/03/29(水) 22:54:15.98 ID:q8lCl2vf0.net] >>33 俺もMicrosoftのコードをそのまま動かしたけど、例外が発生せず動作する。 Windows 11、Visual Studio 2022、Administrator、UAC昇格なし。 サーバープログラムは普通のexe? それともWindowsサービス? UnauthorizedAccessException と named pipe でぐぐったらちょっと引っかかるけど何か該当するのある?
36 名前:デフォルトの名無しさん mailto:sage [2023/03/29(水) 23:07:01.22 ID:Mqqhb1VW0.net] "testpipe" を変更しても同じになるか、とか、テストしてる PC を再起動しても同じかとか、気になるかも。
37 名前:デフォルトの名無しさん mailto:sage [2023/03/30(木) 01:52:26.63 ID:9v5VPr0Ga.net] VSCode でもRuby とかやっていると、たまにある。 外部プログラムからフォルダへのアクセス禁止のダイアログが表示されて、それで許可する VSCodeがバージョンアップされたら、また起こるのかも?
38 名前:デフォルトの名無しさん (ワッチョイ 2ef2-uluY) mailto:sage [2023/03/30(木) 06:33:08.35 ID:kkhtfcLh0.net] >>34 不要なUsingを全て削除してもエラーがでました Formアプリを作っているのですが、問題を切り分けるためCLIで試してみようと思います >>35 ググってヒットしたやつも試しました PipeSecurityクラスを使って云々とあるのですが、 VS 2022だとPipeSecurityクラスがなく手詰まりになりました 例えばこのページの説明: https://stackoverflow.com/questions/3478166/named-pipe-server-throws-unauthorizedaccessexception-when-creating-a-second-inst マニュアルにはあるんですがVS2022だとそんなクラスありませんとエラーになります コンパイルのターゲットバージョン等が影響してるんでしょうか? プロジェクトのプロパティを見てもターゲット指定箇所がなくて試せていませんが、、、 Visual Studio 2022の使い方で躓いているのかも、、 https://learn.microsoft.com/ja-jp/dotnet/api/system.io.pipes.pipesecurity?view=net-8.0 とりあえず、先に書いた通り CLI で試して、それでだめならVS2019に落としてみようと思います >>36 パイプ名の変更は試しました \\.\pipe\ を名前の前につけたりもしたのですがダメでした PC再起動は盲点でした 試してきます 返信が遅くなりすみません 取り急ぎ、アドバイスありがとうございます
39 名前:デフォルトの名無しさん (ブーイモ MMb6-pkhP) [2023/03/30(木) 11:52:28.88 ID:snzoMESKM.net] >>38 >マニュアルにはあるんですがVS2022だとそんなクラスありませんとエラーになります 必要なassemblyが参照されてるかどうかを確認してみたら?
40 名前:デフォルトの名無しさん (ワッチョイ fd54-+95c) mailto:sage [2023/03/30(木) 15:06:07.07 ID:WhgIs81G0.net] >>38 パーミッション関係ではない可能性も高いけど、VS Code を管理者権限で起動して試してみるとか? ※手間が少ないので提案
41 名前:デフォルトの名無しさん (スッップ Sd62-M8+T) mailto:sage [2023/03/30(木) 15:20:47.34 ID:mJKS0zrLd.net] VSのバージョンを疑うよりはターゲットフレームワークやアセンブリ参照を確認するのが先決ではなかろうか
42 名前:デフォルトの名無しさん (ワッチョイ 49e5-wSlO) mailto:sage [2023/03/30(木) 16:11:20.51 ID:AE9DWlm70.net] そもそもフレームワークのバージョン指定を何でやってるんだ?っていうのもあるけど .NET Frameworkでも.NETでも基本セット内にあるアセンブリだから 普通にプロジェクト作成してたらあるはずだけどな
43 名前:デフォルトの名無しさん (ワッチョイ 49e5-wSlO) mailto:sage [2023/03/30(木) 16:14
] [ここ壊れてます]
44 名前::04.93 ID:AE9DWlm70.net mailto: CoreとかStandardでやってる可能性? こいつらにはPipeStreamはあってもPipeSecurityは無かった気がする [] [ここ壊れてます]
45 名前:デフォルトの名無しさん (アウアウアー Sad6-z+CU) mailto:sage [2023/03/30(木) 20:01:10.08 ID:vNTBUBZQa.net] 何聞いてもそれなりに知ってる人がいるのはやっぱ凄いなここ
46 名前:デフォルトの名無しさん (ワッチョイ be2d-+ld4) mailto:sage [2023/03/30(木) 21:15:23.20 ID:CLZl5Xie0.net] PipeSecurityは.NET Core 2.1/2.2/3.0/3.1, .NET 5の場合は標準で入っていないから nugetでSystem.IO.Pipes.AccessControlを入れる必要がある learn.microsoft.comで適用対象が.NET Platform Extensionsになっているものはこのパターン
47 名前:デフォルトの名無しさん (ワッチョイ be2d-+ld4) mailto:sage [2023/03/30(木) 21:17:11.19 ID:CLZl5Xie0.net] .NET 6以降はまた標準で入ってるよ
48 名前:デフォルトの名無しさん (ワッチョイ e510-JI+e) mailto:sage [2023/03/30(木) 21:47:27.26 ID:PQ2EGsE80.net] UWPで作ってるんじゃないの
49 名前:デフォルトの名無しさん (ワッチョイ 3d07-+ld4) [2023/03/30(木) 23:08:36.03 ID:9GC6l0iD0.net] すいません。どうしてもわからないところがあるので質問したいです ヴィジュアルスタジオ2019つかっています 「開始」をクリックしてプログラムが実行はされるんですが、そのあと「続行」 という表示がでて、「開始」の表示が出てこず、プログラムを作成して実行することができません どうすればよろしいでしょうか?
50 名前:デフォルトの名無しさん (ワッチョイ 426a-40X5) mailto:sage [2023/03/30(木) 23:16:09.92 ID:AqWZdwW30.net] なんかエラー出て停まってるとか?
51 名前:sage (ワッチョイ 3d07-+ld4) [2023/03/30(木) 23:23:36.52 ID:9GC6l0iD0.net] >>49 いや、プログラムの実行は成功していて、エラーが出てる様子はないですね
52 名前:デフォルトの名無しさん (ワッチョイ be2d-uhGV) mailto:sage [2023/03/30(木) 23:52:54.11 ID:CLZl5Xie0.net] 意図せずクリックしてブレークポイントが設定されてそこで止まってるんじゃないかな 再開を押してみたら
53 名前:33 (ワッチョイ 2ef2-uluY) mailto:sage [2023/03/31(金) 00:13:56.73 ID:w3z1Snlm0.net] >>39-47 色々アドバイスありがとうございました 再起動では直らず、CLIで試したところ動きました >>47 さんがご指摘頂いたようにUWPで作っているのが原因でした WPFに変更したところ無事NamedPipe通信ができました 趣味のツール作りでUIが簡単に作れそうだと思いC#を試してたのですが、 マルチプラットフォームが意識されているだけあって出力ターゲットによって振る舞いが大きく変わるんですね 勉強になりました 皆様、ありがとうございました!
54 名前:デフォルトの名無しさん (ワッチョイ 3d07-+ld4) [2023/03/31(金) 00:42:46.76 ID:RPSTRQwt0.net] きのう、レスの番号が48だった者です。 解決しました。「ビルド」から「ソリューションのリビルド」をクリックした後、 画面の中央に{デバックを中止しますか?}というコメントが出て、「はい」をクリックしたら 「続行」から「開始」へと切り替わり、プログラム作成画面になりました。でも、なぜでしょうか?
55 名前:デフォルトの名無しさん (ワッチョイ 494f-+ld4) mailto:sage [2023/03/31(金) 04:34:09.75 ID:gyiRYrVS0.net] 以前に「開始」したプログラムがまだ終了してなかったから
56 名前:デフォルトの名無しさん (ワッチョイ 2e10-Jabn) mailto:sage [2023/03/31(金) 06:02:33.93 ID:axb4XKnm0.net] アマゾンのKDPのダラダラ書いてあるC#とかの入門書に買う価値なしと☆1のレビュー付けたら著者が顔真っ赤にして開示請求されたわ もちろん開示を断ったらそれまでだったが
57 名前:デフォルトの名無しさん (ワッチョイ ffa7-9P2W) mailto:sage [2023/04/01(土) 18:53:33.93 ID:efFm48HR0.net] >>29 >>31 正にプログラミング自体初心者だったときはufcpp筆頭にググって上位に出てくるサイトだけで習得余裕だったけどな 「いかがでしたでしょうか?」系のぺージはブラックリスト放り込んでたので必然的にほぼほぼufcppかdobonで学習していたが
58 名前:デフォルトの名無しさん (スッップ Sd9f-7hna) mailto:sage [2023/04/02(日) 10:28:56.98 ID:JLr3Pvuvd.net] そりゃまあそういう人も中にはいるかもね
59 名前:デフォルトの名無しさん (ワッチョイ ffbc-Cn9/) mailto:sage [2023/04/02(日) 11:53:54.95 ID:hVTPoi+J0.net] 最近じゃ AI がかなりいい回答を出してくれるそうじゃない。 もうすぐ AI 自身がプログラムを組んでくれるようになるだろうから、それまで粋がってればいいじゃない。
60 名前:デフォルトの名無しさん (ワッチョイ df78-kVuH) mailto:sage [2023/04/02(日) 12:06:01.91 ID:8yMDXZM90.net] 出力結果が正しいかどうか判断できる能力がないと使いこなせないぞ
61 名前:デフォルトの名無しさん (ワッチョイ 5f5f-Fdr2) mailto:sage [2023/04/02(日) 12:21:03.35 ID:8ArPExQV0.net] 自然言語対話エージェントによって「ソフトウェア設計の外注・検収の粒度」が劇的に小さくなった(作業者と直で対話するレベルに降りてきた)だけであって、今までと同じく成果物の正当性を判断できない人に(外注は)は使いこなせない
62 名前:デフォルトの名無しさん (ササクッテロラ Sp33-Vyvl) [2023/04/02(日) 12:52:31.04 ID:u6xNxXPcp.net] みずほの案件はAIにやらせた方が人的被害少なくていいかも
63 名前:デフォルトの名無しさん (ブーイモ MM4f-e2c1) [2023/04/02(日) 12:57:43.89 ID:b86hlElpM.net] >>60 成果物の正当性を判断するテストや手順をAIに作らせることができるから使い手次第になるけど相当にハードル低いよ 自然言語で正確に要件が書けて その要件をテストする方法を理解してればいい テストといってもユーザーテストのレベルで概ね問題ない
64 名前:デフォルトの名無しさん (ワッチョイ 7fbd-icd+) mailto:sage [2023/04/02(日) 15:24:34.96 ID:2lYBmHPa0.net] テストプログラムもAIに作らせるなら、それが正しいかは現状人間がチェックする必要があるな。 それをAIにやらせると、それをチェックするAIが必要になって収束しない。
65 名前:デフォルトの名無しさん (ワッチョイ 5f79-mXbH) mailto:sage [2023/04/02(日) 15:30:41.44 ID:Rf8vlqHG0.net] ユーザ「操作もAIにやってもらうからどうでもええよ」
66 名前:デフォルトの名無しさん (ブーイモ MM4f-e2c1) [2023/04/02(日) 17:48:28.78 ID:D0YauKDyM.net] >>63 段階的に抽象度があがるので発注者/要求者の理解できる範囲に収束させられる やり方によって質の違いはでるけど広い分野で発注者/要求者が十分と思える質が出せるようになる
67 名前:デフォルトの名無しさん (ワッチョイ ff2d-wDYO) mailto:sage [2023/04/02(日) 17:50:37.49 ID:8MKS+oyN0.net] 似て非なるものが出来上がって来ることが多くてなかなか収集付かなそうだ バグのある部分だけ修正とか器用なことは苦手なようだし
68 名前:デフォルトの名無しさん (ワッチョイ ffbc-Cn9/) mailto:sage [2023/04/02(日) 20:02:28.99 ID:hVTPoi+J0.net] いや、それって現状もそうなんじゃないかと。 確かに AI と発注者?の仲立ちする人材は必要だろうけど、それってどのくらいだろうね。 大部分は失業しそう。 ・・・とか言うことを以前にここだか他だかで書いたときの反応とまるで違うのが面白い。それだけ現実的になってきたってことかな。
69 名前:デフォルトの名無しさん (ワッチョイ 5f79-mXbH) mailto:sage [2023/04/02(日) 22:11:23.74 ID:Rf8vlqHG0.net] >>67 無理無理 設計書すら満足に書けねえのが現実 実はプログラムってのは 脳みそなんか使う必要ない 考えなければならないとしたら それは詳細設計書が不出来だから プログラムは常に 設計書通りに動くこと をチェックすればいい
70 名前:デフォルトの名無しさん (スプッッ Sd1f-7hna) mailto:sage [2023/04/03(月) 01:45:50.22 ID:9Lwny+qrd.net] 暴論吐いて悦に浸ってるだけではなぁ
71 名前:デフォルトの名無しさん (アウアウウー Sa23-mFyV) mailto:sage [2023/04/03(月) 10:27:57.20 ID:efbJG7yXa.net] >>68 設計者とただのコーダーを区別すればそうだな
72 名前:デフォルトの名無しさん (ササクッテロロ Sp33-W4em) mailto:sage [2023/04/03(月) 10:29:46.04 ID:qa3KNP21p.net] >>68 詳細設計書なんてアテにしてたら動かないものが出来上がる定期
73 名前:デフォルトの名無しさん (ワッチョイ 5f01-icd+) mailto:sage [2023/04/03(月) 14:40:55.62 ID:XxTTMVFq0.net] フォームに設置したメニューのアイテムが20個以上あるのですが それらのアイテムに割り当てるイベントも20個あります アイテムごとにファイルを分けるためにpartialで分割するのはありでしょうか?
74 名前:デフォルトの名無しさん (ワッチョイ ff2d-wDYO) mailto:sage [2023/04/03(月) 15:16:52.52 ID:UR8U39nS0.net] 個人的意見だが、無しだな 見通しが悪くなるだけであまりメリットが無い partialはIDE等の自動生成のためだけに留めておいた方が良いと思う
75 名前:デフォルトの名無しさん (ブーイモ MM4f-OlzB) mailto:sage [2023/04/03(月) 15:40:40.31 ID:FBDQFNn3M.net] 偏った書き方になるから万人受けはしないだろうけど・・・ ・Form内に内部クラスとしてContextMenuStripを継承したクラスを宣言 ・MenuItem(クリック時処理含む)をデザイナを使わず継承クラス内にすべて手書き するのであれば、内部クラス1個ごとにpartialにする価値あり 内部クラスなんでformのprivateメンバも問題なく読み書きできて便利だから自分もたまによくこの書き方をする
76 名前:デフォルトの名無しさん (ワッチョイ df42-kVuH) mailto:sage [2023/04/03(月) 18:46:41.53 ID:7cJzGFyX0.net] フォームのクラスに処理全部を書こうとするから見通しが悪くなる フォームのクラスにはイベントハンドラと画面の制御ぐらいだけにして 残りは別クラスを作ってそこで処理をする そうすりゃハンドラが20ぐらい並んでいても見通しが悪くなることはない
77 名前:デフォルトの名無しさん mailto:sage [2023/04/03(月) 20:26:43.72 ID:F18sx3nF0.net] 別のクラスにフォームクラスのインスタンスを渡してゴニョゴニョするのかな?
78 名前:デフォルトの名無しさん mailto:sage [2023/04/03(月) 21:09:06.76 ID:u50VhsXZ0.net] デザインを別にするならだけど。 フォームクラスのイベントハンドラを1つにまとめて、sender だったかのパラメータでイベントの発生元を識別するようにする。 この手の処理はイベントの発生元に限らずだいたい同じなので、このイベントハンドラ内の処理を共通化してすっきりさせる。 これまでは大体これでどうにかなったな。
79 名前:デフォルトの名無しさん (ワッチョイ 5fe5-9P2W) mailto:sage [2023/04/04(火) 08:49:37.59 ID:2LySch560.net] >>76 UI制御はフォーム側に書いておきゃインスタンス渡す必要なかろう
80 名前:デフォルトの名無しさん (スップー Sd1f-rBMF) mailto:sage [2023/04/04(火) 18:26:02.88 ID:J80P79rXd.net] c++clrから移住して最初につまずいた c#難しい
81 名前:デフォルトの名無しさん (ワッチョイ 7fbd-icd+) mailto:sage [2023/04/05(水) 00:11:03.06 ID:pugUgjF60.net] C++/CLIよりはるかに簡単だと思うけど…。
82 名前:デフォルトの名無しさん (ワッチョイ df2f-DB2t) mailto:sage [2023/04/05(水) 00:46:45.79 ID:wtS5Em1S0.net] つまずいたポイントを教えてほしい
83 名前:デフォルトの名無しさん (ワッチョイ ff10-MhB/) mailto:sage [2023/04/05(水) 07:04:36.94 ID:7c3G3tWr0.net] KDPのC言語本てステマが法律で禁止されたのにようやるなと
84 名前:デフォルトの名無しさん (ワッチョイ ffcf-icd+) mailto:sage [2023/04/05(水) 07:42:57.81 ID:87qn8azV0.net] >>80 バックグラウンドが違えば感じ方も違うだろ。 C++とC++/CLIの差分よりC#の仕様の方がだいぶ大きいわけだし。
85 名前:デフォルトの名無しさん (ワッチョイ 5f01-Vyvl) [2023/04/05(水) 08:14:21.55 ID:YgLkUvh+0.net] >>82 またお前か
86 名前:デフォルトの名無しさん (ワッチョイ 5fe5-9P2W) mailto:sage [2023/04/05(水) 08:45:34.25 ID:PNvz4EJs0.net] 昔Javaを多少触りはしたが基本的にC++とVB6しかやってなかったけど、C#移住全然躓かんかったけどな
87 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 09:16:23.63 ID:jU3TV3ZDa.net] C#の名前にCがついてるから文法も概念も同じだと勘違いしてるやつが結構躓いてるぞ 最初から別物と思わないとstructとか使い方全然違うからな
88 名前:デフォルトの名無しさん (ワッチョイ ff10-MhB/) mailto:sage [2023/04/05(水) 09:31:30.78 ID:7c3G3tWr0.net] CPU言語は表層が違うだけでやってる事は機械語に解読してるからみんな一緒だろ 結局アセンブラでもBASICでも1つを完璧に知ってればなんとかなる むしろ割り込みの仕組みとかシリアル通信とか基礎のハードウェアを知らんとヤバイ
89 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 09:39:54.87 ID:jU3TV3ZDa.net] 想像で物を言うとそういうイタいことになる
90 名前:デフォルトの名無しさん (スプッッ Sd1f-7hna) mailto:sage [2023/04/05(水) 09:41:25.21 ID:zOhuKeKbd.net] >結局アセンブラでもBASICでも1つを完璧に知ってればなんとかなる こういう極論をしたがるの一定数いるよね
91 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 10:02:18.58 ID:jU3TV3ZDa.net] JavaScriptですら最終的にはマシン語に翻訳されることを知らんとか同じコンパイル言語でもそれぞれできることが違うのを知らんとかも大概だし割り込みやシリアル通信はモダンな言語だとだいたい隠蔽されて考えなくていいようなライブラリがあるんでプログラミングしたことないやつが見栄を張ってるようにしか見えんのですわ
92 名前:デフォルトの名無しさん (ササクッテロロ Sp33-W4em) mailto:sage [2023/04/05(水) 10:04:39.32 ID:1qZSc/I2p.net] >>90 javascriptはマシン語には翻訳されないよ マシン語で動作している翻訳プロセスを介して動くけどな
93 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 10:14:21.30 ID:jU3TV3ZDa.net] >>91 JITコンパイラを調べて赤面してろよ
94 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 10:17:08.89 ID:jU3TV3ZDa.net] と言ったが調べる能力もなさそうだからこれ読んどけ https://devsakaso.com/javascript-about-just-in-time-compiler/
95 名前:デフォルトの名無しさん (ササクッテロロ Sp33-W4em) mailto:sage [2023/04/05(水) 10:17:48.47 ID:1qZSc/I2p.net] >>92 だからさ、Java自体がマシン語なんてもんにゃならないんだよw
96 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 10:18:28.61 ID:jU3TV3ZDa.net] JavaScriptとJavaの違いも知らんとは恐れ入ったな
97 名前:デフォルトの名無しさん (ササクッテロロ Sp33-W4em) mailto:sage [2023/04/05(水) 10:19:34.90 ID:1qZSc/I2p.net] あーおまえはパソコンの世界しか知らないからそうなんだなw
98 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 10:20:34.20 ID:jU3TV3ZDa.net] JITコンパイラを一言で言うと実行寺にソースを機械語に直すコンパイラだ このくらい今は常識だから覚えとけ
99 名前:デフォルトの名無しさん (ワッチョイ df5f-O8+C) mailto:sage [2023/04/05(水) 10:28:48.07 ID:TPpnJ1X/0.net] C#スレでなにやってんだ
100 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 10:32:48.94 ID:jU3TV3ZDa.net] C#の話か? ソースからILという仮想機械の機械語に翻訳される これをコンパイルと呼ぶ しかし実際には仮想機械を立ち上げるわけじゃなく実行時にこの仮想機械語を実行環境の機械語にコンパイルする この時に環境に合わせた最適化も行われるので高速動作が可能になっている つまり事前コンパイラとJITコンパイラの二段構えなわけだ
101 名前:デフォルトの名無しさん (ワッチョイ 5f5f-Fdr2) mailto:sage [2023/04/05(水) 10:56:42.54 ID:e64l6plW0.net] 初心者用スレでよくわからん自説を連投する様は、ただただ痛々しい
102 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 10:58:30.02 ID:jU3TV3ZDa.net] よくわからんのはお前が頭悪いからだよ 常識だと言ったろ 初心者でもみんな知ってることだ
103 名前:デフォルトの名無しさん (スップ Sd9f-7hna) mailto:sage [2023/04/05(水) 12:18:02.53 ID:rtFMpRjvd.net] そのへんにしとかないと心証を悪くするだけだよ
104 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 12:22:16.13 ID:jU3TV3ZDa.net] 名無しさんの?w
105 名前:デフォルトの名無しさん (ワッチョイ 5fe5-9P2W) mailto:sage [2023/04/05(水) 12:32:52.22 ID:PNvz4EJs0.net] 心証なんざ既にマイナスだろw
106 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 12:47:44.97 ID:jU3TV3ZDa.net] 初心者相手だと思って雑魚が嘘ばっか並べてるスレだと嘘を見破れる人は心証悪いよなあ すまんすまん 続けてくれ
107 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 13:03:35.19 ID:jU3TV3ZDa.net] JITコンパイラという常識を語るとJavaとJavaScriptの区別もつかんような雑魚と愉快な仲間たちがワラワラ湧いて出て一ミリも反論できず心証云々言ってるのはなかなか笑えたよ ほらどうした 初心者を騙してマウント取る作業を続け給えよ
108 名前:デフォルトの名無しさん (スッップ Sd9f-YxMi) mailto:sage [2023/04/05(水) 13:11:30.10 ID:xBlgsSX7d.net] はいはいそろそろお薬の時間でちゅよ
109 名前:デフォルトの名無しさん (スップ Sd9f-7hna) mailto:sage [2023/04/05(水) 13:20:25.40 ID:rtFMpRjvd.net] >>106 違う違う 主張の内容自体に対してどうこうじゃなくて 売り言葉に買い言葉ではそれまでの発言や立場を毀損するよって言いたかったのよ
110 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 13:25:12.55 ID:jU3TV3ZDa.net] 名無しさんの立場?w
111 名前:デフォルトの名無しさん (スップ Sd9f-7hna) mailto:sage [2023/04/05(水) 13:34:30.89 ID:rtFMpRjvd.net] 別に反論するつもりも敵対するつもりもなくて ただ憂慮してのつもりだったんだけど汲み取ってもらえないものかね・・・
112 名前:デフォルトの名無しさん (ワッチョイ 5fe5-9P2W) mailto:sage [2023/04/05(水) 13:47:57.71 ID:PNvz4EJs0.net] 何言うても無駄だと思うぞ
113 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 13:49:05.84 ID:jU3TV3ZDa.net] ごまかし方が下手過ぎて笑えるが本気でやってんのそれ?
114 名前:デフォルトの名無しさん (ワッチョイ df5f-O8+C) mailto:sage [2023/04/05(水) 13:54:30.23 ID:TPpnJ1X/0.net] > なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。 > C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください。見かけたらNGしましょう。相手してしまったらあなたも荒らしです
115 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/05(水) 14:06:42.90 ID:jU3TV3ZDa.net] >>113 よう荒し
116 名前:デフォルトの名無しさん (スップ Sd9f-7hna) mailto:sage [2023/04/05(水) 14:29:22.61 ID:rtFMpRjvd.net] >>112 それ俺に対して言ってる?
117 名前:デフォルトの名無しさん (ワッチョイ ff10-MhB/) mailto:sage [2023/04/05(水) 14:51:15.57 ID:7c3G3tWr0.net] CPUの基礎構造も知ってるとええで アキュムレータとかスタックポインタとかプログラムカウンタとかレジスタとか言われてもわからんだろ その辺の概念がわかるとどの言語も楽勝 割り込みも概念が解ってないと割り込みルーチンで長文書くとかアホなことしだす
118 名前:デフォルトの名無しさん (ワッチョイ 5f07-VQD5) mailto:sage [2023/04/05(水) 15:08:53.71 ID:sB818/CP0.net] 割り込みルーチン使うとか今どきねーよ
119 名前:デフォルトの名無しさん (ブーイモ MM9f-e2c1) [2023/04/05(水) 15:13:47.52 ID:BHJ5CxFKM.net] >>116 C#もJavaもJavaScriptも全然理解してないことが露呈したあとに どの言語も楽勝とか言っても恥ずかしいだけですよ
120 名前:デフォルトの名無しさん (オッペケ Sr33-vkAy) mailto:sage [2023/04/05(水) 22:11:02.39 ID:sz/zgQ2Fr.net] 無責任にデカいこと言った方が勝ちみたいなゲームはそろそろ卒業してほしい
121 名前:デフォルトの名無しさん (ワッチョイ 7fbd-icd+) mailto:sage [2023/04/05(水) 23:52:36.91 ID:pugUgjF60.net] Z80アセンブラ→68000アセンブラ→C→C++→Java→C#→C++/CLI ときたのでつまづかなかった。 あとTcl/TK、sh、Perl、JavaScript、PowerShell、Python。 Rustを試したいが時間が取れない。
122 名前:デフォルトの名無しさん (スプッッ Sd1f-j25d) [2023/04/06(木) 00:06:12.09 ID:3X1nsxKId.net] >>120 マシン語直接入力がないのでやり直し
123 名前:120 (ワッチョイ 7fbd-icd+) mailto:sage [2023/04/06(木) 00:14:30.25 ID:XbnIA9J60.net] >>121 Z80時代はハンドアセンブルしていた。まだ小学生でアセンブラを買う金がなかったので。 よく使う命令は16進の値を覚えていた。
124 名前:デフォルトの名無しさん (オイコラミネオ MM53-icd+) mailto:sage [2023/04/06(木) 00:23:17.66 ID:2IAiy+HBM.net] RET C9 サイクル10的なのを覚えてたんだろ ノートに相対ジャンプのアドレス計算書いたり それで言語ができると何の関係があるんだろうか?
125 名前:デフォルトの名無しさん (ワッチョイ ff8e-j25d) [2023/04/06(木) 02:08:29.77 ID:5BQAgGMd0.net] >>122 後付け乙
126 名前:デフォルトの名無しさん (ワッチョイ 7f4b-pTXX) mailto:sage [2023/04/06(木) 05:40:05.28 ID:ehcl4uYU0.net] 小学生でマイコンとか渋いな
127 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/06(木) 08:39:03.94 ID:hFBJipKZa.net] >>122 その当時の普通だ プアな環境でハンドアセンブル繰り返してりゃ自然に覚えるわ そこから数十年かけて全く進歩できてないのは無能としか言いようがない お前の培った技能は今全部自動化されてるんだよw コンピュータはお前より遥かにハードを使いこなして上手に最適化するからお前は完全に無用の長物というわけだ
128 名前:デフォルトの名無しさん (ラクッペペ MM4f-+zBY) mailto:sage [2023/04/06(木) 09:29:45.22 ID:1UIy0vwOM.net] マイコン オーディオ アマチュア無線 80年代頃の趣味の最先端
129 名前:デフォルトの名無しさん (ササクッテロロ Sp33-W4em) [2023/04/06(木) 09:53:23.79 ID:etBQDNCap.net] Z80は拡張命令があって命令数が腐るほどあったから全部覚えてられなかったよな?
130 名前:デフォルトの名無しさん (ワッチョイ 7f79-u6c4) mailto:sage [2023/04/06(木) 09:56:07.98 ID:UaY7mTo60.net] >>127 それってどれも手段であって趣味ではないよね その最先端のを使ってどんなコンテンツを楽しんでるかが趣味なんだよね きっとろくでもないんだろうね
131 名前:デフォルトの名無しさん (ラクッペペ MM4f-+zBY) mailto:sage [2023/04/06(木) 10:01:32.18 ID:WxcUnJlHM.net] その後90年代あたりからオタク化するか理系エリート化するかが人生の分岐点
132 名前:デフォルトの名無しさん (オッペケ Sr33-vkAy) mailto:sage [2023/04/06(木) 10:02:41.19 ID:50z6rG5Kr.net] 何でもいいからとにかく人に噛み付きたいみたいなのはそろそろ卒業してほしい
133 名前:デフォルトの名無しさん (ラクッペペ MM4f-+zBY) mailto:sage [2023/04/06(木) 10:06:14.44 ID:WxcUnJlHM.net] まだ専攻分野で情報分野を扱う大学なども少なく大体は電気科か電子科で学ぶものが多かった時代
134 名前:デフォルトの名無しさん (ワッチョイ df5f-O8+C) mailto:sage [2023/04/06(木) 10:15:38.38 ID:cLuUm0Wb0.net] スレチだっつの マ板の雑談部屋行けよ
135 名前:デフォルトの名無しさん (アウアウウー Sa23-doF5) [2023/04/06(木) 22:05:52.10 ID:7WsUOQMza.net] こんばんは 専門学校で情報処理を2年間学び、今春からIT会社入社です 学校ではC#を学び、それを活用できる会社に入ったのですが、上司からC++が中心と言われてしまいました 使用感としてはC#と大差ないと言われたのですが、実際にどちらも使用したことがあるPGさん目線ではどんな感じでしょうか
136 名前:デフォルトの名無しさん (ワッチョイ 5f07-VQD5) mailto:sage [2023/04/06(木) 22:17:08.18 ID:O4MLKnY
] [ここ壊れてます]
137 名前:M0.net mailto: 大差ないとか大嘘で草 テンプレートスパゲティの洗礼を受けるがいい [] [ここ壊れてます]
138 名前:デフォルトの名無しさん (ワッチョイ 5f07-VQD5) mailto:sage [2023/04/06(木) 22:18:50.54 ID:O4MLKnYM0.net] あとC++はまともに日本語が扱えない C#と用途が被ることってゲームくらいじゃね
139 名前:デフォルトの名無しさん (スプッッ Sd1f-j25d) [2023/04/06(木) 22:50:32.42 ID:9OXigCoVd.net] >>134 お前落ちこぼれだろ 金と2年間も時間を使ってC#とC++の違いもわからんとは使いものにならんわ
140 名前:デフォルトの名無しさん (ワッチョイ 5f07-VQD5) mailto:sage [2023/04/06(木) 22:58:34.92 ID:O4MLKnYM0.net] ていうか派遣か超絶ブラックな気配しか感じないわ まともな企業なら会社が就職希望者を選抜するがお前の会社は嘘をついて人を集めてる こんなわかりやすい地雷が見えてるなら地雷も一つだけじゃなく他にも心当たりあるだろ
141 名前:デフォルトの名無しさん (ワッチョイ ffbc-Cn9/) mailto:sage [2023/04/06(木) 23:10:52.40 ID:0qi4RJoe0.net] >>134 素人には見た目は同じように見えるかも。 C# では考えられないような罠があちこちにあったりするから最初はタイヘンかもしれないけど、頑張れ。 コツが分かればかなり自由にいろいろ出来て、自分的にはかなり好きな言語なんだけどね。
142 名前:デフォルトの名無しさん (ワッチョイ 7f79-u6c4) mailto:sage [2023/04/07(金) 00:20:18.59 ID:hzbXpJpo0.net] 断言しておくけど専門でC#の学習経験しかない奴にC++の案件は100%こなせない 今後C#案件が自分に回ってこなさそうであれば完全に入る会社を間違ったな あーあ経歴にさらに傷が付いちゃった
143 名前:デフォルトの名無しさん (オイコラミネオ MM53-icd+) mailto:sage [2023/04/07(金) 00:47:18.51 ID:zb+54C3zM.net] 専門学校でC#を教えてるなんて 選ぶ学校間違えてる そんなところに行かなくても独習でとは思う
144 名前:デフォルトの名無しさん (スッップ Sd9f-j3u0) mailto:sage [2023/04/07(金) 00:50:58.62 ID:jfyWzwkJd.net] まーたっくの初心者で趣味でC#やろうとしたが言語仕様の壮大さに負けてKotlin~Flutter目指すことにしたサヨナラ
145 名前:デフォルトの名無しさん (ワッチョイ 5f07-VQD5) mailto:sage [2023/04/07(金) 01:19:52.32 ID:1Moiy0gQ0.net] 一つの言語すら怖気づくやつが目指しても無駄だけどな
146 名前:デフォルトの名無しさん (ササクッテロロ Sp33-W4em) [2023/04/07(金) 09:53:19.46 ID:9oOSsjTpp.net] 言語仕様はそんなに壮大じゃ無いが、使えるクラスとメソッドが異常に多いし、クラス毎に出来る事が偏ってるから面倒だとは思う
147 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/07(金) 10:00:57.11 ID:UzsORH9Sa.net] winformsとかwpfとかuwpとかxamarinとかmauiとかunoとかblazorとかアプリ用フレームワークの乱立と迷走が酷いのは事実 さっさと統一しろおら
148 名前:デフォルトの名無しさん mailto:sage [2023/04/07(金) 11:53:01.40 ID:GJ9VlQpa0.net] MS<もうWinFormsは機能強化しないって言ったのに、みんな使い続けてる・・・
149 名前:デフォルトの名無しさん (ワッチョイ 5fe5-9P2W) mailto:sage [2023/04/07(金) 12:29:32.20 ID:NtDbqE3F0.net] じゃあWindowsなんとかしろよw
150 名前:デフォルトの名無しさん (ササクッテロラ Sp33-KR65) [2023/04/07(金) 12:43:55.58 ID:y1ANyd0Sp.net] WinFormsまた機能強化しますと言えばいいだけのこと
151 名前:デフォルトの名無しさん (アウアウウー Sa23-doF5) [2023/04/07(金) 13:32:40.19 ID:kQPpgDuua.net] >>141 だいたいの専門学校の情報処理科だとC#は必ずやってるもんだよ はよやめろとも思うが需要がそれなりにあるんだからしゃーない
152 名前:デフォルトの名無しさん (ワッチョイ dfae-1sX2) mailto:sage [2023/04/07(金) 13:50:48.21 ID:GJ9VlQpa0.net] MS<機能強化はしないと言ったけど、仕方ないから高解像度に対応してあげるからね MS<機能強化はしないと言ったけど、仕方ないからUWPのライブラリを呼べるようにしてあげるからね 地味だけど大きい改良してるんだよなw
153 名前:デフォルトの名無しさん (ラクッペペ MM4f-gzdx) mailto:sage [2023/04/07(金) 13:55:07.67 ID:yidNy5+ZM.net] がっこうって四則演算とコンソールアプリ程度ジャネーの? しらんけど
154 名前:デフォルトの名無しさん (スフッ Sd9f-YxMi) mailto:sage [2023/04/07(金) 15:06:19.52 ID:ekvLskPDd.net] youtuber育成科でもあったら受講してみたいな 引退後はお喋り配信でもして暮らしたい
155 名前:デフォルトの名無しさん (オッペケ Sr33-9xvd) [2023/04/07(金) 15:06:57.10 ID:MubD/dkJr.net] >>150 もうすぐMVVM対応の改良もはいるよ
156 名前:デフォルトの名無しさん (ワッチョイ dfae-1sX2) mailto:sage [2023/04/07(金) 15:11:03.21 ID:GJ9VlQpa0.net] >>153 ツンデレ面倒見が良すぎるなw
157 名前:デフォルトの名無しさん (ワッチョイ 5f5f-0Qwp) mailto:sage [2023/04/07(金) 17:28:59.51 ID:n3YFdE+90.net] >>153 え?マジで??
158 名前:デフォルトの名無しさん (ワッチョイ df07-DB2t) [2023/04/07(金) 18:24:33.31 ID:ZyGCTKiu0.net] すいません 本に書いてあったコードで質問があるのですが、 d(オブジェクト名).Text (プロパティ)="変数aの値は"+a+"です。" というコードを打ってもエラーが出ます。 本には「この2つの+演算子の一方のオペランドには“ “でかこまれた文字列の値が含 まれています。このとき+演算子は四則演算の加算ではなく、 文字列として連結するという処理を行います」 とかいてありますが、なぜ 変数aの値はaです。 という文字が出ず、エラーが出るのですか?
159 名前:デフォルトの名無しさん (ワッチョイ ff7b-UQeZ) mailto:sage [2023/04/07(金) 18:32:13.85 ID:78O19JXu0.net] >>156 なぞなぞかな?原因をそれだけでエスパーしろと dがnullの可能性、aが定義されてない可能性? ともかくエラー内容というか把握している情報くらい書いてくれ
160 名前:デフォルトの名無しさん (スプッッ Sd9f-j25d) [2023/04/07(金) 18:32:16.65 ID:nu6NXWXzd.net] 馬鹿ってエラーメッセージも提示しないよな 馬鹿過ぎるから、オブジェクト名とかプロパティとか全角()を打ち込んでいそう
161 名前:デフォルトの名無しさん (オイコラミネオ MM53-icd+) mailto:sage [2023/04/07(金) 18:33:21.02 ID:377j0hRUM.net] どこかで間違えてるからでしょう とりあえずエラー内容を書いてください あと これは打ち込んだコードをそのままコピーしてませんよね? 全角文字と半角文字が混ざってて普通は動きません 行末に ; を付けましょう それと変数aの値はaですか?
162 名前:デフォルトの名無しさん (ワントンキン MMdf-FlsS) [2023/04/07(金) 18:41:20.55 ID:htDU62+OM.net] >>159 全角;を入力するぞ
163 名前:デフォルトの名無しさん (ワッチョイ 5f01-9xvd) [2023/04/07(金) 18:48:43.17 ID:C4KkKia50.net] >>155 メニューやボタン類がICommand対応になる的な
164 名前:デフォルトの名無しさん (オイコラミネオ MM53-icd+) mailto:sage [2023/04/07(金) 19:04:25.43 ID:377j0hRUM.net] 質問者の人はビビらないで続けて欲しい 誰でも最初はこんなもんだ 一番の馬鹿はテンプレが読めず初心者相手にマウント取るしかできないんでそういうのは無視でいい
165 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/07(金) 19:07:05.47 ID:lYV4UoJIa.net] 5chで聞くとこうなるのがわかってるのにアホなのかな?
166 名前:デフォルトの名無しさん (ワッチョイ df07-DB2t) [2023/04/07(金) 19:32:22.30 ID:ZyGCTKiu0.net] ありがとうございます 原因調べてみます たぶん;の付け忘れか 型名 a というふうにaを変数化してなかったからだと思います。
167 名前:デフォルトの名無しさん (ワンミングク MM03-FlsS) [2023/04/07(金) 19:35:04.00 ID:g9oDCLqTM.net] あくまでエラーメッセージを書かない馬鹿
168 名前:デフォルトの名無しさん (ワッチョイ 5f07-VQD5) mailto:sage [2023/04/07(金) 19:35:52.08 ID:1Moiy0gQ0.net] >>161 とっくに対応してるが?
169 名前:デフォルトの名無しさん (ワッチョイ 5f07-VQD5) mailto:sage [2023/04/07(金) 19:37:35.11 ID:1Moiy0gQ0.net] >>165 いいんだよ 解決しなくても話し相手になればそれで満足して帰ってくれるんだから 車のエンジンがかからないからどうしようと女に聞かれたらバッテリーがどうこう言っちゃだめ 同情して雑談するのが正解
170 名前:デフォルトの名無しさん (ワンミングク MM03-FlsS) [2023/04/07(金) 19:41:22.07 ID:g9oDCLqTM.net] >>167 林檎を一緒に買いに行くのか!
171 名前:デフォルトの名無しさん (アウアウウー Sa23-VQD5) mailto:sage [2023/04/07(金) 19:43:55.45 ID:lYV4UoJIa.net] >>168 マックのシェアが上がったのはそういうわけ
172 名前:デフォルトの名無しさん (オイコラミネオ MM53-icd+) mailto:sage [2023/04/07(金) 19:47:35.73 ID:377j0hRUM.net] 以前17歳の少年にmacはwindowsも動くから開発するならmac一択でwindows機は買わなくていいって言われたよ そういう理由でユーザーを増やしてる面もある 情報系の大学ではmac持ってる生徒が多い
173 名前:デフォルトの名無しさん (ワッチョイ 5fe5-gzdx) mailto:sage [2023/04/07(金) 19:53:07.95 ID:0nhk3VLO0.net] >>170 https://twitter.com/desk_novel_3260/status/1499848946780614656/photo/1 (deleted an unsolicited ad)
174 名前:デフォルトの名無しさん (オイコラミネオ MM53-icd+) mailto:sage [2023/04/07(金) 19:54:54.12 ID:377j0hRUM.net] 自分はmac上のwindowsでしか起こらないバグもあるかもしれないから意味ないと思うと答えたが そんなの言いだしたらきりがないなと後で思った
175 名前:デフォルトの名無しさん (ワッチョイ 92bd-Rzwh) mailto:sage [2023/04/08(土) 00:55:25.26 ID:3Ljte8fK0.net] Windowsのライセンスを用意してMacで動かすくらいなら、 安いWindows PCも買ったほうが同時に使えるし便利だと思う。
176 名前:デフォルトの名無しさん (ラクッペペ MM66-DefY) mailto:sage [2023/04/08(土) 02:10:45.67 ID:HLFl9C7qM.net] どうせライセンス違反の不正使用だろ
177 名前:デフォルトの名無しさん (ワッチョイ 92bd-Rzwh) mailto:sage [2023/04/08(土) 02:25:03.68 ID:3Ljte8fK0.net] >>134 プログラミング言語は複数覚えていったほうがいいから、まあ頑張れ。
178 名前:デフォルトの名無しさん [2023/04/08(土) 18:34:36.54 ID:fmzyFWYH0.net] 文法が似ているだけで、C++とC#とでは必要な知識の幅が全然違うような気がしてしまう
179 名前:デフォルトの名無しさん mailto:sage [2023/04/08(土) 19:26:35.54 ID:3Ljte8fK0.net] C++と言っておきながら、実はC++/CLIだったりするとさらに大変。
180 名前:デフォルトの名無しさん mailto:sage [2023/04/08(土) 21:45:50.77 ID:CCnvrQGQ0.net] >>134 STLも使えるしC言語よりはマシ
181 名前:デフォルトの名無しさん (ササクッテロロ Spd1-pbGt) [2023/04/09(日) 14:11:13.69 ID:E8Nnpiwgp.net] C#がイニシアチブ取れる最大の理由はライブラリやクラスメソッドの豊富な点 CやC++は環境依存が高過ぎて無理だった
182 名前:デフォルトの名無しさん (ワッチョイ 0279-90pI) mailto:sage [2023/04/09(日) 15:24:20.69 ID:I9Qf3W7D0.net] C#は実行環境が基本Windowsで処理系も1個しかなく 外部が作った最大公約数的な規格やらに振り回される事もないからね 言語の在り方としてはDelphiからC#まで設計の中心に居たアンダースヘルスバーグの影響が一番でかいだろうけども
183 名前:デフォルトの名無しさん (オイコラミネオ MM29-Ay2p) mailto:sage [2023/04/09(日) 15:42:52.26 ID:0jWwjzccM.net] へじたんというかボーランドから引っ張って来たグループ全体の影響だね へじたんは10年ぐらい前にtsに行っちゃって多分だけどずっといない tsの改善提案もたまにする twitterでts10周年について言及してたけどC#は言及されない
184 名前:デフォルトの名無しさん (ワッチョイ 412d-dXWb) mailto:sage [2023/04/09(日) 16:10:51.58 ID:fcL4nlHr0.net] C++は美しくないので使うのやめた方がいい
185 名前:デフォルトの名無しさん (オイコラミネオ MM29-Ay2p) mailto:sage [2023/04/09(日) 16:22:39.13 ID:0jWwjzccM.net] c++はパフォーマンス目的じゃないと使うべきじゃないかな(個人の感想です) でも本当にパフォーマンス目的なら積極的に使うべきで地球の温暖化予防になる .net frameworkの古い部分はc++的に書かれてるところが点在してる 変数名とか… ヘルパークラスの中身に多い気がする そもそもがC#はデビューしてなかったんだからMSの中にいたのは大部分がCかC++プログラマだったから仕方がない
186 名前:デフォルトの名無しさん (ワンミングク MM52-k0ie) [2023/04/09(日) 17:02:57.88 ID:IIry9qCTM.net] >>183 >そもそもがC#はデビューしてなかったんだから なぜこういう嘘を書くのか
187 名前:デフォルトの名無しさん (オイコラミネオ MM29-Ay2p) mailto:sage [2023/04/09(日) 17:10:39.08 ID:0jWwjzccM.net] >>184 え?どこが嘘だと思った? はっきり指摘してくれよ C#発売前にどうやってネイティブのC#プログラマ募集すんの? 2002年にC#が発売されたんだけどその時,net framewarkはついていた
188 名前:デフォルトの名無しさん (スプッッ Sd22-RMXA) [2023/04/09(日) 18:39:12.85 ID:99/FlESqd.net] >>185 MS内部の開発は何を使ってると思っているんだ? それとも発売されないと内部で使ってはいかんのか?
189 名前:デフォルトの名無しさん (オイコラミネオ MM29-Ay2p) mailto:sage [2023/04/09(日) 18:56:34.94 ID:0jWwjzccM.net] >>186 話がかみ合ってないと言うかなんでIDコロコロしてんの? それとどこが嘘なのかはっきり書けよ ,net frameworkを開発したときにC#で書いたプログラマはもともとなにプログラマでしたか? ネイティブC#プログラマじゃないでしょ? おそらくCかC++(それかボーランドから流れて来たobject Pascalプログラマ)じゃないの? だから.net frameworkのソースにC++のような名残が多いんだろ? C#ブートストラップも最初からC#で書いてたと思ってそうで怖い
190 名前:デフォルトの名無しさん (オイコラミネオ MM29-Ay2p) mailto:sage [2023/04/09(日) 19:02:10.71 ID:0jWwjzccM.net] MS内部の開発者の多くはCかC++プログラマ それまで存在しなかったC#で書かれた.net frameworkのソースを書いたのはC#を覚えたその人たち どうしてこんな簡単なこともわからないんだよ
191 名前:デフォルトの名無しさん (スプッッ Sd82-RMXA) [2023/04/09(日) 20:48:24.64 ID:cX6/BjZ9d.net] >>187 馬鹿って例えばDelphiのライブラリは何で作ってあると思っているんだ?
192 名前:デフォルトの名無しさん (ワッチョイ a968-pZgd) mailto:sage [2023/04/09(日) 20:59:09.16 ID:y3zvbzeA0.net] C++からC#を覚えたんだけど、ヘッダー不要、メモリー解放不要ってだけでほれぼれしたわ
193 名前:デフォルトの名無しさん mailto:sage [2023/04/09(日) 22:59:42.51 ID:0jWwjzccM.net] >>189 いい加減に理解しようよ 新しい言語が出来てその言語でライブラリを書く人は他の言語の経験がある人だろ プログラムもOOPも始めての人間には不可能てわかるだろ もちろんその言語は初心者で他のプロジェクトなんて経験してない なんでこの人は小学生並みの思考力もないんだろうか?
194 名前:デフォルトの名無しさん mailto:sage [2023/04/09(日) 23:13:41.21 ID:jMM6L0eg0.net] 今、画面をC#で作って、性能が必要な部分をCで書いてる。実質C++みたいな書き方してるけど。 固定長配列でよいところは固定長にして余計はメモリ確保・解放を排除、 スタックを使いすぎないようにTLSにしたり、 スレッドプールで実行スレッドがコロコロ変わるけど同一スレッドの間だけTLSを使ったり。 性能は良く、ワットパフォーマンスも良いと自画自賛しているけど、 書くのに時間がかかるし、メモリ管理で二重Freeや誤って0バイトメモリで変な落ち方して 調査に時間がかかった。
195 名前:デフォルトの名無しさん mailto:sage [2023/04/09(日) 23:23:40.43 ID:a3JbCGzy0.net] C言語はB言語で書かれたが直ぐにC言語で書き直されたという 故にC言語のライブラリはC言語で開発されている と、例外中の例外を書いてみる
196 名前:デフォルトの名無しさん mailto:sage [2023/04/09(日) 23:31:44.05 ID:fcL4nlHr0.net] セルフホストは別に例外じゃないよ コンパイル型の言語は最終的にセルフホストになるだろ
197 名前:デフォルトの名無しさん (ワッチョイ c5ae-izbf) mailto:sage [2023/04/10(月) 13:30:15.85 ID:ezn0wDlC0.net] >>153 >MVVM ツールキットの概要 >このパッケージは .NET Standard を対象としているため、任意のアプリ プラットフォーム (UWP、WinForms、WPF、Xamarin、Uno など) で使用できます。 いつの間に対応してたんだ・・・ これでInvokeしなくて済むのか
198 名前:デフォルトの名無しさん (ワッチョイ 4666-cPl8) [2023/04/10(月) 13:39:28.19 ID:gE7mrU5A0.net] 下記のコードでcomboBox1.Textに"a2"を設定しているのですが comboBox1は"a"のままです。設定を反映する方法はあるでしょうか。 public Form1() { InitializeComponent(); comboBox1.Items.Add("a"); } private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { comboBox1.Text = "a2"; }
199 名前:デフォルトの名無しさん (ワッチョイ 412d-dXWb) mailto:sage [2023/04/10(月) 14:10:01.67 ID:GqegRxcS0.net] comboBox1.Items.Add("a2"); これを先に書かないから変更されない
200 名前:デフォルトの名無しさん (ワッチョイ 6e7b-k+0N) mailto:sage [2023/04/10(月) 18:04:17.45 ID:qyQrCJTA0.net] >>196 まずcomboBox.TextとcomboBox.Itemは別のプロパティでTextを変えても表示されない。表示されるのはcomboBox.Item Item"a"を選択したときに表示を"a2"に変えたいということなら private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { comboBox1.SelectedIndexChanged -= comboBox1_SelectedIndexChanged;//Indexを変えるのでイベントを外す if (comboBox1.SelectedIndex == comboBox1.Items.Count - 1)//登録されている最後のIndexを参照する { comboBox1.Items.RemoveAt(comboBox1.Items.Count - 1);//Itemコレクションの内容を変えるために元のアイテムを削除する comboBox1.Items.Add("a2");//"a2"を新しく登録する comboBox1.SelectedIndex = comboBox1.Items.Count - 1;//コレクションの内容を変えるとIndexが変わるのでIndexを指定する } comboBox1.SelectedIndexChanged += comboBox1_SelectedIndexChanged; } たぶんこのくらい必要
201 名前:デフォルトの名無しさん (ワッチョイ 5234-Ay2p) mailto:sage [2023/04/10(月) 19:06:06.56 ID:CWrknl8o0.net] comboBoxのテキストを変更できるようにするプロパティがあったよね?
202 名前:デフォルトの名無しさん (ワッチョイ 25e4-eWK2) mailto:sage [2023/04/10(月) 19:44:46.51 ID:1G6uJTu10.net] ワーカーサービスとサービスアプリって別物なの?
203 名前:デフォルトの名無しさん (ワッチョイ 6e10-+HcC) [2023/04/10(月) 19:54:33.42 ID:025b1B4Q0.net] >>196 BeginInvoke(new Action(() => comboBox1.Text = "a2"));
204 名前:デフォルトの名無しさん (ワッチョイ 8205-QZiB) [2023/04/11(火) 07:47:00.52 ID:p3uKa8IZ0.net] comboBoxの者ですが例示頂いたサンプルコードで期待の動作をしました ありがとうございます .Textのセッターで書き換えられたら直感的だなと思いつつ別の仕様で都合悪いんでしょうね
205 名前:デフォルトの名無しさん (ワッチョイ 6e10-bvj9) mailto:sage [2023/04/11(火) 10:42:20.15 ID:LwvkJIu70.net] 大学だとmacは買うなと名指しで書かれてた 買うのはWindows11入りi5以上RAM8G以上のoffice付
206 名前:デフォルトの名無しさん (ササクッテロロ Spd1-pbGt) [2023/04/11(火) 10:44:39.71 ID:u/0zmHtvp.net] >>204 Mac「も」買えば無問題だぞ
207 名前:デフォルトの名無しさん (ワッチョイ 495f-h/KG) mailto:sage [2023/04/11(火) 10:56:37.78 ID:U1LmOZAY0.net] 365のアカデミック垢(Education A3/A5)を配布してない大学なんだろうか?
208 名前:デフォルトの名無しさん (ワッチョイ a9e5-/aea) mailto:sage [2023/04/11(火) 11:00:45.32 ID:bVzsGz390.net] >>204
209 名前:デフォルトの名無しさん (ワッチョイ 6e10-bvj9) mailto:sage [2023/04/11(火) 11:18:50.69 ID:LwvkJIu70.net] officeは大学によって配布とそうじゃないとこがあるな 合格通知に付いていたパソコン購入の栞にはどこも同じようなスペックを書いてあった 毎年トラブルになってるらしくmacは非推奨、忘れてたけどSSDを強く推奨されてた。
210 名前:デフォルトの名無しさん (オッペケ Srd1-QZiB) [2023/04/11(火) 12:05:57.60 ID:Owu2Qdxkr.net] >>203 情報系大学ならOS問わず乗り越えて欲しいよね 強いて言えばニンテンドースイッチをハックしてOffice365動作させるくらいの気概が欲しい
211 名前:デフォルトの名無しさん (ワッチョイ 412d-dXWb) mailto:sage [2023/04/11(火) 13:07:41.05 ID:0aEeU09s0.net] 東大はMacだもんな
212 名前:デフォルトの名無しさん (ワッチョイ 6e10-bvj9) mailto:sage [2023/04/11(火) 15:24:29.19 ID:LwvkJIu70.net] CPUが非intelな時点で選択肢には入らんでしょ
213 名前:デフォルトの名無しさん (ワッチョイ 4642-Ay2p) mailto:sage [2023/04/11(火) 15:24:33.92 ID:M16SAa5X0.net] >>207 SSDをSODと空目して、時間を止めるボタンを購入しちまう人もいるだろうさ
214 名前:デフォルトの名無しさん (ワッチョイ a9e5-/aea) mailto:sage [2023/04/11(火) 15:35:49.07 ID:bVzsGz390.net] amdは許して
215 名前:デフォルトの名無しさん (ワッチョイ c5ae-izbf) mailto:sage [2023/04/11(火) 15:57:37.42 ID:E8WJry610.net] 経済学部とかならOS関係なくクラウドで全部出来るけども、 情報系なら機器制御とかもやるから、OS問わずは無理だろ
216 名前:デフォルトの名無しさん (ワッチョイ eebb-9Wvd) [2023/04/11(火) 17:07:55.85 ID:xhbQUVf+0.net] 授業内容によってはMac非推奨もあり得るだろう ただどこの大学のどの学部なのか書かないことには、何に向かないのか参考にもならないだろう
217 名前:デフォルトの名無しさん (ワッチョイ 6e7b-k+0N) mailto:sage [2023/04/11(火) 18:13:31.92 ID:SxJtNgeT0.net] ワッチョイ 6e10 3回 サクッテロロ Spd1 ワッチョイ 495f ワッチョイ a9e5 オッペケ Srd1 ワッチョイ 412d ワッチョイ 4642 ワッチョイ a9e5 2回 ワッチョイ c5ae ワッチョイ eebb
218 名前:デフォルトの名無しさん (ワッチョイ 9194-izbf) mailto:sage [2023/04/11(火) 19:01:55.92 ID:yYayl2te0.net] https://books.google.co.jp/books?id=4CJdEAAAQBAJ&pg=PA112#v=onepage&q&f=false の内容に関しての質問なんだけど、 Fooのコンストラクタをstaticコンストラクタに書き換えると、何で3 3になるの? Console.WriteLine(Foo.X); // 3 class Foo { public static Foo Instance = new Foo(); public static int X = 3; static Foo() => Console.WriteLine(X); // 3 }
219 名前:デフォルトの名無しさん (ワッチョイ d907-NO7/) mailto:sage [2023/04/11(火) 19:08:53.25 ID:gigFj8HV0.net] なんでってConsole.WriteLineが2回呼ばれてんじゃん
220 名前:デフォルトの名無しさん (ワッチョイ 9194-izbf) mailto:sage [2023/04/11(火) 19:14:24.00 ID:yYayl2te0.net] >>217 いや、だから static を付けない場合は、最初の出力は 0 なんだって で、何故 static を付けると、3 になるかという事を聞きたいわけ
221 名前:デフォルトの名無しさん (ワッチョイ d907-NO7/) mailto:sage [2023/04/11(火) 19:17:23.77 ID:gigFj8HV0.net] 何がわからんのかマジでわからん 初期化したらそれが出力されるのは当たり前じゃね?
222 名前:デフォルトの名無しさん (ワッチョイ 9194-izbf) mailto:sage [2023/04/11(火) 19:19:52.43 ID:yYayl2te0.net] >>219 で、static を付けた場合と付けなかった場合の出力結果の違いはどういう理由?
223 名前:デフォルトの名無しさん (ワッチョイ 9194-izbf) mailto:sage [2023/04/11(火) 19:21:27.61 ID:yYayl2te0.net] >>220 デフォルトコンストラクタ Foo() の直前の static の事ね
224 名前:デフォルトの名無しさん (ワッチョイ d907-NO7/) mailto:sage [2023/04/11(火) 19:22:18.16 ID:gigFj8HV0.net] どこにstaticつける話をしてるのか知らんけどクラスメンバーかインスタンスメンバーかの違い 静的コンストラクタはクラスメンバーがアクセスされる時点で初期化が終わってることが保証される
225 名前:デフォルトの名無しさん (ワッチョイ d907-NO7/) mailto:sage [2023/04/11(火) 19:23:14.19 ID:gigFj8HV0.net] >>221 それはコンストラクタじゃなくて静的コンストラクタだぞ 多分その本のもっと前に書いてある
226 名前:デフォルトの名無しさん (ワッチョイ 9194-izbf) mailto:sage [2023/04/11(火) 19:39:59.03 ID:yYayl2te0.net] >>222-223 staticを付けない、コンストラクタの場合、class Fooの最初の行でインスタンスが生成された時点では、Xが3に初期化されてないので、0になるが、 staticを付けた静的コンストラクタの場合、class Fooの最初の行とは無関係に、既にXが3に初期化された状態で Console.WriteLine(X) が実行済みなのね public static Foo Instance = new Foo(); をコメントアウトして実行させてみて、やっと気付いた 有難う
227 名前:デフォルトの名無しさん (ワッチョイ 4201-BePx) mailto:sage [2023/04/11(火) 23:11:43.43 ID:/nZPjbDG0.net] 1: Console.WriteLine(Foo.X); // 3 2: class Foo { 3: public static Foo Instance = new Foo(); 4: public static int X = 3; 5: static Foo() => Console.WriteLine(X); // 3 6: } 静的コンストラクタのあるクラスの場合は 静的コンストラクタが実行される直前に静的イニシャライザが定義順で実行される 1行目のFoo.Xで静的コンストラクタがトリガーされるけど その前に静的イニシャライザが3行目、4行目の定義順で実行される 3~4行目の実行が完了してから5行目の静的コンストラクタが実行されるのでXは3 3行目のnew Foo()で実行されるのはインスタンスコンストラクタで staticがついた5行目の静的コンストラクタとは別のものになる
228 名前:デフォルトの名無しさん (ワッチョイ 9194-izbf) mailto:sage [2023/04/12(水) 01:51:45.88 ID:3I+WNe+L0.net] >>225 分かりやすい説明有難う御座いました。
229 名前:デフォルトの名無しさん mailto:sage [2023/04/12(水) 08:44:45.21 ID:75Jdcna40.net] 静的イニシャライザの実行順は不定
230 名前:デフォルトの名無しさん mailto:sage [2023/04/12(水) 08:58:31.49 ID:5OqrGPiIr.net] そもそもこんな使い方することってある? こんなわかりにくい実装したらバグしか生まないだろ
231 名前:デフォルトの名無しさん mailto:sage [2023/04/12(水) 09:17:16.51 ID:g9fBg21da.net] どういう順序で実行されるか解説するテキストで実験的なコードが紹介されてるだけだろ 本文が3行以上読めないやつがここで聞いただけ
232 名前:デフォルトの名無しさん mailto:sage [2023/04/12(水) 10:30:19.47 ID:mXnPigifr.net] いちいち質問者を貶すようなことでもなかろうに
233 名前:デフォルトの名無しさん mailto:sage [2023/04/12(水) 11:26:53.10 ID:yAM4RrWLM.net] どちらかと言うと本文を読んでいないのが >>229 でみんな雰囲気で答えてるだけ 英語嫁
234 名前:デフォルトの名無しさん (アウアウウー Sa05-NO7/) mailto:sage [2023/04/12(水) 12:21:14.58 ID:bugel0eha.net] バグしか生まない実装を紹介する本ねぇ 読んだと自称するやつにはそう見えるのか 春だなぁ
235 名前:デフォルトの名無しさん (ブーイモ MM66-Udzl) mailto:sage [2023/04/12(水) 12:29:42.24 ID:USOc3PY3M.net] 実際質問の出力結果示さずにこのスレの連中にstaticありなしの出力結果予想させたら3割も正解しなさそう
236 名前:デフォルトの名無しさん (オッペケ Srd1-ZlFW) mailto:sage [2023/04/12(水) 12:31:58.00 ID:gsM5MkRcr.net] そういう意味ではアンチパターンだな
237 名前:デフォルトの名無しさん (オッペケ Srd1-HvLO) mailto:sage [2023/04/12(水) 13:45:09.09 ID:4Can4aDGr.net] C#の挙動がなぜそうなってるかの理由を知ることと、それを実際に開発に使用するかどうかは話が別だろう 当の本もこの挙動を利用して実装しろと勧めてるわけでもなし、バグしか生まない~などと腐すのも筋違い
238 名前:デフォルトの名無しさん (ワッチョイ 4201-BePx) mailto:sage [2023/04/12(水) 14:11:43.79 ID:uWUQySNG0.net] 本に書いてあるコードでは>>225 の5行目にstaticはついてない 3行目と4行目を入れ替えると出力結果が変わるようなことになるという注意を促して イニシャライザの実行順序を理解させようとしている static fieldの定義順に依存したコードはアンチパターンと言ってもいい気はするが 現実には↓こういうコード書く人がいるので動きを理解してることは重要 https://stackoverflow.com/questions/54692923/
239 名前:デフォルトの名無しさん (オイコラミネオ MM29-Ay2p) mailto:sage [2023/04/12(水) 17:54:22.82 ID:lYmUspEYM.net] 本にはこのコードのstaticはついてないのでいくら読んでもそういう話にはならない コード提示した人が自分でstaticつけて疑問に思ったことを書いてるだけ チャンと英語読めば批判してる人の脊髄反射でしかないとわかる
240 名前:デフォルトの名無しさん (オイコラミネオ MM29-Ay2p) mailto:sage [2023/04/12(水) 17:57:59.05 ID:lYmUspEYM.net] >>232 英語嫁と上で書いてやったのに読まない馬鹿
241 名前:デフォルトの名無しさん (オイコラミネオ MM29-Ay2p) mailto:sage [2023/04/12(水) 18:00:18.84 ID:lYmUspEYM.net] >>232 ごめん自分が読めてなかった 自分が馬鹿だったわ…
242 名前:デフォルトの名無しさん (ワッチョイ d907-NO7/) mailto:sage [2023/04/12(水) 21:13:56.15 ID:75Jdcna40.net] 草
243 名前:デフォルトの名無しさん (ワッチョイ c5ae-izbf) mailto:sage [2023/04/13(木) 17:15:29.58 ID:Zu8K3N7a0.net] 過去にはAny CPUを選ぶと32bitライブラリか64bitライブラリかわからなくてエラーになる事があるから、 x86かx64に固定するのを推奨とかどこかで見た気がするけど、 今はそんな事無くなったのかな?
244 名前:デフォルトの名無しさん (ワッチョイ c7e5-S3w6) mailto:sage [2023/04/18(火) 09:43:52.47 ID:8GgykzJw0.net] ifで非null判定してからアクセスしてんのにnullの可能性がありますとか警告出す最近のC#はほんとクソ
245 名前:デフォルトの名無しさん (ワッチョイ 4707-uZLY) mailto:sage [2023/04/18(火) 09:47:05.00 ID:zIS6YJzM0.net] >>242 出さねーよw
246 名前:デフォルトの名無しさん (ワッチョイ bfda-wFhX) mailto:sage [2023/04/18(火) 10:17:07.64 ID:HhMbwi3l0.net] コンパイラのnullチェックを混乱させる凄い(≠素晴らしい)コードなのかもしれない
247 名前:デフォルトの名無しさん (ササクッテロロ Spfb-tEYI) mailto:sage [2023/04/18(火) 10:21:16.50 ID:dDei21Qyp.net] 見落としてる分岐があるだけだろ
248 名前:デフォルトの名無しさん (アウアウウー Sacb-uZLY) mailto:sage [2023/04/18(火) 10:22:53.46 ID:HoHH5EgOa.net] 多分チェックした後に別の値を代入するか値が変化するものを使ってるんだろうな たとえばプロパティは一回目のアクセスと二回目のアクセスで同じ値が得られるとは限らない 変数に入れろ そしたら多分警告消えるから
249 名前:デフォルトの名無しさん (ワッチョイ dfbd-baic) mailto:sage [2023/04/19(水) 07:26:32.14 ID:9LVfV8Mo0.net] 警告が消えるのに時間がかかったり、Visual Studioを立ち上げ直したら警告が消えたことがある。
250 名前:デフォルトの名無しさん (ワッチョイ 4707-uZLY) mailto:sage [2023/04/19(水) 07:56:31.56 ID:A9DJak9S0.net] マシンが遅いだけ
251 名前:デフォルトの名無しさん (ワッチョイ bf42-sFbk) mailto:sage [2023/04/19(水) 08:18:39.49 ID:/RLG/xCj0.net] 不必要なhoge?.hage();が残っているとnull判定されることがあるね ?取るとワーニングが消える
252 名前:デフォルトの名無しさん (ワッチョイ 4707-uZLY) mailto:sage [2023/04/19(水) 09:00:29.09 ID:A9DJak9S0.net] hoge?.hoge()はhoge!=null?hoge():nullと同じ nullが返る可能性があることを示すコードだからそりゃnullの可能性があると判定されるわな
253 名前:デフォルトの名無しさん (ワッチョイ bf42-sFbk) mailto:sage [2023/04/19(水) 09:16:28.63 ID:/RLG/xCj0.net] >>250 問題はhoge?.hoge()のところではワーニングが出ずに、離れた場所にあるhoge.bar()でワーニングが出るから 知らないと混乱するってことだね
254 名前:デフォルトの名無しさん (ワッチョイ 4707-uZLY) mailto:sage [2023/04/19(水) 09:45:55.68 ID:A9DJak9S0.net] そこで問題がないのに出るわけないじゃん 離れた場所にあるなら一度変数に入れなよ そしたらnullの可能性があるかどうかマウスホバーで教えてくれるから
255 名前:デフォルトの名無しさん (ワッチョイ 4707-uZLY) mailto:sage [2023/04/19(水) 09:47:07.48 ID:A9DJak9S0.net] 結局この警告はバグを潰してくれてるものだから文句を言うのは筋違いだぞ 本来なら警告の代わりに実行時エラーになってたものだからな
256 名前:デフォルトの名無しさん (ワッチョイ bf42-sFbk) mailto:sage [2023/04/19(水) 10:04:51.79 ID:/RLG/xCj0.net] >>252 コンストラクタなどで初期化していて本来はワーニングが出るはずがないのに 途中でhoge?hage()なんてコードがあるからヌルが入る可能性があると判断されるようだ だから?を外すと解決するんだが、それに築くのが大変って話ね
257 名前:デフォルトの名無しさん (ワッチョイ 4707-uZLY) mailto:sage [2023/04/19(水) 10:18:42.95 ID:A9DJak9S0.net] そこでnullを代入してるのに気づくのが大変てことはないと思うがな 警告が出ないなら大変かもしれんけど
258 名前:デフォルトの名無しさん (アウアウウー Sacb-uZLY) mailto:sage [2023/04/19(水) 10:25:41.00 ID:ozyRSzfKa.net] たとえばUnityなんかだと暗黙の代入演算子をいじっててnullでないものがnullエラーを出すよ コンストラクタで生成してすぐnullになるオブジェクトも作れる そういうのを実行前に警告として教えてくれてるんだから親切以外のなにものでもないだろ 警告があれば何か問題があることにすぐ気づけるし気づいたらマウスをちょっと動かせば原因がわかる コーディングが簡単になりこそすれ難しくなることなんかないだろ
259 名前:デフォルトの名無しさん (ササクッテロロ Spfb-tEYI) [2023/04/19(水) 10:29:18.14 ID:wTDlMyrbp.net] nullableなboolean変数を条件判断させるとき nullだったらどっちに判定されるんだ?
260 名前:デフォルトの名無しさん (アウアウウー Sacb-uZLY) mailto:sage [2023/04/19(水) 10:43:36.85 ID:ozyRSzfKa.net] どっちでもない nullはnull
261 名前:デフォルトの名無しさん (ワッチョイ 7ff2-iKPJ) mailto:sage [2023/04/19(水) 12:47:18.86 ID:/ifWvnPE0.net] 勉強になった!
262 名前:デフォルトの名無しさん (スプッッ Sdff-wBI8) mailto:sage [2023/04/19(水) 14:16:39.58 ID:mDR4Tmnid.net] (bo
263 名前:ol)null [] [ここ壊れてます]
264 名前:デフォルトの名無しさん (ワッチョイ ff79-e5FP) mailto:sage [2023/04/19(水) 18:22:12.39 ID:oWlQU8HM0.net] もうnullだったら死んでくれていい プログラムでぬらぶるってるとムカつく いいんだよ例外でもなんでも死ねば
265 名前:デフォルトの名無しさん (ワッチョイ ff79-e5FP) mailto:sage [2023/04/19(水) 18:32:54.51 ID:oWlQU8HM0.net] プログラムの99.998%は概ねnullになんかなんないところばっかりなのに なんでこんなクソ構文作ったのかわからん 現場で書くと嫌われるコード こんなもんチェックするより他にやることはいくらでもある
266 名前:デフォルトの名無しさん (ササクッテロロ Spfb-tEYI) [2023/04/19(水) 19:21:06.22 ID:Yh/qVtVOp.net] bool値に三状態あるのかw
267 名前:デフォルトの名無しさん (ワッチョイ 5f79-uE6i) mailto:sage [2023/04/19(水) 19:27:25.28 ID:Gw9y9MAb0.net] ヌルヌルヌールヌル
268 名前:デフォルトの名無しさん (オイコラミネオ MM5b-baic) mailto:sage [2023/04/19(水) 19:28:11.01 ID:ol2MoW3SM.net] DBだと伝統的に3値だったりが当たり前 かなり問題がある作り
269 名前:デフォルトの名無しさん (ワッチョイ 7f7b-i286) mailto:sage [2023/04/19(水) 19:33:27.51 ID:fW0fg9Ti0.net] null 許容値型 https://learn.microsoft.com/ja-jp/dotnet/csharp/language-reference/builtin-types/nullable-value-types null許容値型(Nullable<T> 型) https://ufcpp.net/study/csharp/sp2_nullable.html
270 名前:デフォルトの名無しさん (ワッチョイ bfe9-Naft) [2023/04/19(水) 20:30:00.61 ID:C4s4zrWJ0.net] FormアプリでForm1とForm2を作る Form1にラベルを作る Form2にボタン1,ボタン2を作る ボタン1を押すとラベルに"1"ボタン2を押すとラベルに"2"を、 Form2を閉じることなく設定するプログラムを作りたいのですが どういう作り方をすれば実現できるでしょうか。 Form2にプロパティを作りForm1で文字を受け取る方法だとForm2を閉じないと値が設定できません。 よろしくお願いします。
271 名前:デフォルトの名無しさん (ワッチョイ 7f7b-i286) mailto:sage [2023/04/19(水) 20:35:45.45 ID:erb9d6p60.net] >>267 別のフォームのデータを取得、設定する https://dobon.net/vb/dotnet/form/accessanotherformdata.html
272 名前:デフォルトの名無しさん (ワッチョイ bfe9-Naft) [2023/04/19(水) 22:15:32.11 ID:C4s4zrWJ0.net] >>268 記事中のOwnerプロパティを使うことでやりたいことができました。 ありがとうございます。
273 名前:デフォルトの名無しさん (ワッチョイ 7f10-S3w6) mailto:sage [2023/04/20(木) 21:58:50.89 ID:XyBZLb7d0.net] ぬるり
274 名前:デフォルトの名無しさん [2023/04/22(土) 21:40:28.10 ID:nV5+mUIN0.net] 自作メソッドが投げる可能性がある例外の表記方法についての質問です。 ドキュメンテーションコメントの<exception>タグに、throw する可能性がある例外を表記出来ますが、 例えば下記のメソッドの場合・・・ void MyMethod(string filename) { //ZipFile.OpenRead() メソッドと、StreamReader.ReadLine() メソッドを使用する。 } 上記の場合、 ZipFile.OpenRead() は下記の例外を throw する可能性があります。 ArgumentException ArgumentNullException PathTooLongException DirectoryNotFoundException IOException UnauthorizedAccessException FileNotFoundException NotSupportedException InvalidDataException StreamReader.ReadLine() は下記の例外を throw する可能性があります。 OutOfMemoryException IOException こうなると、MyMethod() は、上記の計11種類の例外を throw する可能性があるという事になるのですが、 理想論的には、全てをドキュメンテーションコメントの <exception> に表記する必要がありますか? そうでない場合、表記するべき例外と、そうでない例外はどういう基準で判断すればよいでしょうか?
275 名前:デフォルトの名無しさん mailto:sage [2023/04/22(土) 22:30:09.44 ID:XuPaU8GB0.net] >>271 めんどくさいから例外を吐くMethodを記載して、詳細はソチラでにしちゃうかな
276 名前:デフォルトの名無しさん mailto:sage [2023/04/23(日) 00:52:29.94 ID:qbQJEsvk0.net] >>271 例外なんて元々どんぶりなんだから そんな厳密に何かやろうとするなら そもそも使うなでFA
277 名前:デフォルトの名無しさん mailto:sage [2023/04/23(日) 09:59:39.79 ID:UBkEK/lQ0.net] ZipFile使ってること書いてそっち参照とし、独自のは詳細書くとか?
278 名前:デフォルトの名無しさん mailto:sage [2023/04/23(日) 10:04:39.68 ID:DUqm0gOHM.net] 書いたことがない 自分で使うなら覚書として必要な範囲で 他人に提供するライブラリでも普通は書かない 使われないし必要とされてないから 常識的にそれが何をしているか想定できる場合は書かない 今だったらファイルアクセスしてますよとか引数を取りますよで利用側もある程度想像できる 標準ライブラリの例外でないものを投げる可能性があり それに回復手段がある場合に書くぐらいなんじゃないかなと
279 名前:デフォルトの名無しさん (ワッチョイ 6610-ASru) mailto:sage [2023/04/24(月) 06:43:49.53 ID:P+2JsUDo0.net] ドキュメンテーションコメントなんか書いたことないな・・・
280 名前:デフォルトの名無しさん (アウアウクー MM7d-pS66) mailto:sage [2023/04/24(月) 08:26:23.98 ID:F+RPKNFDM.net] ウチはコーディング規約で必須 どこも書いてるかと思ってたけど違うんだね
281 名前:デフォルトの名無しさん (アウアウウー Sa21-ZiWf) mailto:sage [2023/04/24(月) 08:47:42.51 ID:iy7IhEXOa.net] 今はドキュメンテーションコメント書いたらコパイロットがコード書いてくれるんじゃね
282 名前:デフォルトの名無しさん (ワッチョイ 3679-ByXY) mailto:sage [2023/04/25(火) 07:51:13.18 ID:kQ+fG+er0.net] JavadocやDoxygenってゴミにしかなんなくね?
283 名前:デフォルトの名無しさん (ワッチョイ a95f-SH/E) [2023/04/25(火) 08:17:55.28 ID:wOLFytDy0.net] >>279 成果物のかさ増しには最適なんだよw
284 名前:デフォルトの名無しさん (スプッッ Sdea-8Xzj) mailto:sage [2023/04/25(火) 08:42:20.58 ID:2JpsSRmdd.net] 詳細設計書の雛形を自動で作ってくれる… んだぜ
285 名前:デフォルトの名無しさん (ワッチョイ a5e5-ASru) mailto:sage [2023/04/25(火) 08:45:42.17 ID:XCOYQ77g0.net] 詳細設計してからコード書いてクレメンス
286 名前:デフォルトの名無しさん (ワッチョイ aade-RykB) mailto:sage [2023/04/25(火) 10:50:36.92 ID:KrvjcZC00.net] 質問なんですが、コントロールのボタン1~9のイベントハンドラを全部実行したいとき Button1_Click(null, null); Button2_Click(null, null); Button3_Click(null, null); Button4_Click(null, null); Button5_Click(null, null); Button6_Click(null, null); Button7_Click(null, null); Button8_Click(null, null); Button9_Click(null, null); これをもっとスマートに書く方法ありますか? それとも20個程度ならダラダラ書いたほうがいいですか?
287 名前:デフォルトの名無しさん (ワッチョイ 1507-ZiWf) mailto:sage [2023/04/25(火) 11:03:26.95 ID:h+X7r+oZ0.net] ViewModelも使わないような泥縄式プログラミングならダラダラ書けばいんじゃね インスタンスを何らかの方法(前もって配列に入れるとかタグをつけるとか)でフィルタリングすればループが使えるし何ならイベントハンドラ自体一つにまとまるくらい同じことしかしてないんじゃないかとも推測できるが
288 名前:デフォルトの名無しさん (ワッチョイ 1507-ZiWf) mailto:sage [2023/04/25(火) 11:05:37.36 ID:h+X7r+oZ0.net] あとイベントハンドラを直接呼び出すのは良くないぞ イベントハンドラの中から実際の処理を行う関数を呼び出すように作ってイベントハンドラを他の関数から呼びだしたい時には代わりにその処理の方を呼び出すんだ
289 名前:デフォルトの名無しさん (ワッチョイ 1507-ZiWf) mailto:sage [2023/04/25(火) 11:07:12.18 ID:h+X7r+oZ0.net] どうしてもハンドラの方を呼び出さなきゃいけない時はButton.PerformClickな
290 名前:デフォルトの名無しさん (ワッチョイ aade-RykB) mailto:sage [2023/04/25(火) 12:14:00.34 ID:KrvjcZC00.net] >>284 ,285,286 サンクスです、まずViewModelがわかりません。ググルとandroidやzamarinの事がヒットします。 windowsのformでプログラム作ってます。もうちょと調べてみます。 イベントハンドラの中のメソッドを呼びだすのですね、Button.PerformClickと迷ったのですが 2つの違いがいまいちわかってなくて、もらったアドバイスでもうちょと考えてみます
291 名前:デフォルトの名無しさん (スプッッ Sdea-8Xzj) mailto:sage [2023/04/25(火) 13:05:52.77 ID:+0i9aSeod.net] 適当なコレクションに入れてforeachでperformclickだな
292 名前:デフォルトの名無しさん (ワッチョイ aade-RykB) mailto:sage [2023/04/25(火) 17:08:17.65 ID:KrvjcZC00.net] >>288 レスサンクスです List<Button> buttons = new List<Button>(); for (int i = 1; i<10; i++) { Button button = new Button(); foreach (Button button in buttons) { button.PerformClick(); } こんな感じでしょうか(途中で挫折した)
293 名前:デフォルトの名無しさん (ワッチョイ a5e5-ASru) mailto:sage [2023/04/25(火) 17:34:19.71 ID:XCOYQ77g0.net] フォームに他にボタンが無いなら↓でもやれる foreach(Control childItem in Controls) { if(childItem is Button button) button.PerformClick(); }
294 名前:デフォルトの名無しさん (オイコラミネオ MMb5-/HYv) mailto:sage [2023/04/25(火) 17:41:31.18 ID:jwlAeKCmM.net] まずボタンから処理を分けようか? リファクタリングでメソッドに書き直そう private void Button_Click(object sender, Args e) { //ここは実際に何かやってるが仮にコメントにしてある // //ここまで } 仮にこんなコードだとして //から始まる3行を選択して右クリックすると出てくるメニュー上の方に "クイックアクションとリファクタリング" というのがあるから それをクリックすると "メソッドを抽出する" と言うのが出てくるので選ぶ そのあとメソッド名をつけるだけでイベントハンドラじゃなくて単純なメソッドになる ボタンをクリックしたと言う名前じゃなくて処理にあった名前にできるしそうするべき いちいちボタンNが何をしていたか調べたり覚えなくて済む こういうふうにしてあちこちの処理を簡単にメソッドにできるので 処理の区切りでメソッドにしよう 処理に名前を付けて流用できるようにしよう
295 名前:デフォルトの名無しさん (ワッチョイ aade-RykB) mailto:sage [2023/04/25(火) 20:49:06.41 ID:KrvjcZC00.net] >>290 レスさんくすです こんなシンプルにかけるんですね、ちょと理解がむずいところがあるけど これをもとにちょっといじくってみます >>291 丁寧な解説ありがとう なるほどイベントハンドラからメソッド切り出すのはこうすればいいのですね 他からメソッド呼び出すとき意味も分かりやすく、見通しもよくなりますね リファクタリングはやったことなかた
296 名前:デフォルトの名無しさん (オイコラミネオ MMb5-/HYv) mailto:sage [2023/04/25(火) 23:36:51.46 ID:jwlAeKCmM.net] >>292 これだけできるとコードの書きやすさが格段に上がるよ メソッド内全部じゃなくてもいい 適当に切り出しても引数とかもちゃんとくくりだしてくれる 出来ない場合は理由があるのでそれも勉強になる 失敗してもアンドゥしたらいいだけだし
297 名前:デフォルトの名無しさん (ワッチョイ 3abd-/HYv) mailto:sage [2023/04/26(水) 00:00:21.94 ID:lnboBUB50.net] >>291 こんな機能あったんか…。知らんかった。
298 名前:デフォルトの名無しさん (オイコラミネオ MMb5-/HYv) mailto:sage [2023/04/26(水) 00:31:44.42 ID:1VlSMqUTM.net] 他にもいろいろ機能があるよ いろいろ試してね
299 名前:デフォルトの名無しさん (ワッチョイ f1e4-n/u1) mailto:sage [2023/04/26(水) 06:43:05.45 ID:aS9C8tBv0.net] >>291 こんな機能知らなかった 勉強になったわ
300 名前:デフォルトの名無しさん (ワッチョイ 6a7f-p1wa) [2023/04/28(金) 01:40:04.13 ID:EFykGfO70.net] ほんとVisual studioは神
301 名前:デフォルトの名無しさん (ワッチョイ ea79-lTfL) mailto:sage [2023/04/28(金) 01:47:14.94 ID:yqQLE+sa0.net] それっぽい名前を付けるのが一番面倒だから そこは処理をAIに要約させて付けて貰う 完璧だな
302 名前:デフォルトの名無しさん (ワッチョイ 4954-YWDm) [2023/04/28(金) 04:28:06.22 ID:SQeM8rhL0.net] 非同期メソッドを実行する時「戻り値は特に必要ないが、例外は伝えてほしい」という場合、 戻り値は適当に int とかにしても問題ないでしょうか? 理想的な方法があれば教えてください。 例: public Task<int> SomeMethod() { return await Task.Run(()=> { try { //非同期で実行したいメソッド。 return 1; } catch { throw; } }); }
303 名前:デフォルトの名無しさん (ワッチョイ 6610-ASru) mailto:sage [2023/04/28(金) 07:28:54.39 ID:dvpYRirO0.net] 戻り値無くても例外は発生するぞ ていうかthrowするだけならtry要らないだろ
304 名前:デフォルトの名無しさん (ワッチョイ 6663-Be6V) mailto:sage [2023/04/28(金) 07:38:28.05 ID:4gfllXQT0.net] public async Task SomeMethod()
305 名前:299 (ワッチョイ 4954-YWDm) mailto:sage [2023/04/28(金) 07:46:32.72 ID:SQeM8rhL0.net] >>300-301 ありがとうございます。 本当に助かりました。
306 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/02(火) 15:27:13.55 ID:+P/djKKr0.net] >>300 以外と例外処理って勘違いしてる奴が多いんよ 例外が発生する可能性がある場所にtry catch書くべきって思ってる奴が7割ぐらい居る 正解は例外が発生した場合にリカバリー処理を書く場合に使用する
307 名前:デフォルトの名無しさん (アウアウウー Sa1b-gncP) [2023/05/02(火) 15:48:44.54 ID:k2jSiG28a.net] リカバリー処理とは?
308 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/02(火) 15:54:32.37 ID:+P/djKKr0.net] そのままの意味どうすよ 回復や復帰を意味する言葉通り 例えば通信中に環境が悪く回線切断 例外からそれは分かるので回線が繋がりやすい場所は移動する様にメッセージを出した後に再接続して通信を続行させる
309 名前:デフォルトの名無しさん (ワッチョイ 7f79-tpgI) mailto:sage [2023/05/02(火) 16:24:14.51 ID:2rV8iq3c0.net] UIソースでtrycatch書くための仕組みだろ 返せる例外は複数も行けるけど1つしか想定してないからどんぶりの類 本処理中と終了処理があるような処理は想定外 終了処理は行われないで帰ってくる 厨房の工作キット
310 名前:デフォルトの名無しさん (アウアウアー Sa4f-ef8y) mailto:sage [2023/05/02(火) 16:28:46.70 ID:GVM+dlL1a.net] リカバリー処理とは限らんでしょ
311 名前:デフォルトの名無しさん (ワッチョイ 375f-Hgfr) mailto:sage [2023/05/02(火) 16:48:17.59 ID:4Yks9dbV0.net] まあ、自分の業務だけが全ての人は知見が狭くてかなわんなw
312 名前:デフォルトの名無しさん (ワッチョイ 97cf-hzXf) mailto:sage [2023/05/02(火) 17:26:39.90 ID:ID016ee+0.net] 復帰とも書いてるから、例外の伝播をそこで止めて通常動作に戻すこと全般を言っているんなら 大体合ってるんじゃないかな。
313 名前:デフォルトの名無しさん (ワッチョイ 9f4b-gncP) [2023/05/02(火) 18:28:49.42 ID:2Pbut5Rc0.net] 独自の例外に変換することもあるのでは
314 名前:デフォルトの名無しさん (ワッチョイ 3754-wHlW) mailto:sage [2023/05/02(火) 18:29:31.06 ID:yUli7OqN0.net] try catch はリカバリー処理とかユーザー通知も含めて、"例外が起きたら何かしたい" 時に使う物くらいにしか考えてなかったなぁ。 void Method() { try { 処理 } catch (Exception ex) { //if (この場で復旧処理したい) { 復旧処理 } //if (メソッド呼び出し元に例外が起きたことを伝播したい) { 例えば、throw する } //if (ログを出力したい) { ログ出力する } //if (別のプロセスを起動したい) { 別のプロセスを起動する } //if (その他諸々何かしたい) { その他諸々何かの処理 } }
315 名前:デフォルトの名無しさん (ワッチョイ 9f7f-ExZu) [2023/05/02(火) 18:29:58.08 ID:Iiod3Ljm0.net] 相手サーバーに拒否されたとかそのままコケて欲しい時はcatchしなくて良いしな
316 名前:デフォルトの名無しさん mailto:sage [2023/05/02(火) 21:03:09.39 ID:N5mno8Ao0.net] 質問いいですか? form1からform2を呼び出して、form2からform1のbutton1をクリックしたい public partial class Form2 : Form { private Form1 _form1; public Form2(Form1 form1) { InitializeComponent(); _form1 = form1; } } ここでform2から _form1.button1.PerformClick(); //うまくいきます Button selectedButton = (Button)_form1.Controls["button1"]; selectedButton.PerformClick(); //うまくいきませんnull
317 名前:デフォルトの名無しさん mailto:sage [2023/05/02(火) 21:04:43.29 ID:N5mno8Ao0.net] >>313 途中で投稿してしまった これはなぜうまくいかないのでしょうか?
318 名前:デフォルトの名無しさん [2023/05/02(火) 21:11:45.34 ID:V30afgjZ0.net] 動くけどなー
319 名前:デフォルトの名無しさん mailto:sage [2023/05/02(火) 21:19:48.53 ID:N5mno8Ao0.net] まじでっ
320 名前:デフォルトの名無しさん mailto:sage [2023/05/02(火) 21:20:16.79 ID:yUli7OqN0.net] 別フォームからクリック出来たよ。 ソース全体が不明だから何とも言えないけど、 1. Form2 クラスの form1 ・ _form1 変数は、ちゃんと Form1 のインスタンスを参照出来てる? 2. 自動クリックされる Form1 のボタンは、ちゃんと Name = button1 になってる?
321 名前:デフォルトの名無しさん mailto:sage [2023/05/02(火) 21:21:01.87 ID:yUli7OqN0.net] 間違えた。 Name = "button1"
322 名前:デフォルトの名無しさん mailto:sage [2023/05/02(火) 22:19:38.01 ID:XpNDWH0U0.net] キャストってプロパティより優先順位低かったっけ?
323 名前:デフォルトの名無しさん mailto:sage [2023/05/02(火) 22:21:39.83 ID:N5mno8Ao0.net] >>315 サンクスです、文法問題ないのだったら、ここに書き漏らしてる何かが悪いのだろうか >>317 さんくすです、うまくうごくのですね _form1 は _form1.button1.Text = "hogehoge"; がうまくいくのでインスタンスを参照できてるかな、NameもVSのプロパティそのままで
324 名前:デフォルトの名無しさん mailto:sage [2023/05/02(火) 22:29:06.71 ID:N5mno8Ao0.net] >>319 俺への回答でしょうか?試しに (Button)(_form1.Controls["button1"]) みたいにやってみたけどうまくいかず
325 名前:デフォルトの名無しさん mailto:sage [2023/05/02(火) 22:47:23.62 ID:NVQj7oowr.net] 「うまくいかない」の内容をもう少し詳しく書くようにしよう 何も起こらないのかそれともエラーが出るのか エラーが出るなら具体的にどんなエラーメッセージなのか
326 名前:デフォルトの名無しさん [2023/05/02(火) 22:51:11.59 ID:V30afgjZ0.net] >>320 もしかしてForm1のPanelとかの中にbutton1が入ってるんじゃ そしたら_form1.panel1.Controls["button1"]よ
327 名前:デフォルトの名無しさん mailto:sage [2023/05/02(火) 23:02:01.80 ID:N5mno8Ao0.net] >>322 失礼しました、例外がスローされます selectedButton.PerformClick();のところで止まってselectedButtonがnullみたいです System.NullReferenceException: 'オブジェクト参照がオブジェクト インスタンスに設定されていません。'
328 名前:デフォルトの名無しさん mailto:sage [2023/05/02(火) 23:06:31.60 ID:HZAuKpK5M.net] >>324 それ単純に名前ミスってるだけだよ…
329 名前:デフォルトの名無しさん mailto:sage [2023/05/02(火) 23:09:12.69 ID:N5mno8Ao0.net] >>323 ビンゴでした、うまく動きました グループボックスの中にボタン入ってました、こんなのいるんですね ありがとうございました
330 名前:デフォルトの名無しさん mailto:sage [2023/05/02(火) 23:12:57.82 ID:N5mno8Ao0.net] >>325 名前はインテリセンスで出てこないから要注意ですね 一応単語を選択すると同じ単語が色分けされるから、そこで確認しました
331 名前:デフォルトの名無しさん (ワッチョイ 9fde-fitb) mailto:sage [2023/05/02(火) 23:32:01.14 ID:N5mno8Ao0.net] たすかりました ありが㌧
332 名前:デフォルトの名無しさん (オイコラミネオ MM6b-hzXf) mailto:sage [2023/05/02(火) 23:46:40.83 ID:HZAuKpK5M.net] テキストでコントロール指定したりPerformClick()使うのは最初だけだから 初心者だからなんでも使えばいい そこから出られるのかどうか
333 名前:デフォルトの名無しさん (ワッチョイ 9f79-zzYQ) mailto:sage [2023/05/03(水) 00:32:32.38 ID:Kv12u2jn0.net] >Controls["button1"] こんなもん使うなカスボケってことは理解できたんかな?
334 名前:デフォルトの名無しさん (ワッチョイ d7ac-9Trp) mailto:sage [2023/05/03(水) 01:23:01.23 ID:Ia3mFb590.net] まあ他人の実際のコードを見るようになってからじゃね 自分で書いて動かすだけで手一杯なんやろ
335 名前:デフォルトの名無しさん (ワッチョイ 9f4b-gncP) [2023/05/03(水) 02:28:32.14 ID:vL8FscsM0.net] しっけーなおまえ等
336 名前:デフォルトの名無しさん (ワッチョイ 3754-wHlW) mailto:sage [2023/05/03(水) 05:15:12.14 ID:X2wTGB2Y0.net] 自分は、DataGridViewColumn.DataPropertyName でプロパティ名を文字列で指定してカラム参照してるわ。 本職はプログラマーじゃないから許してクレメンティン。
337 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 05:27:13.82 ID:iydNsBEo0.net] 別に良いんだよ 馬鹿なプログラマはこうするべきだってって感じで言うけどただの無能 動けば良いんだよ 実際売れてるとか人気のアプリのコードなんて糞みたいなもん 音楽で考えると分かりやすい 人気の音楽や長年聴かれる音楽って結構シンプルやろ ギターとかの超絶テクニックやら奏法が特殊なら良い音楽かって言えば違うやろ 実際はミリオンセラーの音楽なんて小学生が少し練習すれば弾ける様になるのが結構ある
338 名前:デフォルトの名無しさん (アウアウクー MM8b-ef8y) mailto:sage [2023/05/03(水) 05:
] [ここ壊れてます]
339 名前:33:27.84 ID:0APi2HUGM.net mailto: エンタメとソフトウェア技術を同列に語っちゃう人 例え話って自分に都合の良いものを引き合いに出しがち [] [ここ壊れてます]
340 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 05:54:45.19 ID:iydNsBEo0.net] 同じやで 都合も良いも無いやろ 何の為にソフト作るんや 使う側にして見りゃ中のコードが糞かどうか関係無いやん ちゃんと動いて結果が出れば良いだけなんだから
341 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 05:56:22.47 ID:iydNsBEo0.net] アレかなもしかしてエンジニアって勘違いしてるパターンか? 俺らって大抵はエンジニアじゃなくてサラリーマンだぞ
342 名前:デフォルトの名無しさん (ワッチョイ 1707-rvTa) mailto:sage [2023/05/03(水) 07:46:05.28 ID:7KJ/CzIt0.net] >>334 音楽で考えるとわかりやすいんじゃなく音楽と違うものを音楽にしてしまったことで話が変わってるだけだぞ プログラミングはロジックの塊 音楽より論文に近い 思いついたことをまとまりなく書き連ねたらダメ出しされるのは当然だろ 小論文ならそれでもまだ読めるかもしれんがな
343 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 07:52:55.78 ID:iydNsBEo0.net] >>338 動けば問題無いよ 論文と違って無駄があろうが何だろうが結果が正しければ良い 例え途中が間違っていても奇跡的にでも結果が正しければ問題無い お前の例えの方が全然違うやんw 無能やな
344 名前:デフォルトの名無しさん (ラクッペペ MM8f-N7xh) mailto:sage [2023/05/03(水) 08:03:49.34 ID:s1e64EMrM.net] 楽しければいいんだよ 法律やルールなんてくそ食らえ …とかいう人なの?
345 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 08:13:38.78 ID:iydNsBEo0.net] 違うぞ ルールや法律に違反しなきゃ何やっても良いって言ってるだけや
346 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 08:19:44.90 ID:iydNsBEo0.net] ついでに言うならペナルティが罰金の場合 罰金払ってでも儲かるなら違法な行為はする ちなみ大企業は堂々とそういう事してる 例えば特定保健指導の実施率のペナルティ 大企業だと自身で保険組合持ってる場合が多い 従業員も多く色々な対策に金使うよりペナルティ払った方が安い場合もある そういう場合は普通に違反してペナルティ払ってる 一例を挙げるならトヨタがそれに当たる
347 名前:デフォルトの名無しさん (ワッチョイ 975f-VSqy) mailto:sage [2023/05/03(水) 08:25:24.40 ID:eaeSSGs50.net] 「正しく動く」は単なる前提に過ぎず、目指すものではない エンジニアリングにおける「Easy」と「Simple」を区別できないおじさんは淘汰される
348 名前:デフォルトの名無しさん (スッップ Sdbf-oJ27) [2023/05/03(水) 08:27:58.97 ID:s1pMNzuQd.net] そう言うなよ世の中の7割はルールに従って真面目にやれば出世や稼げると勘違いしてる無能なんだからさ 有能で稼げる奴は法律やルールでさえ損得を天秤に掛けて儲かる場合は普通に違法行為を行える 勿論逮捕とかされるような事案には手を出さないが1億10億の罰金払って100億稼ぐのが有能
349 名前:デフォルトの名無しさん (ワッチョイ 9fde-fitb) mailto:sage [2023/05/03(水) 08:34:50.09 ID:aEnVTx4R0.net] >>329 PerformClick()使う理由は ADIR01P USB赤外線リモコンアドバンス https://github.com/bit-trade-one/ADIR01P-USB_IR_Remote_Controller_Advance このアプリをいじって、追加機能やform2でボタンだけのコンパクトなUIが欲しかったからです >>330 確かに気持ち悪い感じはしますね、form2で10個ほどのボタンにtagつけて、 対応するform1のボタンと同じ働きさせるにはこれぐらいしか思いつかない >>334 動けばいいと思って書いてますが、こうするべきだって話は聞きたい
350 名前:デフォルトの名無しさん (アウアウウー Sa1b-rvTa) mailto:sage [2023/05/03(水) 08:34:58.86 ID:Zrw+HhQra.net] >>339 動くのは最低限だぞw お前のレベルの話で済むのは一人で作るちっこいアプリだけだw
351 名前:デフォルトの名無しさん (ワッチョイ 3702-ITaW) mailto:sage [2023/05/03(水) 08:39:30.63 ID:XU1+7Xhm0.net] そもそも有能な奴はこんなところに来ない
352 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 09:16:01.84 ID:iydNsBEo0.net] >>346 ほんと無能だな 大規模だってまともに動かなきゃ意味ないだろ そういう意味でも動けば良いんだよ
353 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 09:17:54.09 ID:iydNsBEo0.net] なんで動かなきゃってのがどのアプリやシステムでも同じレベルだと勘違いしてるんやろ それぞれにレベルっていうか難易度があってその上で動くレベルに決まってるのに ほんと思考が無能
354 名前:デフォルトの名無しさん (ワッチョイ 1fbd-hzXf) mailto:sage [2023/05/03(水) 09:32:23.88 ID:7Db4yG9j0.net] >>1 C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください。見かけたらNGしましょう。相手してしまったらあなたも荒らしです
355 名前:デフォルトの名無しさん (アウアウウー Sa1b-rvTa) mailto:sage [2023/05/03(水) 09:39:20.03 ID:Zrw+HhQra.net] >>348 動くのは最低限の当たり前でその上で保守の話をしてるのにお前一人だけ動かないものの話をしてるなw
356 名前:デフォルトの名無しさん (アウアウウー Sa1b-rvTa) mailto:sage [2023/05/03(水) 09:52:09.50 ID:Zrw+HhQra.net] やっと意味がわかったかもしれん 要するに疎結合とかが理解できなくてそこまで要求されると動くものが作れないから騒いでるのか ふつう作れるよ?w
357 名前:デフォルトの名無しさん (ワッチョイ 1fbd-hzXf) mailto:sage [2023/05/03(水) 09:54:21.80 ID:7Db4yG9j0.net] >>1
358 名前:デフォルトの名無しさん (オッペケ Sr8b-/vMP) mailto:sage [2023/05/03(水) 10:02:18.52 ID:AjLrekoLr.net] ワッチョイ7c-はNGになってるわ 前にも暴れててそれで入れたんかな
359 名前:デフォルトの名無しさん (ブーイモ MMcf-SYdp) [2023/05/03(水) 10:14:01.23 ID:HGdhPxDoM.net] GUIDの人やな
360 名前:デフォルトの名無しさん (ワッチョイ 97e5-By2c) mailto:sage [2023/05/03(水) 10:27:52.20 ID:vzDzSdqv0.net] いきなり無能だなんだと言い出す言動ですぐわかるな
361 名前:デフォルトの名無しさん (オッペケ Sr8b-/vMP) mailto:sage [2023/05/03(水) 10:35:48.95 ID:sp9+jxair.net] >>355 ソレダ!
362 名前:デフォルトの名無しさん (ワッチョイ 1701-E+2s) [2023/05/03(水) 11:02:59.86 ID:Fpkn6yKr0.net] ルールってーと、フリーウェア作るときみんなライセンスとかどうしてるの? いろいろ種類あって何採用していいのかよくわからない ソース付きで、改変/配布/商用利用好きにしてって場合とかさ MIT?
363 名前:デフォルトの名無しさん (ワッチョイ ff7b-vJGv) mailto:sage [2023/05/03(水) 11:04:19.17 ID:g2t1b8zF0.net] >>358 【License】ライセンス総合【利用許諾】 https://mevius.5ch.net/test/read.cgi/tech/1266247461/
364 名前:デフォルトの名無しさん (ワッチョイ 77e4-ydUa) mailto:sage [2023/05/03(水) 11:36:28.25 ID:bhz/zA6o0.net] >>343 これかっこいい 使わせてもらお
365 名前:デフォルトの名無しさん (ワッチョイ 7f79-Wy6e) mailto:sage [2023/05/03(水) 12:06:52.63 ID:0fnUMlbu0.net] >>360 実績が伴わないとしょっぱい空気になりそう でもお前の給料20万じゃん・・・? 的なw
366 名前:デフォルトの名無しさん (ワッチョイ 1701-ef8y) mailto:sage [2023/05/03(水) 12:17:42.17 ID:GN2zt4Uy0.net] 上で出てる動けばいいじゃん精神よりは億倍マシかと
367 名前:デフォルトの名無しさん (ワッチョイ 9f7f-ExZu) [2023/05/03(水) 12:24:06.51 ID:XvXH8q6A0.net] easyかつsimpleがいいならpythonやっとけ
368 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 12:27:13.86 ID:iydNsBEo0.net] 動けば良いじゃん精神の方が金は稼げるよ だってIT技術者でも無い会社経営層は技術持ってても評価しないもん 技術持ってる持ってない関係なしに稼げるシステム作った奴を評価する つうかこの板使っておいて元の2ちゃんねる作った億稼いだひろゆき自体が動けば良いじゃん精神だぞ 自身の配信でもそう言ってるじゃん こういう技術どうこう言う技術者は無能ってさw
369 名前:デフォルトの名無しさん (ワッチョイ 375f-Hgfr) mailto:sage [2023/05/03(水) 12:31:50.95 ID:6d/7YSFK0.net] そそ、使いもしない単体モジュールの境界テストとか負荷テストとか無駄 トータルできちんと動いてくれればそれで良い
370 名前:デフォルトの名無しさん (スッップ Sdbf-fitb) [2023/05/03(水) 12:48:43.53 ID:foxDzL7Ed.net] test
371 名前:デフォルトの名無しさん (ワッチョイ 57ad-0AmK) [2023/05/03(水) 13:19:12.96 ID:PpDaqr1l0.net] そんであるとき負荷が掛かったりちょっと改修したときに爆発する
372 名前:デフォルトの名無しさん (ササクッテロリ Sp8b-Hgfr) mailto:sage [2023/05/03(水) 13:25:11.18 ID:ll4FWYPGp.net] >>367 改修したらトータルできちんとテストしたら良いだけだろ
373 名前:デフォルトの名無しさん (ササクッテロリ Sp8b-Hgfr) mailto:sage [2023/05/03(水) 13:25:47.69 ID:ll4FWYPGp.net] むしろ改修した箇所だけのテストとかあり得ないよな
374 名前:デフォルトの名無しさん (ブーイモ MMbf-SYdp) [2023/05/03(水) 13:27:55.56 ID:t3wVQNi7M.net] 使いもしない単体モジュールがそもそもなぜあるの? テストするまでもなく削除すればいいのに
375 名前:デフォルトの名無しさん (ワッチョイ ffbb-zzYQ) mailto:sage [2023/05/03(水) 13:28:01.67 ID:RLCA5WWQ0.net] その「トータルできちんとテスト」ってなんだ?
376 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 13:31:19.49 ID:iydNsBEo0.net] 結合テストとかの事やろ
377 名前:デフォルトの名無しさん (ワッチョイ ffbb-zzYQ) mailto:sage [2023/05/03(水) 13:35:10.87 ID:RLCA5WWQ0.net] 結合テストすることを「トータルできちんとテスト」って呼ぶ層があるんだ 俺の知らん世界だな…
378 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 13:35:53.83 ID:iydNsBEo0.net] >>370 普通にあるやろ 使うと思ってとか今後の拡張性の為にとかオーバーロード関数用意したけど使われてないとか 特に多いのが今後の拡張性云々とかカスタマイズ用とかってやつ 実際に拡張とかカスタマイズする時に使い物にならなくて設計からやり直す つまり全くの無駄
379 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 13:39:34.40 ID:iydNsBEo0.net] >>373 結合テストは俺が勝手に言っただけや でもリリース前ってそれだけじゃ無いじゃん しかもそれって会社とかでも違うやん だからどれとは言えないもんやで 俺の会社だと結合テスト以外だと外部にセキュリティテスト依頼したり社内の品管のテストとシステム監査が入る
380 名前:デフォルトの名無しさん (ワッチョイ 975f-VSqy) mailto:sage [2023/05/03(水) 13:41:01.73 ID:eaeSSGs50.net] 使われないモジュールを書いてしまうおじさんや、非機能要件を無視する(あるいは認識できない)おじさんも淘汰される
381 名前:デフォルトの名無しさん (ワッチョイ ffbb-zzYQ) mailto:sage [2023/05/03(水) 13:45:11.16 ID:RLCA5WWQ0.net] > セキュリティテスト依頼したり社内の品管のテストとシステム監査が入る こんなテストや監査が想定されてる中、ユニットテストが無駄だって思ってるってこと?
382 名前:デフォルトの名無しさん (ワッチョイ ffbb-zzYQ) mailto:sage [2023/05/03(水) 13:51:12.96 ID:RLCA5WWQ0.net] ちょっとまって! > 外部にセキュリティテスト依頼したり社内の品管のテストとシステム監査が入る こんなプロジェクトで「動けばいい」ってスタンスで仕事してんのか? マジか
383 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 13:51:42.78 ID:iydNsBEo0.net] >>377 俺が言った訳じゃ無いけどなw まあ俺は単体テストはアリだと思うぞ 単体テストの結果でもって要は作業完了証明やろ 逆に言えば以降は俺の責任じゃ無いと言えるし仕様変更は別に金取れる
384 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 13:53:02.57 ID:iydNsBEo0.net] >>378 そうだぞ だって製品の検査で調べるのはその動くかどうかじゃん 中のコードがどうとか技術がどうとか関係無いやん
385 名前:デフォルトの名無しさん (ワッチョイ ffbb-zzYQ) mailto:sage [2023/05/03(水) 13:55:01.32 ID:RLCA5WWQ0.net] すごいな。そのプロジェクト 俺の知ってる世界だと、そんなコード見せられたらレビュアーが怒り狂うわ
386 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 13:57:38.37 ID:iydNsBEo0.net] >>381 多分お前が普段使ってる様なアプリもそんなもん その神経質で無能なレビューアーが関係してるお前のシステムって世界でどんだけ売れてんのって話
387 名前:デフォルトの名無しさん (ワッチョイ 1707-rvTa) mailto:sage [2023/05/03(水) 13:59:04.86 ID:7KJ/CzIt0.net] 動けばいいとしつこく言ってるやつはただの無職だよ 無職の妄想の中ではそうなんだろうさ 現実には動くのは当然で最低限でしかないんだけどね
388 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 14:03:35.88 ID:iydNsBEo0.net] >>383 そうは言ってるけどじゃあそれ以上に何が必要か言えてないやん ちなみに話の流れは >>330 >>333 みたいなコードの内容から来てるんやで こういうコードが糞だろうが動けば良いって話だから脱線するなよ お前等っていつも前提間違ってるからなw
389 名前:デフォルトの名無しさん (ワッチョイ bfbc-o+T5) mailto:sage [2023/05/03(水) 14:06:31.39 ID:5+L69Iha0.net] まああんまり完璧なコードを書くと、その後の仕事がなくなるからな。
390 名前:デフォルトの名無しさん (ワッチョイ ffbb-zzYQ) mailto:sage [2023/05/03(水) 14:09:44.71 ID:RLCA5WWQ0.net] > 777c-KiN+ ついでに聞くけど、お前の中でシステム監査ってどんなもんなの?
391 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 14:15:23.93 ID:iydNsBEo0.net] >>386 すまん無能の質問の意味が分からん システム監査って経済産業省とかIPAに定義あるよね 普通はそれに準拠したものが一般的だと思うんだ つまり共通認識じゃないの? 無能の頭の中って俺俺監査があるん?
392 名前:デフォルトの名無しさん (ワッチョイ ffbb-zzYQ) mailto:sage [2023/05/03(水) 14:19:36.70 ID:RLCA5WWQ0.net] > だって製品の検査で調べるのはその動くかどうかじゃん こんなこと言ってるし、また俺の
393 名前:シラン世界があるのかと [] [ここ壊れてます]
394 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 14:26:32.08 ID:iydNsBEo0.net] >>388 アホw まさか動くかどうかが機能要件や非機能要件 セキュリティ要件満たしてないと思ってる? それこそ最低限満たした上で動く事だよね その上で中のコードが>>384 で言った様な糞コードかどうか関係無いよねって話だ ほら言った様に話の流れが分かって無い 理解してない 前提を間違ってる 無能だな
395 名前:デフォルトの名無しさん (ワッチョイ 9f4b-gncP) [2023/05/03(水) 14:26:49.46 ID:vL8FscsM0.net] GWだねぇ
396 名前:デフォルトの名無しさん (ワッチョイ ffbb-zzYQ) mailto:sage [2023/05/03(水) 14:30:01.23 ID:RLCA5WWQ0.net] >>389 > まさか動くかどうかが機能要件や非機能要件 セキュリティ要件満たしてないと思ってる? システム監査ってそういうことじゃないぞ お前の中のシステム監査ってどんなもんなん?
397 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 14:37:49.92 ID:iydNsBEo0.net] >>391 繰り返すアホ
398 名前:デフォルトの名無しさん (スッップ Sdbf-oJ27) [2023/05/03(水) 14:42:38.57 ID:s1pMNzuQd.net] >>391 お前が間違ってるんじゃ? 経済産業省のシステム監査基準だとセキュリティガイドライン等に準拠してるか云々って書いてあるしそういう事を監査するもんじゃないの?
399 名前:デフォルトの名無しさん (ワッチョイ ffbb-zzYQ) mailto:sage [2023/05/03(水) 14:48:38.92 ID:RLCA5WWQ0.net] 俺の知ってる世界だと、システム監査ってのは雑に言うとシステムを体制として担保する方法ができてるかを確認するもの で、「機能要件や非機能要件 セキュリティ要件」に関連した箇所でいうと、それらの要件が正しく永続的に保証できる証跡が残せるか?って観点で監査される つまり、 > だって製品の検査で調べるのはその動くかどうかじゃん ってことにはならんのよ だから、コーダーが「動けばいい」ってスタンスで仕事してたら、レビュアーが体制としてブチ切れるんだわ で、お前の中のシステム監査ってどんなもんなん?
400 名前:デフォルトの名無しさん (ワッチョイ 9f2f-g9Ql) mailto:sage [2023/05/03(水) 15:09:07.11 ID:fD0yPqm80.net] 動けばいいってのは なぜそう書かないほうが良いのか、ちゃんと理解して説明できないやつの言い訳 まあそう書くなって言ってる奴もちゃんと説明できてないんだがな
401 名前:デフォルトの名無しさん (ワッチョイ ff10-By2c) mailto:sage [2023/05/03(水) 15:19:09.40 ID:YldI9T9X0.net] >>390 GW終わって2ヵ月ちょい経つと今度は夏だねぇってなるんだよな
402 名前:デフォルトの名無しさん (ワッチョイ 1f3d-VWCj) mailto:sage [2023/05/03(水) 15:26:23.95 ID:49Yy066J0.net] ぼんやりとした質問ですが、 Form1にWebView2が合ったとして、Form2でお気に入りを作って、Form2からForm1の WebView2にナビゲートしたいんです。 やってみたんですが、Form1にあるはずのWebViewがForm2から出てこないんです。 調べてみたらキャスト?とかいうのが必要らしくて、キャストはちんぷんかんぷんです。 コード書いておくので誰かお助けを~ 後Form1のWebview2にアクセスしようとしたら保護がかかってしまいました。 ランタイムを噛ませたりとかよく分かりません。 こんな超初心者の俺ですが、助けてください。 private async Task InitializeAsync() { await webView21.EnsureCoreWebView2Async(null); } private async void Form1_Load(object sender, EventArgs e) { await InitializeAsync(); webView21.CoreWebView2.Navigate("https://web.biz-prog.net/"); }
403 名前:デフォルトの名無しさん (ワッチョイ 1f3d-VWCj) mailto:sage [2023/05/03(水) 15:26:47.58 ID:49Yy066J0.net] private void button1_Click_1(object sender, EventArgs e) { Form2 f2 = new Form2(this); // 自フォームへの参照を渡す f2.Show(); // サブ・フォームを表示 } ここからForm2 public partial class Form2 : Form { Form1 f1; private object webView21; public Form2(Form1 f) { f1 = f; InitializeComponent(); } 試して見たんですが、オートコンプリートに((Form1)).webview2が出てきません
404 名前:デフォルトの名無しさん (ワッチョイ ff10-By2c) mailto:sage [2023/05/03(水) 16:36:13.15 ID:YldI9T9X0.net] Form1に配置してるWebView2がprivateで宣言されてるからじゃないかね VS使ってるならデザイナーで選択してプロパティウィンドウのModifiersを確認して PrivateになってるならInternalかPublicにしたらいいよ
405 名前:デフォルトの名無しさん (ササクッテロリ Sp8b-Hgfr) mailto:sage [2023/05/03(水) 16:48:57.57 ID:rOyAnSv/p.net] プライベートのままアクセサ作れば良くね?
406 名前:デフォルトの名無しさん (ワッチョイ bf42-fitb) mailto:sage [2023/05/03(水) 17:56:30.72 ID:DnrzKFHb0.net] そもそも素人コーディングをやるやつがマトモなアプリ書けるとは思えん アプリの作り方を勉強した人ならマシなコード書くからな
407 名前:デフォルトの名無しさん (ワッチョイ 1f3d-VWCj) mailto:sage [2023/05/03(水) 19:51:19.18 ID:49Yy066J0.net] >>399-401 解決しました。ありがとうございます。
408 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 21:30:59.09 ID:iydNsBEo0.net] >>394 あのさちゃんと読んだ? お前は前提を勘違いしてるんだよ 動けば良いってそういう事じゃ無いんよ
409 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 21:35:17.93 ID:iydNsBEo0.net] >>394 もっと分かりやすい例を出そう 例えば同じ処理を100箇所コピペ出実装したとする 普通なら関数化してってやるわな こんな100箇所コピペした糞コードでもシステム監査や他のテストでは一切問題にならない 動けば良いんだよ
410 名前:デフォルトの名無しさん (ワッチョイ 1707-rvTa) mailto:sage [2023/05/03(水) 21:36:12.63 ID:7KJ/CzIt0.net] アスペしつこいな
411 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 21:40:43.87 ID:iydNsBEo0.net] >>405 お前みたいな無能が多くて困ってる
412 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 21:42:02.40 ID:iydNsBEo0.net] もっというと例えばMV系フレームでこの処理はモデルに書くべきだとかどうとか こういうのもどうでもいい モデルで書くべきだろうが書くべきで無かろうが 動けば良いんだよ
413 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 21:43:26.02 ID:iydNsBEo0.net] オブジェクト指向もそう クラス設計がどうだの継承がどうだのどうでもいい 動けば良いんだよ
414 名前:デフォルトの名無しさん (ワッチョイ 777c-KiN+) mailto:sage [2023/05/03(水) 21:46:03.28 ID:iydNsBEo0.net] このクラスでカプセル化されてないから云々 どうでも良い 動けば良いんだよ
415 名前:デフォルトの名無しさん (ワッチョイ 3702-ITaW) mailto:sage [2023/05/03(水) 21:55:41.82 ID:XU1+7Xhm0.net] 触らぬキチに祟りなし
416 名前:デフォルトの名無しさん (オッペケ Sr8b-0AmK) [2023/05/03(水) 22:10:57.21 ID:7dxnHkZLr.net] まあ中小規模だと“動けばいい”でやってるのも事実だからなぁ エクセルにチェックつけてペタペタしてソースは見ないなんてのもザラ なんならちょっとしたものなら本人が動いてる!で終わりとかね
417 名前:デフォルトの名無しさん (ワッチョイ 7f79-YtWG) mailto:sage [2023/05/03(水) 22:36:48.59 ID:0fnUMlbu0.net] >>411 動けばいいよりちょっと良くなると 何が良くなるの? 資料も書かないくせに余計な拡張要素入れたがるやつってぶっ殺したくなるんだけど? お前もその類?
418 名前:デフォルトの名無しさん (スップ Sdbf-orLb) mailto:sage [2023/05/04(木) 01:49:28.43 ID:s0gu/juAd.net] 可読性がよくなる バグが入り辛くなる 後釜がコード読んで罵倒せずにすむ 自分がクソコードに遭遇する可能性が減る
419 名前:デフォルトの名無しさん (アウアウアー Sa4f-ef8y) mailto:sage [2023/05/04(木) 03:35:15.40 ID:FCXcO5KQa.net] 資料を書く・書かないとコードを改善する・しないは別問題なのになんかキレ散らかしてるの怖・・・
420 名前:デフォルトの名無しさん (ワッチョイ ff10-By2c) mailto:sage [2023/05/04(木) 06:46:14.26 ID:gb1C7wFP0.net] なんぞ嫌なことでもあったんだろうw
421 名前:デフォルトの名無しさん (アウアウウー Sa1b-rvTa) mailto:sage [2023/05/04(木) 07:31:56.06 ID:iNiPzsH8a.net] 糞コード納品してリテイク食らって動けばいいといくら主張しても却下されてここで八つ当たりしてんじゃね
422 名前:デフォルトの名無しさん (ブーイモ MMbf-SYdp) [2023/05/04(木) 08:16:56.65 ID:2P3iGn2SM.net] 寿命の短いゲームの開発とかには動けばいいだろのメンタリティでコード書いてるやつが多い結構いる 実際クソコードだからバグ修正のアプデでまたバグるのも日常茶飯事
423 名前:デフォルトの名無しさん mailto:sage [2023/05/04(木) 10:57:14.77 ID:KzOav63c0.net] オマエらって普段からそんな立派なコード書いてるの? 皮肉でも何でもなく、大手さんの寄越したコードでもネットのサンプルをそのままコピペとか普通にあったんだけど。 アマゾンの AWS 用のサンプルコードとかでも整理なにそれなコードも普通にあるし。 ああいうレベルのものでも水準を満たしていたりするんだろうか。 まあ自分も普段は納品する側の中小だけど。
424 名前:デフォルトの名無しさん mailto:sage [2023/05/04(木) 11:02:54.68 ID:vtPK3lgJ0.net] >>1 読め
425 名前:デフォルトの名無しさん mailto:sage [2023/05/04(木) 12:11:12.80 ID:7U0ATqEaM.net] >>413 ドキュメントでも書いてよ
426 名前:デフォルトの名無しさん mailto:sage [2023/05/04(木) 13:12:46.06 ID:nZfQ3MKS0.net] >>418 PSNの個人情報流出思い出した dobon(だったはず)丸パクリの暗号化だった。"saltは8バイト以上"っていう文字列で復号化できた オレが作った社内システムも同じことしてた。 社内システムだからセキュリティは気にしてないが。
427 名前:デフォルトの名無しさん mailto:sage [2023/05/04(木) 13:16:44.41 ID:mx5edemad.net] >>420 クソコードをドキュメントに起こすときのモチベーション低下もあるな 規則性がないからな あの頃の俺はなんでこんな変な処理を……
428 名前:デフォルトの名無しさん mailto:sage [2023/05/04(木) 15:58:14.71 ID:/htkaizY0.net] >>422 言い訳はいいから書いて
429 名前:デフォルトの名無しさん mailto:sage [2023/05/04(木) 16:21:40.44 ID:FCTf23V0d.net] ?意味わからん まさか今から書いて上げろって言ってる?
430 名前:デフォルトの名無しさん (ワッチョイ 9354-ouLR) [2023/05/06(土) 20:43:47.65 ID:8uPWyiyX0.net] 非同期ファイルコピーのサンプルを探していたら、FileStream を使う方法と File.Copy を使う方法があるようなのですが、どっちがいいのでしょうか? それぞれのメリット・デメリットが知りたいです。 //方法 1 (FileStream) private static async Task CopyFileAsync(string sourceFilePath, string destinationFilePath) { using (var sourceStream = new FileStream(sourceFilePath, FileMode.Open, FileAccess.Read, FileShare.Read, bufferSize: 4096, true)) using (var destinationStream = new FileStream(destinationFilePath, FileMode.CreateNew, FileAccess.Write, FileShare.None, bufferSize: 4096, true)) { await sourceStream.CopyToAsync(destinationStream); } } //方法 2 (File.Copy) private static async Task<bool> CopyFileAsync(string srcFileName, string destFileName) { await Task.Run(() => File.Copy(srcFileName, destFileName)); return true; }
431 名前:デフォルトの名無しさん (ワッチョイ cb10-W4Ad) mailto:sage [2023/05/06(土) 22:50:57.94 ID:v1IlMQax0.net] とりあえず機能させたいならFileCopyで十分 中断とか進捗状況確認とか融通が利くのがFileStream
432 名前:デフォルトの名無しさん (ワッチョイ c2bd-O5MS) mailto:sage [2023/05/06(土) 23:28:08.83 ID:TzwbEMRu0.net] File.Copyだと同期処理がスレッドを専有しそう。 FileStream.CopyToAsyncだとそうならないように実装されているのかな?
433 名前:425 (ワッチョイ 9354-ouLR) mailto:sage [2023/05/07(日) 00:12:10.49 ID:/tWxMywy0.net] >>426-427 ありがとうございます。 FileStream を使うことにしました。
434 名前:デフォルトの名無しさん (ワッチョイ 9354-ouLR) mailto:sage [2023/05/07(日) 00:41:03.38 ID:/tWxMywy0.net] >>425 の方法でファイルコピー後、コピー先ファイルのタイムスタンプを変更しようとしたら、例外が発生します。 頻度は10回に1回あるかないか程度です。 何が原因でしょうか? static async Task Main(string[] args) { await CopyFileAsync("コピー元ファイル名.txt","コピー先ファイル名.txt"); } static async Task CopyFileAsync(string srcFileName, string destFileName) { using (var srcStream = new FileStream(srcFileName, FileMode.Open, FileAccess.Read, FileShare.Read, bufferSize: 4096, true)) using (var destStream = new FileStream(destFileName, FileMode.Create, FileAccess.Write, FileShare.None, bufferSize: 4096, true)) { await srcStream.CopyToAsync(destStream); //試しにFlush・Close・Dispose 入れてみたけどダメでした。 srcStream.Flush(); destStream.Close(); srcStream.Close(); destStream.Dispose(); srcStream.Dispose(); } var lastWriteTime = File.GetLastWriteTime(srcFileName); File.SetLastWriteTime(destFileName, lastWriteTime); //ここで、: '別のプロセスで使用されているため、プロセスはファイル 'コピー先ファイル名.txt' にアクセスできません。'
435 名前:425 (ワッチョイ 9354-ouLR) mailto:sage [2023/05/07(日) 00:57:48.70 ID:/tWxMywy0.net] 方法 2 (File.Copy) の方法でも発生しました。 まったく原因の見当がつきません・・・
436 名前:デフォルトの名無しさん (ワッチョイ 5eda-xrk/) mailto:sage [2023/05/07(日) 00:58:07.18 ID:AUxqabWy0.net] ef coreでDBからレコードを大量に取得する場合、 (A) foreach( var row in await query.ToListAsync() ) で取得する場合と (B) foreach( var row in query ) で取得する場合、どちらがアプリサーバで消費するメモリが多いでしょうか? queryはIQueryable<T>型です。 DBサーバとアプリサーバは分かれています (A)だとDBサーバから結果が全部返るまで待ってからループ開始、 (B)ならストリーミングで読み出せたところからループ処理 って勝手に想像してたんですが、ef coreで使用するDBMSのミドルウェアに依存でしょうか 具体的にはDBMSはpostgresqlです。 このあたりのドキュメントあったらURL教えてください
437 名前:デフォルトの名無しさん (ラクッペペ MMde-yLVR) mailto:sage [2023/05/07(日) 01:21:55.84 ID:m4wk6w14M.net] onedriveとかgoogledriveとかdefenderとかnortonとか
438 名前:425 (ワッチョイ 9354-ouLR) [2023/05/07(日) 01:29:00.89 ID:/tWxMywy0.net] とりあえず原因不明なので、最大10回を上限に、例外発生したらリトライするようにしました・・・ int j = 0; bool b = false; while (!b || j < 10) { try { //コピー処理 b = true; } catch { continue; } j++; }
439 名前:デフォルトの名無しさん (ワッチョイ 9354-ouLR) mailto:sage [2023/05/07(日) 01:37:17.63 ID:/tWxMywy0.net] >>432 Windows Defender 無効にしたら例外が発生しなくなりました! 天才さんありがとうございます!(>▽<)
440 名前:デフォルトの名無しさん (オッペケ Src7-KeI6) mailto:sage [2023/05/07(日) 08:06:15.51 ID:ZcKb5BN5r.net] >>431 DB絡んでないけど一般論としては https://atmarkit.itmedia.co.jp/ait/articles/1409/24/news105.html もっともODBCドライバとかDBプロパイダの作りがザルだとクエリ実行結果を一気に全件取り出して アプリサーバ上のメモリ上に保持してる可能性もゼロではないけど、postgresならそんなことはないだろう 実体化したくないけど非同期でレコードを取り出したいってことなら await foreach( var row in query.AsAsyncEnumerable() )
441 名前:デフォルトの名無しさん (ワッチョイ 5eda-xrk/) mailto:sage [2023/05/07(日) 11:06:44.59 ID:AUxqabWy0.net] >>435 ありがとうございます。 ToList()やToListAsync()はすべての結果が利用可能になるまで何も返されない、つまり 大量レコード処理には向かない (B)の場合でもAsNoTracking()をつけて変更検知をOFFにしないと Linq to DBがキャッシュしてしまいメモリ使用量が大きくなる (B)でさらにI/Oをブロックしたくない場合、非同期ストリームを利用する ということで大量レコードをチビチビ処理する場合は async foreach( var row in query.AsNoTracking() ) という書き方に落ち着きました 他の参考URL https://stackoverflow.com/questions/56176176/difference-between-tolistasync-and-asasyncenumerable-tolist https://stackoverflow.com/questions/3688213/iterating-through-iqueryable-with-foreach-results-in-an-out-of-memory-exception
442 名前:デフォルトの名無しさん (ワッチョイ 5eda-xrk/) mailto:sage [2023/05/07(日) 11:09:18.20 ID:AUxqabWy0.net] ミス 最終的に async foreach( var row in query.AsNoTracking().AsAsyncEnumerable() ) という書き方に落ち着きました
443 名前:デフォルトの名無しさん (ワッチョイ 4679-U4yn) mailto:sage [2023/05/07(日) 11:24:15.43 ID:4ZIcGn3M0.net] 終わるまでにめっちゃメモリ使って死ぬ感じある
444 名前:デフォルトの名無しさん (ワッチョイ 1279-y4C+) mailto:sage [2023/05/07(日) 14:06:12.41 ID:O0op5Uvp0.net] Defenderやらが邪魔するのはそうなんだろうけど C/C++でACLや属性変更でリトライなんてしてた覚えないからC#のDisposeでファイルがちゃんとクローズできてないだけな気もする
445 名前:デフォルトの名無しさん (ササクッテロリ Spc7-Z7Ea) mailto:sage [2023/05/08(月) 10:05:23.91 ID:3mw2N0vvp.net] Disposeでクローズなんかしないだろ? つかそんな実装頼みの使い方してたら痛い目に遭うぞ
446 名前:デフォルトの名無しさん (ワッチョイ b7e5-tcUg) mailto:sage [2023/05/08(月) 13:04:12.03 ID:h5IiweHd0.net] using制御しかしてないわ
447 名前:デフォルトの名無しさん (スプッッ Sd52-8wHc) mailto:sage [2023/05/08(月) 13:11:33.93 ID:x7lJRSufd.net] >>439-441 >>429 はWidows Defenderのせいにして終わってるから 納得できる形で解決してみせてよ
448 名前:デフォルトの名無しさん (ササクッテロリ Spc7-Z7Ea) mailto:sage [2023/05/08(月) 13:27:23.81 ID:Rh3bbmbap.net] >>442 非同期なら当たり前に発生するなw
449 名前:デフォルトの名無しさん (ラクッペペ MMde-yLVR) mailto:sage [2023/05/08(月) 13:29:30.54 ID:QcInbmeDM.net] ファイルを閉じるから横取りされるんだぞ
450 名前:デフォルトの名無しさん (スッップ Sd32-KeI6) mailto:sage [2023/05/08(月) 13:38:05.76 ID:TxJAG0JMd.net] 今回みたいなケースでファイルクローズ直後にファイルいじろうとすると使用中の様な警告出ることあるから 基本的にリトライするようなコード入れてるけどそんなことないのかね
451 名前:デフォルトの名無しさん (ササクッテロリ Spc7-Z7Ea) mailto:sage [2023/05/08(月) 13:53:31.24 ID:xSxPowKip.net] OS側の処理も非同期なんだと予想
452 名前:デフォルトの名無しさん (スプッッ Sd52-8wHc) mailto:sage [2023/05/08(月) 15:24:20.83 ID:NYRttg47d.net] いちいちリトライなんか仕込んてたらハゲそう イラネーヨって言ってくれ
453 名前:デフォルトの名無しさん (ワッチョイ c2bd-O5MS) mailto:sage [2023/05/08(月) 23:17:00.86 ID:n3psyKuA0.net] >>440 IDisposableを継承しているのにクローズしなかったら使い物にならないだろ。 例えばFileStreamクラスのDispose()には、 Stream によって使用されているすべてのリソースを解放します。 とあるので、当然Closeもする。
454 名前:デフォルトの名無しさん (ワッチョイ c2bd-O5MS) mailto:sage [2023/05/08(月) 23:18:14.32 ID:n3psyKuA0.net] あ、継承じゃなくて実装だ。
455 名前:デフォルトの名無しさん (ワッチョイ cb7c-DUGT) mailto:sage [2023/05/09(火) 04:40:15.34 ID:fisd8t0i0.net] Disposeの処理の中でClose普通に呼んでたはず ソース見りゃ分かるやろ
456 名前:448 (ワッチョイ c2bd-O5MS) mailto:sage [2023/05/09(火) 04:54:39.15 ID:b+hc+8Ui0.net] >>450 >>440 が「そんな実装頼みの」って言ったので、あえてソースを見ずにドキュメントの内容で答えた。
457 名前:デフォルトの名無しさん (アウグロ MMb3-G648) mailto:sage [2023/05/09(火) 07:21:46.18 ID:2h4Q3q9eM.net] asyncawaitに対応してない何かがあるのかもな
458 名前:デフォルトの名無しさん mailto:sage [2023/05/09(火) 08:53:33.61 ID:F+qDabIr0.net] 自作じゃない.NET純正で、Taskを返す〇〇Asyncメソッドがasyncawait対応してないは無いでしょ
459 名前:デフォルトの名無しさん mailto:sage [2023/05/09(火) 10:25:27.81 ID:wTiHbcrZp.net] だから、OSだって非同期にファイル処理してるんだろ? で、完了通知なんて受けて無いw
460 名前:デフォルトの名無しさん mailto:sage [2023/05/09(火) 11:26:49.94 ID:TDrxScizd.net] C#のファイル操作が遅いからファイルコピーと属性変更との間にWindowsDefebderが割り込んでスキャンされて妨害されるのかもしれない 知らんけど
461 名前:デフォルトの名無しさん mailto:sage [2023/05/09(火) 11:28:32.40 ID:LwvaBWbia.net] >>455 win32apiを使ってるのでさすがにそれなはい 削除してもすぐにファイルが消えないのはあるあるだからリトライするのが定番
462 名前:デフォルトの名無しさん [2023/05/09(火) 11:46:04.35 ID:vAJE1vUCr.net] とはいえ 頻度は10回に1回あるかないか程度 Windows Defender 無効にしたら例外が発生しなく なら妥当かもしれない
463 名前:デフォルトの名無しさん mailto:sage [2023/05/09(火) 16:21:49.31 ID:GXFqLAgP0.net] >>429 これ閉じる前にFileStream.SafeHandle使ってSetLastWriteTime(SafeFileHandle, DateTime)のオーバーロード使うのはどうなの?
464 名前:デフォルトの名無しさん mailto:sage [2023/05/09(火) 20:43:33.82 ID:ZCATFg/N0.net] 質問なんですが formのbutton1.textをテキストボックスから取得したいのですが、 テキストが長い場合、ボタンのテキストが改行されてしまいます 表示が後半隠れてしまうのは別に構わないのですが、 改行がおこるとテキストがボタンの上側に移動してしまいます button1.textを改行しないようにできないでしょうか?
465 名前:デフォルトの名無しさん mailto:sage [2023/05/09(火) 22:36:11.30 ID:ZhePtJGs0.net] ボタンのPaintイベントで自前描画すればOK
466 名前:デフォルトの名無しさん (ワッチョイ 1279-y4C+) mailto:sage [2023/05/09(火) 22:41:53.48 ID:U2HEifZi0.net] button1.AutoEllipsis = true;
467 名前:デフォルトの名無しさん (ブーイモ MMdb-mskx) mailto:sage [2023/05/10(水) 10:41:28.62 ID:B1N+exWkM.net] どなたか教えてくださいC#です public class Person { public Name Name { get; set; } } public class Name { public string NameText { get; set; } } こういうクラスがあったとして、 var p = new Person { Name = {}, }; Console.WriteLine(p.Name); これはnullが出力されるんですが、構文解析時のName={}の右辺はどういう評価をされてるんでしょうか? また var p = new Person { Name = {NameText=""}, }; これもコンパイルは通りますが実行時にObject reference not set to an instance of an object.で落ちます Name = {NameText=""}, の{NameText=""}は構文解析時にどういうモノとして扱われてるんでしょうか? 本来はName= new Name{NamText=...}とするところで、new {クラス名}を書き忘れたらビルドが通っていたのでなんだろうと思った所存です
468 名前:デフォルトの名無しさん (ワッチョイ b74f-hGOv) mailto:sage [2023/05/10(水) 11:20:13.56 ID:iQXLAALm0.net] オブジェクト初期化子 1つ目のケースは初期化するプロパティがないので何もしない 2つ目のケースはこれと同じ意味になる var p = new Person(); p.Name.NameText = ""; https://ufcpp.net/blog/2016/12/tipsobjectinitializer/
469 名前:デフォルトの名無しさん (ワッチョイ 52de-KeI6) mailto:sage [2023/05/10(水) 11:21:23.96 ID:tkTpg3dz0.net] >>460 レスありがとう、Paintイベント追加で自力でやるのはけっこう大変そうですね >>461 ありがとう、...省略はできたけど、文字は上側に寄ったままでした button1.Padding.Topに4ぐらいいれたら解決しました
470 名前:デフォルトの名無しさん (ブーイモ MMdb-mskx) mailto:sage [2023/05/10(水) 11:27:39.61 ID:NYVeTygZM.net] >>463 なるほど!ありがとうございます! いやーこれはコンパイル時に落としてほしい…
471 名前:デフォルトの名無しさん (ワッチョイ ff2d-vOwS) mailto:sage [2023/05/10(水) 11:28:45.20 ID:qs6QvCEc0.net] Formsで独自描画はバッドノウハウに近いと思う スケーリング考慮してないのばっかり
472 名前:デフォルトの名無しさん (ワッチョイ b74f-hGOv) mailto:sage [2023/05/10(水) 13:49:34.03 ID:iQXLAALm0.net] >>465 AのコンストラクタでNameがnewされてたら問題ないわけだし使い分けでしかないね nullableを有効化しとけばこのケースだとAのNameがnull許容でもnull非許容でも警告出してくれるよ
473 名前:デフォルトの名無しさん (ワッチョイ c23d-Lyct) [2023/05/10(水) 14:23:44.58 ID:6sAnxqBz0.net] C#でASP.NETでHTMLコード書くにはどこいじればいいの?
474 名前:429 (ワッチョイ 9354-ouLR) [2023/05/10(水) 17:05:27.60 ID:QPN4FwhI0.net] 私にとっての解決後も議論があったようですが、 Windows Defender を無効化 ( Windows Defender の [除外] に、コピー先フォルダを登録する ) してから、1回も発生していません。 for(int i = 0; i < 100; i++){} での 100回ループテストを何度か行っても発生していないので、自分の中では解決済みになっています。
475 名前:デフォルトの名無しさん (ササクッテロル Spc7-Z7Ea) mailto:sage [2023/05/10(水) 18:11:17.94 ID:rAs2Y7NDp.net] ファイル内容変更したからウイルスチェックが走ってんじゃん ってオチかよw
476 名前:デフォルトの名無しさん (ワッチョイ 1610-tcUg) mailto:sage [2023/05/10(水) 18:54:24.51 ID:6aE3wdSe0.net] オチかよも何も、最初からそういう話だったのに DisposeがちゃんとやってないんだろとかOSの遅延がうんたらとか頭でっかちが騒いでるだけやで
477 名前:デフォルトの名無しさん (ワッチョイ 4679-jUDw) mailto:sage [2023/05/10(水) 18:59:46.60 ID:KHK6MiQv0.net] asyncawaitってスレッドセーフのメソッドじゃなくても使っていんだっけ?
478 名前:デフォルトの名無しさん (アウアウウー Sac3-16n5) mailto:sage [2023/05/10(水) 19:16:24.65 ID:PlKEk/pSa.net] >>456 で結論書いてやったのにまだやってたのか
479 名前:デフォルトの名無しさん (ササクッテロル Spc7-Z7Ea) mailto:sage [2023/05/10(水) 19:57:37.80 ID:n33wvc2tp.net] >>473 全く結論になって無いよあれ 単なる対症療法なだけだろw
480 名前:デフォルトの名無しさん (アウアウウー Sac3-16n5) mailto:sage [2023/05/10(水) 20:01:05.91 ID:PlKEk/pSa.net] その対症療法が唯一の治療法なんだがまだそれもわからないのかよw
481 名前:デフォルトの名無しさん (アウアウウー Sac3-16n5) mailto:sage [2023/05/10(水) 20:03:31.18 ID:PlKEk/pSa.net] リソースを占有できるのがそのスレッドだけではない場合 つまり今回と同様の場合だな 原因がセキュリティソフトかバックアップソフトか何かは全く関係ない 時間を置いて何度かリトライしてそれでもだめなら例外を投げる 基本中の基本だぞ?
482 名前:429 (ワッチョイ 9354-ouLR) mailto:sage [2023/05/10(水) 20:19:03.60 ID:QPN4FwhI0.net] 議論再燃させて申しわけありません。 消えます。
483 名前:デフォルトの名無しさん (ワッチョイ 4679-jUDw) mailto:sage [2023/05/10(水) 21:49:28.98 ID:KHK6MiQv0.net] みんな参加できるし いい内容だと思う
484 名前:デフォルトの名無しさん (ワッチョイ 1610-tcUg) mailto:sage [2023/05/10(水) 22:26:34.42 ID:6aE3wdSe0.net] >>1 > 議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
485 名前:デフォルトの名無しさん (ワッチョイ ff2d-vOwS) mailto:sage [2023/05/10(水) 23:13:27.93 ID:qs6QvCEc0.net] >>475 ,476 今回の場合(>>429 )は、ファイルを一旦解放するのが問題なんだから、>>458 の方法で上手く行くでしょ
486 名前:デフォルトの名無しさん (ワッチョイ ff2d-vOwS) mailto:sage [2023/05/10(水) 23:27:09.51 ID:qs6QvCEc0.net] ファイル削除のことならリトライは必要だけど、今回のと関係ないね
487 名前:デフォルトの名無しさん (ワッチョイ 335f-Z7Ea) mailto:sage [2023/05/10(水) 23:39:29.79 ID:+U2L2taI0.net] てか、ファイル操作するのに、排他しなきゃだよな? 一度手放したら他のプロセスに横取りされちゃうだろ
488 名前:デフォルトの名無しさん (ワッチョイ 335f-LLT0) mailto:sage [2023/05/10(水) 23:54:07.74 ID:of34847N0.net] もう一度再現させた上でロックしているプロセスが本当にWindows Defenderだったのか確認しない限り不毛な議論では?
489 名前:デフォルトの名無しさん (ワッチョイ 4679-U4yn) mailto:sage [2023/05/11(木) 02:59:54.64 ID:YOUU3VFS0.net] っていうかどうしたいんだろ コピー後のファイルを 誰かがつかんだままにすれば 似たようなエラーはいつでも 起こせるし起きちゃうじゃん それがこのアプリにとってレアケースでないなら他アプリがつかんだママのときの動作を仕様で定義するべきだと思う
490 名前:デフォルトの名無しさん (ワッチョイ ff2d-vOwS) mailto:sage [2023/05/11(木) 03:21:28.69 ID:rPH4vL1P0.net] >>484 >>429 のソースを見るに、ファイルの最終書き込み時刻を保ったままコピーしたいんでしょうよ コピー先のファイル作成とタイムスタンプ操作を1回の排他モードオープン〜クローズの間にまとめてやれば 他のプロセスに割り込まれようが無いし、その後につかまれてもやること終わってるから問題無い
491 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 08:30:37.64 ID:deoSAjL+a.net] >>481 今回のセキュリティーソフトわ切るやり方こそ対症療法だろw
492 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 10:12:30.60 ID:NldGOlLod.net] >>458 これ知らなかったんだけど、実際に存在する? コード書いてもでてこないんだけど ちなみにGetLastWriteTime はあるようだ
493 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 10:37:35.73 ID:rPH4vL1P0.net] >>487 .NET7で追加された .NET6以前はP/InvokeでWin32API使えば同等のことは出来るけど時刻の扱いが面倒臭いね
494 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 10:44:53.88 ID:ihHVpLbGp.net] そもそもファイルのタイムスタンプを合わせる仕様が本当に必要なのか小一時間
495 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 10:54:15.13 ID:NldGOlLod.net] >>488 thx >>489 他人の仕様にケチ付けちゃだめ
496 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 11:24:35.10 ID:ihHVpLbGp.net] タイムスタンプなんて危ういものを何に使おうってんだ? 生成時刻が重要ならファイル名に組み合わせしまうとか 他の方法の方がよっぽど確実だぞ
497 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 12:16:13.48 ID:RpUziWGf0.net] DateTime.ToFileTimeみたいな関数あったはずだからWin32利用したら案外簡単
498 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 12:31:50.44 ID:NldGOlLod.net] コードも提供せずにこういうことやりたいと言ってるわけでもないし、 今回問題となっている部分についてだけで話すればいいんじゃないの 質問者が他のやり方ないですかみたいな質問ならまだしも 回答者が勝手に仕様かえて変な回答しないほうがいいと思うなぁ
499 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 12:45:05.52 ID:OsVl9AaP0.net] 俺は基本更新時刻の新しい順で並べるからファイルやフォルダのコピーごときでファイルスタンプは変わって欲しくないな
500 名前:デフォルトの名無しさん [2023/05/11(木) 12:56:38.62 ID:CPAv1ED5M.net] コピー元のタイムスタンプを維持したいユースケースなんていくらでもあると思うんだけどな cp -pのように最初からそういうオプションが用意されてないのが不思議なくらい
501 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 13:00:19.05 ID:8tWYoMH60.net] >>491 お前の考えなど知らん コピー先のファイル名はそのままである必要があるんだよ
502 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 13:03:05.25 ID:azf3P6SKM.net] あれ、File.Copy()でコピーすればファイルの更新時刻とかはコピー元ファイルのままだと思ってたんだけど、違うの? わざわ
503 名前:エLastWriteTimeを転記する処理なんか不要じゃないかな [] [ここ壊れてます]
504 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 13:20:41.79 ID:YOUU3VFS0.net] 結局なんで死んでんだっけ? スレッドセーフじゃないメソッド呼んでたから?
505 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 13:22:58.00 ID:Kl8HQqiW0.net] FileStreamを開放したところでDefenderに掴まれてるから
506 名前:デフォルトの名無しさん [2023/05/11(木) 13:26:07.70 ID:IsUfqIsW0.net] >>470 ノートン先生が毎回俺がコンパイルしたexe没収しやがるのな
507 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 13:28:13.33 ID:/kketneYM.net] gdriveの横槍でvsのビルド失敗しやがるからな
508 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 14:04:15.95 ID:/lX/zRJGp.net] >>496 だからファイル作成時刻が重要ならタイムスタンプに頼る様な仕様は事故のもとだから仕様から考え直さないと後で泣くのはおまえさんとこだって話だw
509 名前:デフォルトの名無しさん [2023/05/11(木) 14:06:17.73 ID:IsUfqIsW0.net] ファイルの作成時刻が大事で、ファイル名も変えたくないなら 実データの内に時刻もっておいて逐次参照するしかないか
510 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 14:15:18.91 ID:5HC1/c5B0.net] タイムスタンプをバージョン番号にするのが一時流行ったな
511 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 14:18:46.36 ID:NldGOlLod.net] >>497 コード提供部分にはない仕様でコピー中の進捗管理もしたいからブロックコピーみたいな事したいんじゃないのと思ってるけどね
512 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 16:32:36.54 ID:Kl8HQqiW0.net] ファイルコピーツールでタイムスタンプ類もそのままって普通のことでは?
513 名前:デフォルトの名無しさん mailto:sage [2023/05/11(木) 16:59:27.45 ID:OsVl9AaP0.net] そうだよ その当然のことがC#だとなぜか上手くいかないねってマヌケな話を続けてるのよ
514 名前:デフォルトの名無しさん (ワッチョイ b7e5-tcUg) mailto:sage [2023/05/11(木) 17:30:13.71 ID:Kl8HQqiW0.net] 違うよ、Defenderに割り込まれて失敗してただけなのに、C#が悪いとか実装だよりがうんたらとか明後日の話してるだけ あとなぜかタイムスタンプ同期を敵視するおかしな輩
515 名前:デフォルトの名無しさん (ササクッテロル Spc7-Z7Ea) mailto:sage [2023/05/11(木) 17:43:23.58 ID:rQf2HOBdp.net] タイムスタンプって言えば、マイナンバーの他人データ事件
516 名前:デフォルトの名無しさん (アウアウエー Saaa-tcUg) [2023/05/11(木) 20:37:45.66 ID:WmrOv4hCa.net] asp.net 7.0/razorでTest.razorファイルを作って中身を @page "/test/{text}" <h1>Hello, world!</h1> とすると、localhost/test/aaaaaaa は期待通りTest.razorにアクセスするんだけど localhost/test/ にアクセスしようとするとエラーページ(app.razorの<NotFound>)に飛んでしまいます エラーページに飛ばずにTest.razorに導くにはどうしたらいいのでし
517 名前:デフォルトの名無しさん (アウアウエー Saaa-tcUg) mailto:sage [2023/05/11(木) 20:50:19.55 ID:WmrOv4hCa.net] 自決。重複指定できるんだね @page "/test/{text}" @page "/test/"
518 名前:デフォルトの名無しさん (ワッチョイ 4679-jUDw) mailto:sage [2023/05/12(金) 05:08:25.71 ID:wvdezX0Z0.net] ループしつつ例外来たらリトライぐらいしかないんだな ファイルアクセスって
519 名前:デフォルトの名無しさん (ワッチョイ 1610-tcUg) mailto:sage [2023/05/12(金) 06:06:11.81 ID:knxa7qRm0.net] 絶対に他のプロセスがアクセスすることが無いファイルでもなきゃそうだろうね
520 名前:デフォルトの名無しさん mailto:sage [2023/05/12(金) 10:06:17.76 ID:6p7rgQrNp.net] 一度握ったら離さない様にすれば良いだけ まあ、握るまで待つ事はあるだろうけどさ
521 名前:デフォルトの名無しさん mailto:sage [2023/05/12(金) 10:09:45.59 ID:6p7rgQrNp.net] ファイルロックくらいしろって事でFA
522 名前:デフォルトの名無しさん (ワッチョイ 5eda-xrk/) mailto:sage [2023/05/12(金) 20:52:48.39 ID:QyvjIFa10.net] タイムリーな話題 Microsoft Defender がファイルコピー速度を大幅に低下させるというテスト結果 https://security.srad.jp/story/23/05/11/212256/
523 名前:デフォルトの名無しさん (ワッチョイ cfa7-55dJ) mailto:sage [2023/05/13(土) 11:11:48.89 ID:tW4K4KGI0.net] 当たり前の話じゃないの? アンチウイルスって実行ファイルの中身チェックするのが仕事なんだし
524 名前:デフォルトの名無しさん (ワッチョイ cfbb-ScEU) mailto:sage [2023/05/13(土) 12:02:01.86 ID:7xfulSMu0.net] >>517 コピーされるファイルも実行ファイルの中皆の?
525 名前:デフォルトの名無しさん (ワッチョイ 137c-Zn+e) mailto:sage [2023/05/13(土) 12:58:27.54 ID:WLwqntQA0.net] 別にチェックするのは実行ファイルだけじゃ無い 基本的には全部 拡張子変えて実際は実行ファイルって場合も有る 特殊な方法で画像や音声ファイルに別ファイルを入れる事も出来る 普通に開いても画像や音が流れるけどやけにファイルサイズ大きい
526 名前:デフォルトの名無しさん (ワッチョイ 03e5-Phjm) mailto:sage [2023/05/13(土) 14:46:09.37 ID:mZrGEceU0.net] 除外指定されてないもの全部検査対象だよな
527 名前:デフォルトの名無しさん (ワッチョイ ffde-ZkZz) mailto:sage [2023/05/13(土) 15:08:50.76 ID:xlpBDV6S0.net] んでウィルスでもないものも消していってくれるし
528 名前:427 (ワッチョイ bfbd-Np+b) mailto:sage [2023/05/14(日) 08:52:03.33 ID:kc3awa8x0.net] >>428 非同期I/Oについて以前別件で調べていたページをブラウザで開いたまま放置してて、 そこを読んだら、 ・FileStreamは~Async()メソッドを呼ぶだけだと、同期メソッドをTask.Runしているイメージと同じ ・非同期IOにするには、FileStreamのコンストラクターでuseAsyncをtrueにする とあった。
529 名前:デフォルトの名無しさん (ワッチョイ 8f79-PTT8) mailto:sage [2023/05/14(日) 11:04:56.63 ID:8prSF4JO0.net] そもそもIOって物理的に非同期にできんのかな? って疑問はある ファイル名(パス)を変更するとして それが既存と被らないことをチェックするためには HDD全部が排他対象になっちゃうと思うんだけど・・・? 世の中には頭のいい人がいるからな Windowsもうまいことなってるのかもしれん
530 名前:デフォルトの名無しさん (ワッチョイ 137c-Zn+e) mailto:sage [2023/05/14(日) 11:24:11.66 ID:C7+mn9jn0.net] アホすぎる 基本情報技術者試験からやり直せ
531 名前:デフォルトの名無しさん (アウグロ MMdf-PTT8) mailto:sage [2023/05/14(日) 11:25:33.88 ID:YHEEjM6QM.net] >>524 マジで?載ってる?
532 名前:デフォルトの名無しさん (ドコグロ MMe7-GJof) mailto:sage [2023/05/14(日) 11:30:50.36 ID:cZZGCVt9M.net] FileStreamの~Async()メソッドの話をしているのに ファイル名を変更する話をし始める人
533 名前:デフォルトの名無しさん (ワッチョイ 8f79-LM5x) mailto:sage [2023/05/14(日) 13:29:51.43 ID:8prSF4JO0.net] >>526 あ、そっか やっぱりそこは どうにもならねえんだよな
534 名前:デフォルトの名無しさん (ワッチョイ 8f79-LM5x) mailto:sage [2023/05/14(日) 13:35:41.81 ID:8prSF4JO0.net] まずIOいじるときは プロセスセーフである必要があって それをサポートするAPIはないと 次にスレッドセーフである必要も あってそこはAPIがあるのと プロセスセーフの仕組みに載せてしまってもよい みたいな?
535 名前:デフォルトの名無しさん (スップ Sd1f-ZkZz) mailto:sage [2023/05/14(日) 15:32:18.00 ID:cBUUr2ypd.net] 別に考えるのは悪いことじゃないけどここで書くような事か? チラシにでもかけよ
536 名前:デフォルトの名無しさん (ワッチョイ cfa7-55dJ) mailto:sage [2023/05/14(日) 16:46:00.64 ID:AbKJzFQD0.net] >>523 出来るも何もむしろ必須レベル 正常なディスクであればファイルIOは即終わるが壊れかけとかだとめちゃくちゃ時間かかる事もある 要するに完了時間は不定だから多数に公開しようとしたらファイルIOはWin32のオーバーラップを利用した非同期化は必須 C#であれば手軽に使えるasync版もあったはずだが
537 名前:デフォルトの名無しさん (ワッチョイ 8f79-cPXU) mailto:sage [2023/05/14(日) 18:25:49.02 ID:8prSF4JO0.net] >>530 なんかごちゃごちゃうっせーけど OSとAPIに任せて勝手にやってくれるわけではないよね?
538 名前:デフォルトの名無しさん (ワッチョイ 1310-TD+p) mailto:sage [2023/05/14(日) 19:42:00.49 ID:LqBBoBzl0.net] やってくれてなかったらOSもプロセスもディスクアクセスのたびに死んでるわ
539 名前:デフォルトの名無しさん (ワッチョイ 8f79-cPXU) mailto:sage [2023/05/14(日) 21:25:59.89 ID:8prSF4JO0.net] >>532 だから死んでるじゃん エラー出して ハンドリングはしてないよね?
540 名前:デフォルトの名無しさん (オイコラミネオ MMc7-ZkZz) mailto:sage [2023/05/14(日) 21:34:27.06 ID:pb1Dbmn7M.net] スレ伸びてるなと思ったら荒れてたのか スルーしたほうがいいのかな?答えたほうがいいのかな?
541 名前:デフォルトの名無しさん (ワッチョイ 1310-TD+p) mailto:sage [2023/05/14(日) 23:37:37.55 ID:LqBBoBzl0.net] ハンドリングしてるからエラー出せるんだろうに
542 名前:デフォルトの名無しさん (ワッチョイ a32d-QNcS) mailto:sage [2023/05/14(日) 23:52:11.86 ID:TlAvKTIL0.net] デバイスとファイルシステムの区別が付いてないし基本的な知識が欠けてる 相手にするだけ無駄かと スレチだし
543 名前:デフォルトの名無しさん (ワッチョイ ff2f-o00x) mailto:sage [2023/05/15(月) 01:10:46.89 ID:LL0MvYiW0.net] まあふらっとだしC#にかかわる範囲で答えてやれば良いとは思うが そもそも>>523 は非同期IOってどんなもんだと思ってるんだ
544 名前:デフォルトの名無しさん (ワッチョイ 8f79-PTT8) mailto:sage [2023/05/15(月) 03:01:17.91 ID:MbkFonvu0.net] >>535 プロセスセーフにはならないってことだよね
545 名前:デフォルトの名無しさん (ワッチョイ 8f79-PTT8) mailto:sage [2023/05/15(月) 03:14:56.69 ID:MbkFonvu0.net] streamreaderwriterで死ぬってことはOSの機能じゃなくて あくまでアプリ側がそう組んだからそう動くってことでおk?
546 名前:デフォルトの名無しさん (ワッチョイ cfa7-55dJ) mailto:sage [2023/05/15(月) 10:50:41.17 ID:pV2Ms8mh0.net] >>531 勝手にやってくれない? お前はDeviceIOControlでも利用して一々マニュアルでハードウェア制御してるのかよ 普通に全部勝手にやってくれるよ
547 名前:デフォルトの名無しさん (ワッチョイ ff80-wac6) mailto:sage [2023/05/15(月) 15:46:46.09 ID:rEJ0AvWA0.net] ReactiveExtensionsって現場では結構使われてるんですかね?
548 名前:デフォルトの名無しさん (ワッチョイ bfbd-Np+b) mailto:sage [2023/05/15(月) 23:44:43.69 ID:7dwhbD/A0.net] >>530 Win32APIで最近非同期のコードを書いているけど、 ReadFile()/WriteFile()が途中までで返ってくることも踏まえてループ処理にするとして、 1) ReadFile()/WriteFile()で同期(OVERLAPPED構造体なし) →同期 2) ReadFile()/WriteFile()で非同期(OVERLAPPED構造体あり)、WaitFor~、GetOverlappedResult() →スレッドを明示的に手放す? 3) 1)をCreateThreadpoolWork() →スレッドプールのスレッド内で同期処理 4) 2)をCreateThreadpoolWork() →スレッドプールのスレッドで動作するが、途中でスレッドを明示的に手放す? IOCPならその間に他のスレッドが動きそうだが、スレッドプールAPIでもそうなるか知らない。 5) CreateThreadpoolIo()、ReadFile()/WriteFile()で非同期(OVERLAPPED構造体あり)、 IoCompletionCallbackで続きのReadFile()/WriteFile()を行う →これが一番効率的だと思う。 最近5)で書いてる。めんどくさい。うまく動かなかった時に調査のために同期処理にしてみることができない。 C#のasync/awaitは神。 .NET Framework/.NETのライブラリがどこまでやっているのかまだソースをほとんど調べていない。
549 名前:デフォルトの名無しさん [2023/05/16(火) 15:21:40.99 ID:x5Idn1prM.net] >>542 ReadFileEx()/WriteFileEx()に対して何かアドバンテージあるの?
550 名前:542 mailto:sage [2023/05/16(火) 23:17:52.90 ID:ArIN9ivM0.net] >>543 ReadFileEx()/WriteFileEx()のlpCompletionRoutineを使ったことはないけど、 LPOVERLAPPED_COMPLETION_ROUTINEのページに、 システムが完了ルーチンを呼び出すたびに、アプリケーションのスタックの一部が使用されます。 完了ルーチンが追加の非同期 I/O とアラート可能な待機を行うと、スタックが大きくなる可能性があります。 とあるから、完了ルーチンでさらに非同期I/Oを繰り返すと、スタックがあふれる恐れがあるんじゃないかなあ?
551 名前:デフォルトの名無しさん [2023/05/17(水) 00:05:39.06 ID:UJN2K8xqM.net] >>544 なるほど .NETのFileStreamもReadFile()やWriteFile()を使ってるのはそれが理由かも
552 名前:デフォルトの名無しさん (ワッチョイ 835f-keH4) mailto:sage [2023/05/17(水) 02:11:11.09 ID:BW67Dsb50.net] ファイルIO飽きたぁ
553 名前:デフォルトの名無しさん (ワッチョイ cfa7-55dJ) mailto:sage [2023/05/17(水) 09:38:13.97 ID:J+vPZ/2W0.net] >>545 いや完了ルーチン内で更に完了ルーチン呼び出しするなんて実装メリット無さ過ぎて普通しないからそれが理由ではない 単純に最も効率的な非同期IOはスレッドプールを利用した完了ポートだからだよ C#のasync awaitも完了ポートベース、nodejsもWindows版では完了ポートベース
554 名前:デフォルトの名無しさん (ワッチョイ 8f79-cPXU) mailto:sage [2023/05/17(水) 09:41:37.77 ID:x4D/IoKq0.net] >>546 どうした? 実はこれまで組んだファイル周りの実装がまずいことに気が付いたのか? プロセスセーフまで保証しろって言われたら正直俺もやってねえ っていうかもっかいやってくれればええやんってポリシー だったけどこのスレ見たやつが指摘してきた(笑) 面倒くせえw
555 名前:デフォルトの名無しさん (ワッチョイ cfa7-55dJ) mailto:sage [2023/05/17(水) 09:47:10.85 ID:J+vPZ/2W0.net] プロセスセーフってなんだ? 一つのファイルを複数プロセスで扱う場合においても別に難しい事はないけどな 排他モード指定したら良いだけなんだから
556 名前:デフォルトの名無しさん (ササクッテロ Sp87-eWQc) mailto:sage [2023/05/17(水) 09:52:57.56 ID:BC9U1gYmp.net] >>549 一度に完了しないでチマチマ複数回アクセスする類いだろ
557 名前:デフォルトの名無しさん (ワッチョイ 8f79-cPXU) mailto:sage [2023/05/17(水) 09:56:54.00 ID:x4D/IoKq0.net] >>549 いや、他のやつにアクセスされてると死ぬねん その時いつまで待てばええのか仕様がないねん タイムアウト付けるとじゃあその時できんかった処理をいつやるのか仕様を考えろって言われて辛いねん さらにそれが終わる前に他の処理が進んでしまってもまずいときあんねん こんなレアケース相手にしとうなかったねん
558 名前:デフォルトの名無しさん (ワッチョイ cfa7-55dJ) mailto:sage [2023/05/17(水) 10:04:34.84 ID:J+vPZ/2W0.net] >>551 それファイルIOの問題ではないな 非同期プログラミング全般の問題
559 名前:デフォルトの名無しさん (ササクッテロ Sp87-eWQc) mailto:sage [2023/05/17(水) 10:04:36.01 ID:BC9U1gYmp.net] まあ、昨今のマイナンバー絡みの誤配信あるし つまらないレアケースを突いて来る奴増えたよな
560 名前:デフォルトの名無しさん (ワッチョイ 8f79-cPXU) mailto:sage [2023/05/17(水) 10:07:50.36 ID:x4D/IoKq0.net] いい手を考えた それってこの間作ったやつも 同じですよね? 解決しているのであれば 対策方法を教えてほしいです って比較的暇そうな プロジェクトも誘爆させてみる
561 名前:デフォルトの名無しさん (ワッチョイ 13e5-zI38) mailto:sage [2023/05/17(水) 10:20:18.08 ID:r4L2F7830.net] 元々はファイルクローズ直後に約10%程度日付の書き換えに失敗するという質問で 原因はDefenderと結論付けて解決している 対策はリトライ、検索除外、ファイルを閉じる前に日付を書き換えるなどが上がっている なお非同期書き込みは関係ない
562 名前:デフォルトの名無しさん (ワッチョイ ff2f-3DBk) mailto:sage [2023/05/17(水) 10:26:42.10 ID:GG5VHMy50.net] >>551 レアケースでもなんでもなくて、当然設計段階で考慮しとくべき話 コーディング以前の問題 >>553 レアケースでも、それが発生する可能性がある以上、発生したらどうするか考えとかないとダメ エラーで落とすとかどうもしないとかも含めてな つかマイナンバーのやつは、レアケースというほどレアな条件が重なってるとは思えん たんなる設計不良とテスト不足だろ
563 名前:デフォルトの名無しさん (ササクッテロ Sp87-eWQc) mailto:sage [2023/05/17(水) 10:27:49.23 ID:BC9U1gYmp.net] >>555 Defenderが変化のあったファイルを即握るから一度手放したら持って行かれるってのが原因だよ? この場合Defenderは一例に過ぎない、他に同じ様なプロセスが走ってたら同じ事
564 名前:デフォルトの名無しさん (ラクッペペ MM7f-zI38) mailto:sage [2023/05/17(水) 10:33:05.14 ID:ayW9U2wIM.net] >>557 そう書いてるけど何か? 非同期書き込み関係ある?
565 名前:デフォルトの名無しさん (スップ Sd1f-ZkZz) mailto:sage [2023/05/17(水) 10:38:32.93 ID:JdW1FdHOd.net] >つまらないレアケースを突いて来る奴増えたよな つまるつまらない関係なく安全なシステム構築が原則じゃねーの こんなこと言う奴が実装してると思うと怖いな
566 名前:デフォルトの名無しさん (ササクッテロ Sp87-eWQc) mailto:sage [2023/05/17(水) 10:39:10.69 ID:vxhNqJEJp.net] >>558 だから原因はDefenderじゃ無いだろw 対策でDefender切るなw
567 名前:デフォルトの名無しさん (オイコラミネオ MMc7-ZkZz) mailto:sage [2023/05/17(水) 12:01:27.36 ID:F24a8wLtM.net] 主張がおかしい 少なくとも例外=死ではないわな いくら他言語知っててwin32api知ってても例外回りというかそこら辺の理解が出来ずに対応が出来ないから初心者なんだろう ご愁傷様
568 名前:デフォルトの名無しさん (アウグロ MMdf-PTT8) mailto:sage [2023/05/17(水) 12:26:38.86 ID:gUH2EQh+M.net] でもこれって排他で掴んじゃうテキストエディタでファイル開いたまま放置されたとかなったら回避不能だよね 新しいファイルを作っちゃうって手も残ってるけど 正しいソフトウェアのあるべき姿って言われても困るわけだが? まあ、新しいファイルを作っちゃっていいなら作っちゃうが・・・? 読んでくるとき常に最新読むってすれば簡単だし
569 名前:デフォルトの名無しさん (オイコラミネオ MMc7-ZkZz) mailto:sage [2023/05/17(水) 12:39:44.91 ID:F24a8wLtM.net] 普通はメッセージを出すだろ?アプリ作ったことがないのか?
570 名前:デフォルトの名無しさん (アウグロ MMdf-PTT8) mailto:sage [2023/05/17(水) 12:48:19.60 ID:gUH2EQh+M.net] >>563 まあ、ログにも通知にも残すけど 定期処理とかだと 夜中中出しっぱだったので一切他の処理やらんかったぜもない話で
571 名前:デフォルトの名無しさん (オイコラミネオ MMc7-ZkZz) mailto:sage [2023/05/17(水) 12:55:33.17 ID:F24a8wLtM.net] 責務以外のことまで考慮する必要はない 書き込みしようとしたらHDDが容量不足だったは普通はそこまで考慮したソフトは書かない 一般的なリトライの範囲かせいぜいメッセージ出して人間が対応する 録画ソフトなどで事前に想定された範囲内で必要となるなら用意する 一般的なライブラリの範疇の話じゃない難癖レベル
572 名前:デフォルトの名無しさん (ワッチョイ 03e5-Phjm) mailto:sage [2023/05/17(水) 12:58:10.45 ID:HpY9MMf50.net] 排他で掴んじゃうエディタで開いたままにする関係者が悪いのであってやるなというだけの話 人が排他で開いたままにしちゃうかも、まで考慮することじゃない
573 名前:デフォルトの名無しさん (ワッチョイ ff79-Phjm) mailto:sage [2023/05/17(水) 13:09:21.57 ID:0e0u0fXr0.net] オートリトライでFDDを延々とカッコンカッコン鳴らしてやるぜ
574 名前:デフォルトの名無しさん mailto:sage [2023/05/17(水) 13:22:55.46 ID:c+t3TSTMp.net] >>567 FDDだとファイル一杯になった処理は必ず必要だよな あんな容量の小さなメディアだしな
575 名前:デフォルトの名無しさん mailto:sage [2023/05/17(水) 14:21:29.85 ID:JdW1FdHOd.net] >>562 当初の質問の流れだと①ファイル出力②タイムスタンプ変更を連続してるわけだから言ってる話(①のファイルをエディタなどの人為的操作でつかまれる)はおかしくない? 少なくともやりたかったことがどこかにあるファイルを別の場所にコピーする、ファイルのタイムスタンプは同じにするなら ①いったん別名でファイル出力 ②タイムスタンプ変更 ※リトライ含む ③正しいファイル名に変更 ※リトライ含む ぐらいがいいんじゃないかと思うけどね③まで正常終了したらOK
576 名前:デフォルトの名無しさん mailto:sage [2023/05/17(水) 14:23:16.58 ID:/6qavqYtp.net] >>569 連続してる様に見えるけど、CPUから見たら隙間だらけだからなぁw
577 名前:デフォルトの名無しさん [2023/05/17(水) 21:24:44.21 ID:WYa1maRz0.net] FDDってプレーンテキストくらいしか保存できないよね?
578 名前:デフォルトの名無しさん mailto:sage [2023/05/17(水) 21:52:19.55 ID:6s1sKbMg0.net] 2HDのFDにDOSと一太郎とATOKは入ったぞ ちなみに媒体をFD、ドライブ装置をFDDというのだぞ
579 名前:デフォルトの名無しさん mailto:sage [2023/05/17(水) 22:00:37.91 ID:nVMR4RZGd.net] 知識としてしか知らないと>>571 みたいな認識になってしまうのか
580 名前:デフォルトの名無しさん mailto:sage [2023/05/17(水) 22:55:44.00 ID:lFYANmkBM.net] Aドライブでアプリケーションソフト起動してBドライブはFEPの辞書ファイル入れて使うのが一般的だった気がする
581 名前:デフォルトの名無しさん [2023/05/18(木) 00:09:06.95 ID:PrSBwdky0.net] ハードディスクがCドライブから始まってるのはその名残りだよな
582 名前:デフォルトの名無しさん mailto:sage [2023/05/18(木) 00:33:26.61 ID:M0TxVFb20.net] 1KB程度のデータしかない住民票を印刷するのにバカでかいPDFなんぞをワザワザこしらえてご丁寧に暗号化復号化レンダリングイメージ化などいらんことしてるから日本はダメなんだよ
583 名前:デフォルトの名無しさん mailto:sage [2023/05/18(木) 00:49:20.46 ID:+SWCVuhH0.net] >>576 そりゃコンビニのコピー機で発行できるようにそうしてるんだろ もしかして、コピー機の方を改修したほうが良いと思ってるのかい? どんだけ費用かけるつもりだよ
584 名前:デフォルトの名無しさん [2023/05/18(木) 10:06:50.15 ID:Osufe4Tap.net] 画像PDFは改変対策だろ? まあ、テキストPDFでもプロテクト掛けられるけどな
585 名前:デフォルトの名無しさん mailto:sage [2023/05/18(木) 10:10:35.46 ID:4KlPbS1ta.net] >>571 今だとその程度の使いみちしかないかもな FDDしか無かった頃はあらゆるデータが貧弱だったが
586 名前:デフォルトの名無しさん mailto:sage [2023/05/18(木) 10:11:37.45 ID:ufQPk5+j0.net] 名前などの文字部分は当然テキストよ だけど印刷内容は文字だけじゃないだろ 役所で公的文書取ったことないんか?
587 名前:デフォルトの名無しさん mailto:sage [2023/05/18(木) 10:20:46.30 ID:4KlPbS1ta.net] >>580 枠線とか印刷とか要らんから電子署名したデータだけ寄越せと言ってるんだと思うぞ そんなことしたら年寄りは生きていけなくなるがな
588 名前:デフォルトの名無しさん [2023/05/18(木) 10:29:30.52 ID:Osufe4Tap.net] 全部テキストにして 電子署名はQRコードで出せば良いのでは?
589 名前:デフォルトの名無しさん mailto:sage [2023/05/18(木) 11:39:25.32 ID:ufQPk5+j0.net] >>581 で、それでどうやって今の社会システムに対して公文書行使するんだ?
590 名前:デフォルトの名無しさん (スッップ Sd1f-ie1o) mailto:sage [2023/05/18(木) 13:00:51.89 ID:gc1pBp/rd.net] QRコードはandroidTVとかのアカウント認証で使われてるね 読み取るとurlにデコードされてwebブラウザで認証するやつ スマホやPCがある事前提
591 名前:デフォルトの名無しさん (アウアウウー Sa67-9mXs) mailto:sage [2023/05/18(木) 13:18:31.14 ID:Vg51lua1a.net] >>583 できないからダメだって話だろw 効率的に電子決済するにはしがらみが多すぎるんだよ
592 名前:デフォルトの名無しさん mailto:sage [2023/05/18(木) 18:54:25.63 ID:BvTK4XNb0.net] で、お前らいつまでスレチ続けるんだ?w
593 名前:デフォルトの名無しさん mailto:sage [2023/05/18(木) 19:35:19.78 ID:wNPIsLPx0.net] >>586 なんか聞きたいことあんの?
594 名前:デフォルトの名無しさん [2023/05/20(土) 18:00:33.33 ID:BNhw9lNy0.net] >>576 記入可能なPDFを端末で持っておいて テキストだけサーバーから送れば爆速で処理終わるよね
595 名前:デフォルトの名無しさん [2023/05/20(土) 18:23:59.40 ID:9iccQhCKM.net] PDFを悪用する人がいても書類を受け取った人が偽造かどうかオンラインとかで確認できるようならそれでもよかったのかもね コンビニ出力と役所出力の公文書で受け取った側の運用が変わるデメリットを受け入れられたらの話だけど
596 名前:デフォルトの名無しさん mailto:sage [2023/05/20(土) 19:08:07.55 ID:NojZsJmh0.net] >>588 リッチクライアントならそうだね。 シンクライアントなら全てサーバーで処理することになる。
597 名前:デフォルトの名無しさん mailto:sage [2023/05/20(土) 20:26:37.10 ID:H7GfaBHz0.net] >リッチクライアントならそうだね。 もしかして:ファットクライアント
598 名前:デフォルトの名無しさん mailto:sage [2023/05/20(土) 21:50:52.69 ID:o5dUfSpn0.net] >>588 PDFってそんなでかいっけ? テキストと分離した程度で爆速なんてでないだろ
599 名前:デフォルトの名無しさん (ワッチョイ def2-cUXk) mailto:sage [2023/05/21(日) 17:54:47.82 ID:aSGZarsp0.net] >>592 無圧縮の画像があると重いかもね
600 名前:デフォルトの名無しさん (ワッチョイ 677c-bsHd) mailto:sage [2023/05/24(水) 06:48:02.27 ID:dEtAkKea0.net] 夜中からBUILD眠い
601 名前:デフォルトの名無しさん (ワッチョイ 6f5f-GCa2) [2023/05/25(木) 23:41:52.29 ID:HnExcI2y0.net] よく聞かれることかもしれませんが、教えてください。 私はいま、VisualC#の本を見ながら勉強しています。自分で作ったソフトのウィンドウが表示されて ボタンをクリックしたら「こんにちは」とメッセージが出てるのを見て喜んでるレベルです。 夢は仕事で使うシステム(Windowsソフト)を作ってパートさんたちの仕事を楽にすることです。 今やっている本を買う前に買ってしまった「C#入門」的な本がいくつかあるんですが、それを 見ると、私が勉強しいるのとはまったく別の技術のように見えます。 VisualがつかないC#って、本当に文字で記述するための文法や構文の解説ばかりのようで、 ウィンドウやコマンドボタンの作り方ひとつ解説してないみたいです。 お聞きしたいのですが、VisualのつかないC#を習得した人って、どんなものを作るようになるのでしょうか? また、ただのC#を学んだ人って、私のようなVisualC#だけを学んでいる人のことが幼稚な低レベルに 見えてるんじゃないかという気がするのですが、それでも小さい企業にあるWindowsパソコンで使う業務システム を作るにはVisualの方がずっと楽で有利だと思うんです。 いかがでしょうか?
602 名前:デフォルトの名無しさん mailto:sage [2023/05/25(木) 23:48:35.78 ID:8mbdG19r0.net] VisualのつかないC#とはいったい... c++とC#なら別物だぞ
603 名前:デフォルトの名無しさん mailto:sage [2023/05/25(木) 23:51:32.00 ID:MENdj7XW0.net] よく分からん感情がにじみ出ていて真の質問が分かりづらいのでもう一回まとめ直してください
604 名前:デフォルトの名無しさん [2023/05/26(金) 00:00:07.73 ID:MvHB7l4o0.net] VisualC#の本を読んで勉強してるけど、Windowsアプリの作り方を勉強してるつもり。 C#の入門書も見たことあるけど、プログラム文の書き方のようなことで終始していて、 ウィンドウの作り方やボタンの設置のしかたすら解説されていないみたい。ぜんぜん違う。 Visualが付かない方の本でC#を勉強した人って、何が作れるようになるの? Visualが付く方のC#だとwindowsアプリが作れて使い道が多そうなんだけど。 ↑ これが質問の主旨です。
605 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:09:36.83 ID:V/JNO+4j0.net] VC++というかMSVCっていうとMicrosoftによる実装って意味合いもあるが Visual C#というと殆ど開発環境を指してしか言わないと思うんだけど 別にフォームデザイナーがなくとも自動でコード生成してるだけだから コードだけ書いてもGUIアプリは作れるし、他のIDEでも良い かたや開発環境を前提としたアプリの作り方 かたや言語仕様の解説みたいな感じじゃないのか
606 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:10:18.48 ID:muRHf0j+0.net] まずVisual C#というのがVisual Studioのものすごく古いバージョンなんだわ
607 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:11:06.11 ID:W5uHLn8jM.net] 意味が分からない人が多くて困るな C#は言語そのものでVisualと言ってるのはGUI付きと言うことを言ってるんだろ >>595 別のようだけどそれは基本的には同じものです 入門の仕方は様々ある ざっくりとたとえると英語で言えば文法の本と日常会話の本に当たります 文法の方にはhelloは書いてなくて日常会話の方には未来完了とか書いてないでしょ? 表示技術はあなたの言うvisualで学べるけど文法の方やライブラリなどの使い方は学べない 文法を学ぶのにいちいちウィンドウを出していたら手間がかかる アプリの作り方をある程度学んだら言語自体+ライブラリの使い方だけ学んでも問題はないのです
608 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:12:52.83 ID:muRHf0j+0.net] 意味が分かる人が言ってることに草生える
609 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:18:27.28 ID:W5uHLn8jM.net] >>598 windwos上で使ってる一般の人は両方とも勉強します 基本的にはwindows上でしかGUIは提供されていないけどライブラリやwebサービスはGUIがなくても書けるし需要はある GUIで出来ることは表層だけで中の処理は言語仕様やライブラリを知らないといけない 本格的にGUIを勉強しようと思っても今はそれ向けの本がほぼないので自習になる
610 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:19:15.41 ID:A9A3Khm00.net] 書籍だと割と最近出たのでもタイトルにVisual C#って付いてるのがいくつかあるね
611 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:19:40.32 ID:W5uHLn8jM.net] >>602 絶望的に頭がわるいでしゅーと言う主張は情けなくてみっともねえwwwwwwwwwwwww
612 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:22:15.78 ID:W5uHLn8jM.net] 基本的に何かで一通りアプリの作り方を学んだら C#の言語仕様についてしっかりその文字だけの本を読んで勉強することになる
613 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:22:55.79 ID:VY0JKlLq0.net] アプリっつっても、デスクトップアプリ、コンソールアプリ、Webアプリなどあるからな 他にも、サービスとか、WebAPIとか、ライブラリとか 何を作るかで、使うライブラリやフレームワークが変わってくるし
614 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:23:25.62 ID:muRHf0j+0.net] >>605 こんな感じの頭いかれてるやつだってことを素人にもわかりやすく伝える親切さまであったか
615 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:24:06.06 ID:W5uHLn8jM.net] >>608 >「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
616 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:27:48.77 ID:muRHf0j+0.net] そういう問題じゃねえよw 頭いかれてるやつが優しく教えるスレってどんな地獄だw
617 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:28:46.96 ID:W5uHLn8jM.net] ID:muRHf0j+0が一番頭いかれてる 揚げ足取りか初心者相手にくだらないレスして悦に入ってるクソ人間
618 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:32:07.63 ID:A9A3Khm00.net] >>598 GUI(ウィンドウやボタン等がある)アプリを作るには、C#の文法と、GUI(ウィンドウ等)の作り方の両方を覚える必要がある どっちを先に覚えるかの違いでしかないよ (GUI無しのアプリは使い道が限られるけど、文法を学習するのに向いてる)
619 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:35:39.02 ID:W5uHLn8jM.net] 今出てる本だけではGUIについてしっかりと学べる本はほぼないと思う 大体がWindowsフォームについてでWPFやUWPについて学べる本は少ない
620 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:35:42.24 ID:muRHf0j+0.net] ");
//]]>-->621 名前:/tech/1679783460/605" rel="noopener noreferrer" target="_blank" class="reply_link">>>605 これを自分で見直して頭いかれてると思えないメンタルよw [] [ここ壊れてます]
622 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:36:14.97 ID:MvHB7l4o0.net] >>601 >>603 ご回答ありがとうございました! 外国語の学習の比喩でなんとなく理解できた気がします。 理屈から入る人ととにかく外人と話したがる人がいるけど、けっきょくマスターするには どっちの学習も必要になるという感じなんですね。 私の質問に回答してくださったせいで、あなたを小馬鹿する人が現われてしまったようで 本当に申し訳ないです。 ありがとうごさいました。
623 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:36:43.99 ID:W5uHLn8jM.net] >>614 一個でもまともな回答レスが書けるか? 自分のレス見返してみw
624 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:38:53.91 ID:MvHB7l4o0.net] >>612 GUIなしのアプリって、素人にもイメージしやすいものですとどんなのがありますか? GUIアプリの中で一部の機能を担う部品(ライブラリっていうの?)みたいなイメージでしょうか?
625 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:41:07.66 ID:W5uHLn8jM.net] C#のコンパイラ
626 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 00:41:42.15 ID:muRHf0j+0.net] >>616 お前のまともなレスどれ?w 例の小馬鹿にされたやつ?w
627 名前:デフォルトの名無しさん [2023/05/26(金) 01:23:01.30 ID:c1jHvuSF0.net] ウィンドウだしマウス使えるじゃんって突っ込みなしならコマンドプロンプトとか?
628 名前:デフォルトの名無しさん (ワッチョイ 6b2d-cUXk) mailto:sage [2023/05/26(金) 01:29:21.24 ID:A9A3Khm00.net] >>617 GUI無しのアプリは素人が使うことはほぼ無いから、分かりやすい例を挙げるのは難しいな…。 小さなツール類が多いけど、そう言われてもピンとこないよね。 > GUIアプリの中で一部の機能を担う部品(ライブラリっていうの?)みたいなイメージ GUI無しのアプリは単体でも使えるけど、GUIアプリから呼び出して使うこともあるよ。 ライブラリはそれだけでは動作しないのでアプリとはちょっと違う。
629 名前:デフォルトの名無しさん (ワッチョイ 6b2d-cUXk) mailto:sage [2023/05/26(金) 01:31:58.89 ID:A9A3Khm00.net] >>620 果たして、コマンドプロンプトは通じるのだろうか
630 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 05:17:04.99 ID:llcbKXvOa.net] 例えば、ウェブ開発のバックエンドは、Ruby on Rails。 OS(Linux, サーバー)とのやり取り。 ファイル操作、テキスト処理、データベース処理などで表示部分なし 一方、フロントは表示部分で、HTML, CSS, JavaScript Railsの給料が高いのは、1人でバック/フロントの両方を作るから。 これをフルスタックエンジニアと言う これを複数人で分けて作る場合は、 意思疎通・打ち合わせコストが掛かるので面倒
631 名前:デフォルトの名無しさん (ワッチョイ 03e5-FIIW) mailto:sage [2023/05/26(金) 09:07:00.86 ID:We9CfcI80.net] >>620 >>622 PowerShellでもおk?
632 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 12:03:03.90 ID:ESB2ogqid.net] powershellはC#コードも埋め込みできて、ある意味最高の環境と言えるけど どちらにも習熟してる必要がある C#学習には遠回り
633 名前:デフォルトの名無しさん (ワッチョイ 635f-T+0c) mailto:sage [2023/05/26(金) 13:27:28.71 ID:qCbIeycU0.net] 起動がおっそいんだよね。Pwershellは
634 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 14:43:40.75 ID:VY0JKlLq0.net] ワイのマシンだとサックサクやが
635 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 16:09:35.41 ID:H1TABfb/0.net] powershellはダブルクリックで動かないから使いにくい
636 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 19:54:48.14 ID:muRHf0j+0.net] >>628 動くようにできるぞ ダブルクリックで動くようにしたらお前らがまたトロイにひっかかって大騒ぎするからデフォではできなくしてるだけだ
637 名前:デフォルトの名無しさん [2023/05/26(金) 20:34:46.49 ID:u2vLXVTG0.net] 今コピーツールを作ってるんだが、Powershellと連動させたら需要あるかね? みんなPowershellで何をやってるんだ?
638 名前:デフォルトの名無しさん [2023/05/26(金) 20:48:28.57 ID:u2vLXVTG0.net] javaには戻れないからC#の案件が増えてくれるのを期待するのみ。 エラーがどこに出てるかさっぱりわからんかったJavaは。 今でも動かないコードあるし、何が何だかさっぱり分からない。 その点C#はMicrosoft様が一括でやってくれるので俺でもできた。 javaやるくらいならKotlinやるよ。 面倒くさすぎ
639 名前:デフォルトの名無しさん (スッップ Sdea-6Vlr) [2023/05/26(金) 21:17:54.23 ID:TqdGfdUid.net] 馬鹿には無理なだけだぞ
640 名前:デフォルトの名無しさん (ワッチョイ 7bac-MKim) mailto:sage [2023/05/26(金) 21:33:51.93 ID:te4x+q3p0.net] まあJavaよりKotlinC#って気持ちは同意
641 名前:デフォルトの名無しさん (ワッチョイ 0ade-FIIW) mailto:sage [2023/05/26(金) 22:20:09.88 ID:H1TABfb/0.net] >>629 人に渡すときの事考えるとやっぱりちょっと ダブルクリックしたら警告する程度でよかたのに
642 名前:デフォルトの名無しさん [2023/05/26(金) 23:24:33.59 ID:G1kfSu5s0.net] Kotlinは好き
643 名前:デフォルトの名無しさん mailto:sage [2023/05/26(金) 23:56:40.58 ID:wgfazHWx0.net] >>634 restrictedを指定したバッチファイルと一緒に配布すればいいよ。
644 名前:デフォルトの名無しさん (ワッチョイ 9f2f-AKtI) mailto:sage [2023/05/27(土) 03:35:48.04 ID:OwhwG7LR0.net] Javaの検査例外とはいったい何だったのか もうちょっとあれが正常進化しなかったのかなぁ
645 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 08:52:14.00 ID:6hc4zw7M0.net] >>634 人に渡すならC#でいんじゃね
646 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 08:55:45.91 ID:6hc4zw7M0.net] >>637 リスコフの置換原則を強制するためのものだけど土方にはそんな強制不要だし検査例外だけじゃ強制できないから中途半端で使いにくくなるだけなんだよね
647 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 13:23:39.47 ID:huktXfN70.net] >>636 ちょっとなんだかなあって感じするけど、それがベストか >>638 テキストエディタとかで簡単に修正できたほうがいいかなって
648 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 16:16:22.11 ID:A4bXwFD8M.net] >>617 自動化とかのコンテキストで、GUI無しの業務App増えてきたよ
649 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 17:17:59.98 ID:luIlnn62r.net] コンテキストの使い方間違ってないか?
650 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 19:10:08.90 ID:A4bXwFD8M.net] >>642 コンテキスト=文脈ってことで指摘を受けること無いと思うんだけど、なにか癇に障った?
651 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 19:14:06.41 ID:4YJ0U8GR0.net] >>642 問題なく伝わる使い方だよ(「文脈」を指す表現)
652 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 19:39:01.46 ID:1jtsLrYta.net] https://kotobank.jp/word/%E6%96%87%E8%84%88-23024 文脈 > ある単語や句や文に対して,その前後の単語や句や文が及ぼす意味的規定力。
653 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 19:43:24.60 ID:1jtsLrYta.net] ウェブ開発のコンテキストでAPIはウェブAPIを指す Windowsネイティブアプリ開発のコンテキストでAPIはWin32APIを指す ↑こういう使い方は「コンテキスト」の使い方として正しい >>641 のコンテキストは俺も見たことない使い方だから説明要るんじゃね
654 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 19:44:03.03 ID:luIlnn62r.net] >>643-644 コンテキスト言いたいだけやろ 要らんやん
655 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 19:51:45.58 ID:t60D5gLTM.net] 状況や流れで変わる何かが合って その時の状況や流れが コンテキスト にあたる 全く同じことをしていても解釈が違うのはコンテキスト依存だから
656 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 19:57:36.16 ID:gMKf+OGS0.net] どんどんアホみたいな方向に話が展開していく This is the bikeshedding
657 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 19:58:22.03 ID:t60D5gLTM.net] 正直なところ今回の用法ではあまりマッチしてるようには感じない とりあえずそれが何かとの勘違いだとして何と勘違いしたのかを考えてみよう
658 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 20:05:30.51 ID:luIlnn62r.net] なんだよ自動化のコンテキストって 夜間バッチかな、メッセージングかな、FAかな どうせコンテキスト使うならコンテキスト境界を明確にしろっつうの
659 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 20:15:18.43 ID:t60D5gLTM.net] セグメントあたりかな? カテゴリー、ジャンルやフィールドとかそういうのの狭い分野とかそういう事を言いたいんじゃないかと
660 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 20:29:32.13 ID:1lF7S9LF0.net] >>651 イマドキ自動化って言われたらRPAやろ まあ無能には分からんか
661 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 20:40:46.31 ID:mBQrOHHnr.net] コンテキストの使い方としては問題ないだろうけど、その言葉を選ぶことが場にそぐわないというか 匿名掲示板の会話の中で使うと浮く言葉だという感覚は多少あるかな
662 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 20:50:51.87 ID:1lF7S9LF0.net] なんでもいいけどプログラムの話しろよ無能ども
663 名前:デフォルトの名無しさん [2023/05/27(土) 20:57:34.82 ID:Iuy4wHgO0.net] くっだらなね。
664 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 20:59:33.78 ID:luIlnn62r.net] >>653 元レスからの文脈を辿ればRPAは出てこねんだわ
665 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 21:04:07.97 ID:t60D5gLTM.net] void Say(string text){ Console.WriteLine(text); ] と void Display(string text){ Console.WriteLine(text); ] みたいのがあって中身が同じだけど別になってるのはコンテキストが違うから コンテキスト無視してvoid Print()なんかにまとめちゃってからやっぱセリフは水色表示しましょうとなると修正が大変 と無理やりプログラムに絡める
666 名前:デフォルトの名無しさん [2023/05/27(土) 21:22:29.54 ID:FRBwBfHVd.net] >>653 馬鹿ってバッチ処理とか知らんのかね
667 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 21:24:53.37 ID:1lF7S9LF0.net] >>659 今時って言ってるやん 馬鹿って理解できないのかねw
668 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 21:25:19.63 ID:1lF7S9LF0.net] >>657 それってお前が馬鹿なだけやろ?
669 名前:デフォルトの名無しさん [2023/05/27(土) 21:27:26.31 ID:FRBwBfHVd.net] >>660 こういう馬鹿が夜間で終わらないバッチ処理を作って訴訟になる
670 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 21:32:00.54 ID:1lF7S9LF0.net] >>662 アホすぎw
671 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 21:35:35.76 ID:t60D5gLTM.net] 処理内容が同一でもコンテキストが同一とは限らない 処理内容が同一でもコンテキストが異なれば処理内容は同一であり続けるとは限らない 処理内容が同一でもコンテキストとして違いがあるのであればメソッドは別々にするのが望ましい
672 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 21:40:14.44 ID:/3dI5F000.net] >>661 じゃあRPAと絡めたGUIなしアプリの具体例を出してみろよ
673 名前:デフォルトの名無しさん (ワッチョイ 6b5f-tyRn) mailto:sage [2023/05/27(土) 22:45:19.23 ID:4YJ0U8GR0.net] >>651 それらが元々GUIを備えていると本気で思っているのか?w
674 名前:デフォルトの名無しさん (ワッチョイ 9f01-d/9P) mailto:sage [2023/05/27(土) 22:57:22.60 ID:A+Fg27pW0.net] 「文脈」の使い方が間違ってるよね
675 名前:デフォルトの名無しさん (ワッチョイ ab07-8jEt) mailto:sage [2023/05/27(土) 23:16:21.54 ID:6hc4zw7M0.net] 「文脈」は死語なんじゃね 前後の文読まないやつが大増殖してもう慣れたわ
676 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 23:49:42.44 ID:jeBcG8q10.net] 「死後」の意味も判ってない模様
677 名前:デフォルトの名無しさん [2023/05/28(日) 00:12:05.41 ID:oxdpIcYI0.net] マの板でアメリカがデフォルトの危機言われて 頭ん中??????????????ってなる人たち?
678 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 01:01:41.22 ID:rmgfnmD+a.net] >>669 突然関係ない話をしてどうした?
679 名前:デフォルトの名無しさん (ワッチョイ 0f10-S+HU) mailto:sage [2023/05/28(日) 06:52:03.18 ID:7NA4xXcX0.net] なんか急に賑やかになってると思ったらお前らww
680 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 11:02:05.14 ID:LhRRD0FE0.net] ちょっと聞きたいんだがさらに一歩難いアルゴリズムについてね 本屋に基礎的なアルゴリズムを開設してる本はいっぱいあるし理解できるけど 海外の学者が書いた超分厚い専門書的なもんはマジでわからん 最適化とか巡回セールスマンとか群論とかトポロジーとかそのレベルも理解必要なんですかね? C#できます!基本的なアルゴリズム理解できます!だけはちょい恥ずい 皆さんC#の言語仕様詳しいけど俺はさらに上を行ってるって自信を持てるには言語使用だけで 十分なんですかね?やっぱアルゴリズムも欲しがるべき?
681 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 11:06:53.24 ID:7NA4xXcX0.net] そのへんの業務アプリ開発のコーダーくらいなら要らないんじゃね
682 名前:デフォルトの名無しさん [2023/05/28(日) 11:15:47.39 ID:eP2DgR+S0.net] 要らんよね。 どこで使うんだろ
683 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 11:19:53.53 ID:pYaNr1fI0.net] ゲーム開発とか
684 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 11:25:22.80 ID:1uqhjo5xa.net] >>673 それは本当に専門書なのか? 割と基礎の部類に入るからQiitaでもいくつも記事あると思うぞ 土方には必要のない知識だけど使えるようになっておけば収入が高い職場に行けるかもしれんからやっておいて損はない
685 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 11:55:29.61 ID:MoCGpZK6M.net] 実際にコードが書けなくても必要な時にそのパターンに当てはまると知っているだけ良い たまに概念などを興味本位で知る程度で十分 キーワードを知ってるだけで強い 自分が大学で最初に習ったアルゴリズムはソート 複数のソートの手法を学ぶ それで計算量などの基礎的概念を刻み込む それが出来るなら最適化についての段階は踏める じゃあ数式を見てコードに落とせるかと言えば無理だと思う そこから本気出すかライブラリ探すかになる
686 名前:デフォルトの名無しさん [2023/05/28(日) 12:04:46.44 ID:9AZMVk0MM.net] 一般的なソートや検索のアルゴリズムは本屋にある基礎的なアルゴリズム解説本でカバーされてるやろ 今広く一般的に使われてるソート関数で使われてる細かい最適化の中身まではカバーされてないけど
687 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 12:07:38.06 ID:1uqhjo5xa.net] ていうか自信の持ち方がいびつな気がするな 作ったアプリで自信持てば? C#ならUnityでストア販売できるだろ 売上見てニヤつけよ
688 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 12:19:40.75 ID:MoCGpZK6M.net] 知りたいときに知りたいことを学べばいい ライブラリで済むなら勉強することもないかもしれない 大学でオペレーションズリサーチの講義を取った そこでは問題の概念について軽く学んで後はずっと確率などの微積分を行う コードなどは一切書かないし手順すら学ばない 試験も同じで計算や数式を証明したりする 一般的なコーディングにはほぼ意味がないけど何かの問題解決するためには必要な人には必要 大体の人には無縁 難しい本だけど大学の教科書の内容ですら半年かけて講師に教わって学ぶ内容なので本を開いてぱっと理解できなくても何も問題ない そういうものだと
689 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 12:24:36.31 ID:MoCGpZK6M.net] 1950~1970ごろにそういったサイエンスが花開いて多数の天才たちが研究し確立した手法を 今後追いで勉強してる 急ぐことはない
690 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 12:29:49.04 ID:pYaNr1fI0.net] 業務アプリではまず使わん ソートも探索もコレクションクラスのメソッドを使うだけ 黎明期ならまだしも今はPCの性能が上がって最適化の性能差もほとんど問題にならない リアルタイムゲームとか機械学習系では使うだろうけど
691 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 12:46:59.48 ID:1uqhjo5xa.net] >>683 トポロジカルソートはタスクの優先順位を決めるのに使うだろ ライブラリにあるか?
692 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 12:49:42.09 ID:uUhZbJL9a.net] トロピカルフルーツ?
693 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 12:52:11.08 ID:1uqhjo5xa.net] 群論というのは0個以上の要素を扱う時に使う JSのfilterやmapやreduceはそのカテゴリに入る 何でもかんでもforでやってたら複雑になりすぎるし逆に何でもかんでもreduce使っても複雑になりすぎる こういう時に汎用的に使える関数を作れたら生産性上がるぞ
694 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 12:58:01.84 ID:o9dc7/1oa.net] 初歩的な質問ですみません。 アドバイスを頂きたいです。 ある通信機器から10分間隔で指定のデータを取得し、そのデータをファイルに記述するプログラ厶をサービスアプリで作成しました。 追加の要件としてユーザーからの操作でデータ収集を停止/再開させる機能が必要になりました。 操作用のボタンが必要になるのですが、サービスアプリではGUIを持てないと認識しているのでフォームアプリで作成し直す必要があると考えています。 停止が押されていない間はデータ収集を継続したいのですが、フォームアプリだとユーザーが画面を落とす(×ボタン押下)可能性が考えられます。 画面を落とした時、つまりフォームが立ち上がっていないときでも収集処理をすることは可能でしょうか? 調べるとBackgroundWo
695 名前:rkerなどは出てくるのですが、これは少し意味合いが違っているように感じており、似たような例を見つけられませんでした…。 [] [ここ壊れてます]
696 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 13:00:11.07 ID:pYaNr1fI0.net] サービスなら止めたり再開するAPIあるやろ
697 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 13:00:59.13 ID:1uqhjo5xa.net] 本体はサービスで作ってUI専用のフォームアプリから名前付きパイプでシグナル送ればいんじゃね
698 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 13:03:52.90 ID:1uqhjo5xa.net] >>688 そういやそうか https://learn.microsoft.com/ja-jp/dotnet/api/system.serviceprocess.servicecontroller?view=dotnet-plat-ext-7.0
699 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 13:48:09.53 ID:7NA4xXcX0.net] >>689 のようなプロセス間通信制御でもいいし どうしてもフォームアプリで統合したいなら、×ボタン無効化したり FormClosingイベント拾って閉じるのキャンセルして代わりにHideするようにしたりすればいいんじゃない?
700 名前:デフォルトの名無しさん (ワッチョイ 9f80-FA6k) mailto:sage [2023/05/28(日) 14:06:11.06 ID:pYaNr1fI0.net] PowerShellに、Suspend-Service とかRestart-Serviceとか、そのまんまのサービス系のコマンドがいろいろある
701 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 14:46:33.46 ID:urnIPGLqM.net] >>687 です 回答ありがとうございます FormClosingイベントでウィンドウを閉じたように見せるだけ、というのもあるんですね 試せる環境が今手元に無いのですが、Hideで隠した状態で、ユーザーが再度フォームを立ち上げた場合は、隠したものと新たに起動した2つのフォームが動いている状態になるんでしょうか? >>692 なるほど、このコマンドのバッチファイルを作っておいてユーザーにはそれをダブルクリックして停止/再開をしてもらうのが手軽かもしれません
702 名前:デフォルトの名無しさん [2023/05/28(日) 14:53:07.28 ID:E8Oz4qmg0.net] scコマンドに停止/再開の引数付けたショートカット作ってもいいぞ
703 名前:デフォルトの名無しさん [2023/05/28(日) 15:07:22.90 ID:LhRRD0FE0.net] >>677 最適化と組み合わせ論だっけ? めちゃくちゃ分厚くて数式だらけだった気がする 全然わからん あーいうのが読めなくて自信喪失してる最中
704 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 16:08:43.34 ID:19IHwxiC0.net] >>687 バックグラウンドデーモンを誰が停止・開始制御するかという命題では? プレビリッジ権限の認証問題がシステム課題であって、APIやパイプラインなどというアクイジションのテクニックなんか些細な問題。 UMLユースケースを書き、SOLID原則のSRP遵守でUSERを明確にし、必要に応じてFACARDやFACTORYで入り口を切り分ける事。 この場合は、認証問題がキモ。 ボタンがどうのこうのではない。
705 名前:デフォルトの名無しさん (ワッチョイ 9f79-dfVX) mailto:sage [2023/05/28(日) 16:29:16.20 ID:pV4wEcmO0.net] サービスを稼動させたまま外部から設定を変更したい サービスとの通信は>>689 のように名前付きパイプでいいが、操作用UIとは完全に切り離した方がいい 今時のタスクトレイに常駐するタイプのサービスはほぼそうなってるはず どちらにしろプロセスは別々になるが>>>691 みたいな考え方で作るとUI側に余計な権限が残ってしまう恐れがある
706 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 16:34:24.11 ID:pYaNr1fI0.net] だいぶ拗らせてるな
707 名前:デフォルトの名無しさん [2023/05/28(日) 17:57:25.94 ID:vErPSHdQM.net] 拗らせ風のレスはわざでしょ もともとサービスのスタート・ストップをどうやるつもりだったのかは重要なポイントだと思うよ 最初から必要そうな機能が”追加要件”扱いなのもちょっと臭う
708 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 18:13:01.32 ID:7NA4xXcX0.net] まぁ、追加要件で重要なのが出て来るのよくあることじゃし(白目
709 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 18:21:31.64 ID:FaN+2ocOa.net] >>695 組合せ最適化問題じゃね? 多分ナップサック問題が最初の方に出てきただろ そういうのはだいたい動的計画法で解く AtCoderのD問題の定番だから洋書なんて読まなくても競プロしてりゃすぐ覚えるぞ
710 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 18:23:17.88 ID:FaN+2ocOa.net] 「EDPC」を検索すれば日本人の書いた記事や動画が山ほど見つかると思う
711 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 18:46:26.18 ID:EBgEX/XFM.net] >>697 知識が足りなくてきちんと理解出来ていないのですがUIは停止/再開のフラグを投げるだけの機能に限定し、現状収集機能を持っているサービス側とは完全に分けるべきという認識で合っていますか? 元々はこういった機能は必要ないとのことで作り始めたんですが、製造現場としてはデータを出したくないタイミングがあると要望が出たので重要な機能ですが後付けになりました…
712 名前:デフォルトの名無しさん [2023/05/28(日) 18:57:13.01 ID:3dp1E4GEd.net] こういう馬鹿に作らせるなよ
713 名前:デフォルトの名無しさん (ワッチョイ dfbd-/RYi) mailto:sage [2023/05/28(日) 20:39:40.10 ID:Tc1TIXcj0.net] せっかくサービスアプリケーションにして安定稼働できているなら、 わざわざGUIアプリケーション化せずに、 GUIアプリケーションから名前付きパイプでサービスに指示するだけのほうがいい。 最近Cで非同期の名前付きパイプクライアントを書いて、 C#で非同期の名前付きパイプサーバーを書いたら、 C#のほうがあっという間に書けて感動した。 (Cのほうも非同期ファイルI/Oのコードを元に作ったからすぐできたけど)
714 名前:デフォルトの名無しさん (ワッチョイ 9f79-dfVX) mailto:sage [2023/05/28(日) 20:55:11.64 ID:pV4wEcmO0.net] >>703 >>687 はデータ収集の停止や再開だけで、サービスを停止させたいとは書いてないからそれを前提で回答してるけど サービス停止の影響範囲によってはサービスとの通信すら不要かもしれない。けどそれを知ってるのは本人だけなんだよ 要件を洗い直した方がいいよ
715 名前:デフォルトの名無しさん (ワッチョイ 9f79-dfVX) mailto:sage [2023/05/28(日) 21:08:37.51 ID:pV4wEcmO0.net] サービスアプリはVista以降は別のセッションで動くから、それをGUIから制御したい場合は 制御用のプロセスを生成してサービスとのプロセス間通信手段を確立する必要があるわけよ ただし要件によっては既存のサービスの停止や再開と状態の参照程度で済むからそれ用のGUIなんて1日もあれば作れるでしょうよ
716 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 06:57:21.51 ID:NVp4lIGp0.net] 初心者の質問するスレなのにしれっとプロが質問するのはなんだかなあ バカは初心者じゃなくても質問していいという判断なのか
717 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 08:35:53.55 ID:4b7YEgmx0.net] プロの初心者も居るには居るけどな
718 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 08:43:49.19 ID:n96cT9XUa.net] 金もらってるやつが初心者名乗るのは流石に草 せめて研修中なら名乗ってもいい
719 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 08:45:57.08 ID:n96cT9XUa.net] 入団1年目のプロ野球選手でも今年入社したばかりのアナウンサーでも初心者じゃなく新人だろうに
720 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 08:56:42.77 ID:4b7YEgmx0.net] それまでC#触ったこともないけど都合上C#に転向しなきゃいけなくなったらC#は初心者だろw
721 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 08:58:41.25 ID:4b7YEgmx0.net] それともあれか、スレタイの初心者はプログラム初心者の意味だったんか? テンプレにはそんなこと一言も書かれてないけどな
722 名前:デフォルトの名無しさん (アウアウウー Sa8f-8jEt) mailto:sage [2023/05/29(月) 09:30:39.19 ID:n96cT9XUa.net] 触ったこともないかどうかは関係ない 言葉の定義とかじゃなくプロが初心者を名乗るなってことだよ Stack Overflow行けよ
723 名前:デフォルトの名無しさん (ワッチョイ 9f80-FA6k) mailto:sage [2023/05/29(月) 09:31:59.20 ID:gG8bkLfQ0.net] またしょうもない事で揉めてるな ここの自称プロは
724 名前:デフォルトの名無しさん (アウアウウー Sa8f-8jEt) mailto:sage [2023/05/29(月) 09:32:15.97 ID:n96cT9XUa.net] プロというのはそれで飯食ってるやつのことだろ? 初心者を言い訳にできるはずがないだろ
725 名前:デフォルトの名無しさん (ワッチョイ bb33-A/tE) mailto:sage [2023/05/29(月) 09:53:25.00 ID:2+KQpLGd0.net] 万年掲示板初心者だらけだな
726 名前:デフォルトの名無しさん (ワッチョイ 9f80-FA6k) mailto:sage [2023/05/29(月) 09:59:38.52 ID:gG8bkLfQ0.net] プログラマーのプロをプロフェッショナルのプロと勘違いしてそう
727 名前:デフォルトの名無しさん (ワッチョイ 9fde-S+HU) mailto:sage [2023/05/29(月) 10:02:54.60 ID:5glDYifC0.net] セミプロのプロ
728 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 10:12:58.22 ID:4b7YEgmx0.net] 文脈がどうのコンテキストがどうのと言葉の定義に拘った癖に言葉の定義とかじゃないとか言い出すの草
729 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 10:35:34.40 ID:n96cT9XUa.net] 辞書的な言葉の定義じゃなくコンテキストで意味が決まってるからなw コンテキストを知らないやつと話すのは説明が長くなってしんどいなw
730 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 11:25:09.12 ID:cZZAOa7Fd.net] 金もらってたらプロならこの業界プロで初心者は普通に存在するだろう 野球選手なんぞを引き合いに出すのが的外れ
731 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 11:52:08.40 ID:n96cT9XUa.net] コンテキストが理解できないやつのためにまとめると、プロなら初心者を言い訳にせずStack Overflowに書けよって話だぞ?w
732 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 12:04:27.26 ID:cZZAOa7Fd.net] 初心者ならここで質問してもいいだろうって話 金もらってるかどうかは無関係
733 名前:デフォルトの名無しさん [2023/05/29(月) 19:11:00.49 ID:az14uG3b0.net] バーコードリーダーから取得したバーコードデータをフォームアプリの テキストボックスに入力して、バーコードデータを読み終わったら 処理をするプログラムを作りたいのですが、 バーコードデータの読み込み終了を知るにはどうしたら良いでしょうか。 一文字読み取るごとに終端文字列を判定すれば出来るのかなと思うのですが、 王道のやり方があったらお教え頂きたいです。
734 名前:デフォルトの名無しさん [2023/05/29(月) 19:13:13.18 ID:M6W/ObnYd.net] また馬鹿が来た
735 名前:デフォルトの名無しさん [2023/05/29(月) 19:19:07.19 ID:6va+z9rTp.net] API仕様嫁としかw
736 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 19:20:31.50 ID:NVp4lIGp0.net] これでプロなんだぜ
737 名前:デフォルトの名無しさん [2023/05/29(月) 19:41:24.70 ID:cWs/PGXpa.net] >>727 キーボードとして認識されるタイプじゃね
738 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 19:44:52.37 ID:a35GfSoK0.net] >>725 バーコードリーダー付属の設定用紙(なければ公式サイトからダウンロード)で スキャンデータの末尾にCRLFを付与する設定にすればOK メーカーによってはアプリで設定するものもあるのでマニュアル読んでね
739 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 19:50:57.54 ID:JR9OEd1l0.net] 時期的に新人さんのOJTの課題かな
740 名前:デフォルトの名無しさん (スプッッ Sdbf-HzZj) mailto:sage [2023/05/29(月) 20:23:23.15 ID:x2JUK8cad.net] 先頭に別の制御コードを付加して、それを検出してテキストボックスにフォーカス当てるなんてのもよくある
741 名前:デフォルトの名無しさん [2023/05/29(月) 21:44:45.49 ID:az14uG3b0.net] バーコードの者ですが、キーボードのように動作してスキャンデータの末尾にCRLFが 付加されるタイプです。 テキストボックスのチェンジイベントごとにテキストボックスの文字を監視すれば 良いかなと思ってるのですが、世間にはもっとスマートなやり方があるのかと思い 聞いてみたのです。 初心者なので、C#相談室には行かず、ふらっと C#の方に来たのですが。。。
742 名前:デフォルトの名無しさん [2023/05/29(月) 21:46:51.88 ID:nfi+BvtEp.net] 素朴な疑問なんだけど、なんでテキストボックスで受けようとした?
743 名前:デフォルトの名無しさん (ワッチョイ efda-eDe+) mailto:sage [2023/05/29(月) 21:52:13.37 ID:4g+5lQrq0.net] >>733 HIDとして認識されるバーコードリーダは、言い換えれば単なるキーボード入力でしかないので王道は無い。 (この場合、本物のキーボードをガチャガチャおしながらバーコード読み取るとか意地悪されると思うので、指定桁数とか見て頑張るしかない) ドライバをインストールして使うようなバーコードリーダならSDKに従えとしか言えない。
744 名前:デフォルトの名無しさん (スプッッ Sdbf-HzZj) mailto:sage [2023/05/29(月) 21:53:29.62 ID:x2JUK8cad.net] >>733 文字を監視するよりキーダウンかキープレスあたりのイベントでキーコードを監視するのがベターかな 文字として表れない制御コードも検知できるから
745 名前:デフォルトの名無しさん (ササクッテロラ Spcf-hD65) [2023/05/29(月) 21:56:22.76 ID:DONu3V9Bp.net] そのテキストボックスにフォーカスしてないと読み取りが正しく入力出来ないとか、馬鹿な仕様だなぁ
746 名前:デフォルトの名無しさん (ワッチョイ 7b78-S+HU) mailto:sage [2023/05/29(月) 22:07:01.27 ID:a35GfSoK0.net] >>737 他にどんな方法があるの?
747 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 22:21:48.60 ID:smYbWQE70.net] また頭でっかちがバカバカ言ってるん?
748 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 22:25:34.30 ID:4b7YEgmx0.net] バーコードの入力をテキストボックスで受ける業務システムなんてごまんとあるがねぇ
749 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 22:44:21.98 ID:AkAnX1XDd.net] >>733 C#以前の問題だろ 他へ行けよ
750 名前:デフォルトの名無しさん [2023/05/29(月) 22:45:14.75 ID:az14uG3b0.net] 逆にキーボードのように動くバーコードリーダーのデータをテキストボックス以外で 入力する方法ってあるのでしょうか。
751 名前:デフォルトの名無しさん [2023/05/29(月) 22:58:50.24 ID:M6W/ObnYd.net] こんなのが作る業務システムって…
752 名前:デフォルトの名無しさん [2023/05/29(月) 23:16:04.08 ID:aYNq1fNY0.net] 質問に答えずにバカにするだけの住人wwwwwwwww あ、ワイのことね。
753 名前:デフォルトの名無しさん [2023/05/29(月) 23:23:42.86 ID:vDJtnbWH0.net] むしろテキストボックスしかキーボード入力出来ないと思ってる方が不思議だわ キーフックとか色々あるだろw
754 名前:デフォルトの名無しさん mailto:sage [2023/05/30(火) 06:51:07.31 ID:J/GTXBvW0.net] 場合によりけりだろ
755 名前:デフォルトの名無しさん (ワッチョイ ef42-S+HU) mailto:sage [2023/05/30(火) 07:31:00.41 ID:supAgpDx0.net] >>742 あまり詳しいわけじゃないが、グルーバルキーフックで行けるんじゃね? https://aonasuzutsuki.hatenablog.jp/entry/2018/10/15/170958
756 名前:デフォルトの名無しさん [2023/05/30(火) 07:53:38.18 ID:bfEjfZ0jr.net] >>743 仕事できない癖に一丁前に文句だけ言うタイプ
757 名前:デフォルトの名無しさん (ワッチョイ bba5-EoPE) mailto:sage [2023/05/30(火) 09:32:04.16 ID:5jyHeOoZ0.net] >>745 キーボードの入力とバーコードリーダーの入力をどうやって区別するの?
758 名前:デフォルトの名無しさん mailto:sage [2023/05/30(火) 10:18:37.15 ID:lEu3ICMm0.net] バーコード・QRリーダーにシリアルモード無いの? あれば、シリアルで処理すべし。
759 名前:デフォルトの名無しさん mailto:sage [2023/05/30(火) 10:22:34.36 ID:4h93jK/S0.net] RawInputというハードウェアを区別して入力を識別できる仕組みがある https://learn.microsoft.com/ja-jp/windows/win32/inputdev/about-raw-input でもバーコード読み取りながらキーボード操作するなんて普通はやらないし 大体はEnterが入力されたらtextboxの文字数をチェックして 想定外の文字数が入力されてたらエラーで再度読み取りを促すとかで済ませてそう
760 名前:デフォルトの名無しさん [2023/05/30(火) 10:39:12.21 ID:fRxDhXvsp.net] >>749 安いバーコードリーダー使ってる奴は運用でカバーするしか無いだろw 許容出来ないならプロジェクト自体が破綻してるって事さw
761 名前:デフォルトの名無しさん [2023/05/30(火) 10:42:26.90 ID:Myxtqo5cp.net] >>751 こんなのがあるんだぁ でも初心者スレにゃ敷居が高いかなw
762 名前:デフォルトの名無しさん [2023/05/30(火) 10:49:12.86 ID:bfEjfZ0jr.net] ふらっとC♯で質問をバカにすんなよ C#相談室に来ちまうだろ 気に入らんならスルーしろ
763 名前:デフォルトの名無しさん [2023/05/30(火) 10:59:18.28 ID:S+eBT5oEp.net] >>754 むしろ引き取ってくれw
764 名前:デフォルトの名無しさん (ワッチョイ ebe5-S+HU) mailto:sage [2023/05/30(火) 11:37:11.46 ID:4ZtLJnCc0.net] >>750 頭でっかちはだいたいこうやって視野狭窄する
765 名前:デフォルトの名無しさん (ワッチョイ ab07-8jEt) mailto:sage [2023/05/30(火) 19:47:16.20 ID:58WJoE530.net] そもそも画像そのまま送ってPCで処理するのが一番手間かからないんだがな
766 名前:デフォルトの名無しさん [2023/05/30(火) 20:53:22.26 ID:XqwYghOK0.net] >>751 業務システムは実際そんなもん テキストボックスで受けてチェックデジットでチェックして~とかぐらい
767 名前:デフォルトの名無しさん mailto:sage [2023/05/30(火) 20:59:58.77 ID:F+V5WuV6p.net] >>758 そのノリで顧客が直に使うアプリを作ると最悪なユーザビリティのモノになるんだよなぁ 使い方レクチャーしなきゃダメなアプリってまるでマイナポータルみたいw
768 名前:デフォルトの名無しさん mailto:sage [2023/05/30(火) 21:09:46.60 ID:1rcYEXOM0.net] 他にキーボード入力無ければ普通にKeyDownで処理すりゃいいんじゃね つか、最近のリーダーなら終端文字列設定可能になってるのが多いと思うけどな
769 名前:デフォルトの名無しさん [2023/05/30(火) 21:33:48.29 ID:VFhOrU+Nd.net] 最近( ´,_ゝ`)プッ
770 名前:デフォルトの名無しさん mailto:sage [2023/05/30(火) 22:43:21.58 ID:/80DjIsi0.net] >>751 バーコードリーダーを複数台繋げられないかと考えていたところなので興味深い。
771 名前:デフォルトの名無しさん [2023/05/30(火) 22:51:53.77 ID:aqCv98Mpa.net] なんだかんだで考えてあげるお前ら優しいね(*´ω`*)
772 名前:デフォルトの名無しさん [2023/05/31(水) 06:26:02.95 ID:bZhrN1mv0.net] バーコードの者ですが ・1文字入力される度に終端文字を評価して終端文字が来たらコードを確定するやり方は王道 ・テキストボックス以外にキーをホックする事もできる ということが分かりました 世間一般とは外れたやり方をしないで済みそうです ありがとうございます
773 名前:デフォルトの名無しさん mailto:sage [2023/05/31(水) 08:26:16.71 ID:r9qRlQV50.net] ハゲは辛いよな
774 名前:デフォルトの名無しさん mailto:sage [2023/05/31(水) 09:03:04.25 ID:w6ivfughr.net] いっそのことスキンにすればいいのにな
775 名前:デフォルトの名無しさん mailto:sage [2023/05/31(水) 19:26:15.32 ID:5lDwRBwp0.net] また髪の話してる
776 名前:デフォルトの名無しさん mailto:sage [2023/06/01(木) 03:00:02.61 ID:toxSQWi90.net] Visal Studio for Mac2022で自動保存の設定の場所を探してるんですが 見つかりません ユーザー設定の中にありますか?
777 名前:デフォルトの名無しさん mailto:sage [2023/06/01(木) 07:54:17.29 ID:LS3jNsYU0.net] visalはしらんがVSなら本スレいけ
778 名前:デフォルトの名無しさん (ワッチョイ 0fbb-wRkZ) [2023/06/01(木) 12:50:37.21 ID:6cGVvbbd0.net] 完全に自動保存の代わりになるわけじゃないけど、ないのはHot Exitで代替しろってことなんじゃないのかな?
779 名前:デフォルトの名無しさん mailto:sage [2023/06/01(木) 20:34:08.33 ID:+dVQvBYt0.net] >>769 命令すんなよ?!
780 名前:国名です [2023/06/02(金) 13:19:54.33 ID:WyoC2q620.net] 近くにやばい人がいた(ガチ)
781 名前:デフォルトの名無しさん mailto:sage [2023/06/02(金) 13:59:45.66 ID:XtwEbodRa.net] ヤバい人などめずらしくもない
782 名前:デフォルトの名無しさん mailto:sage [2023/06/09(金) 10:06:48.95 ID:MbL8YIrlp.net] 俺ヤバ的に解釈すると、気になる子って事かな?
783 名前:デフォルトの名無しさん mailto:sage [2023/06/10(土) 21:21:30.66 ID:FuXZUb160.net] 何故か急にBitmap.SetPixelが機能しなくなったんですが原因わかりません。 正方形範囲を青色で縫ってpictureboxに反映させるだけの超シンプルなコードです。 デバッグツール使うと青に塗った後Bitmap.GetPixelで色が反映されてるのは確認取れたんです。 でpictureboxにもちゃんとbitmap指定しました。でもpictureboxは何も変更されません。 適当な新規プロジェクト立てて全く同じコード書いたら普通に機能しました。 ひょっとすればプロジェクトが壊れたなんてことあります?
784 名前:デフォルトの名無しさん mailto:sage [2023/06/10(土) 21:33:22.64 ID:zUCBB0zf0.net] バージョン管理してないんか? 動いてたとこまで戻して差分確認すりゃいいじゃん してないなら知らん
785 名前:デフォルトの名無しさん mailto:sage [2023/06/10(土) 23:19:53.45 ID:JneWu8RjM.net] xとyがどこかで入れ替わったとかそういうレベルの質問ではないよね なんとなく原因がわかる気がするけどまあRefreshの話なんだろうね多分
786 名前:デフォルトの名無しさん mailto:sage [2023/06/10(土) 23:24:58.55 ID:JneWu8RjM.net] ググってもジャストミートする良いページが見つからないんだけど c# picturebox refreshで出てくるのはドボンのページだからそれでいいのかな?
787 名前:デフォルトの名無しさん mailto:sage [2023/06/10(土) 23:31:04.78 ID:JneWu8RjM.net] 一度目に指定するとそれは即反映される 二度目以降はリフレッシュさせないと反映されない 表示されてる画像をSetPixelしただけで毎回全部書き換えてたらとんでもなく重くなるでしょう 表示のタイミングはこちらで決められますと言うこと
788 名前:デフォルトの名無しさん mailto:sage [2023/06/10(土) 23:50:06.20 ID:JneWu8RjM.net] ところがwindowが重なったりした後に前に出すと新しい画面に書き換わったりしてる これはwindowsがアプリのwindowの画像が無効になったので再描画しなさいと命令を出してるため 元から表示されてる画像は表示されていただけでアプリ内で保存されていない それで新しい画像を表示するしかなくなる
789 名前:デフォルトの名無しさん mailto:sage [2023/06/11(日) 00:08:45.00 ID:wZmBwowG0.net] >>780 そういうことなんですか!チャットに聞いても分からなかったけど納得しました。 次は何故そういう状況になってしまったか考えないといけないですね。 ありがとうございました!
790 名前:デフォルトの名無しさん mailto:sage [2023/06/11(日) 00:12:07.72 ID:jsCGKiXwM.net] windowsワールドへようこそ! 自分も30年ほど前に同じことにぶち当たった その時はc#では無かったけど
791 名前:デフォルトの名無しさん mailto:sage [2023/06/11(日) 00:40:06.81 ID:okFYrxW20.net] 新規プロジェクトで同じコード書いたら動いたと言う話はなんだったんだ?
792 名前:デフォルトの名無しさん [2023/06/11(日) 00:41:58.22 ID:R/2qoB4K0.net] 勝手な略語を使う馬鹿にまともなことを期待してはいけない
793 名前:デフォルトの名無しさん mailto:sage [2023/06/11(日) 00:44:41.04 ID:jsCGKiXwM.net] どちらかと言うと柔軟性のない君らはアスペルガー症候群なのかもしれないよ
794 名前:デフォルトの名無しさん (アウアウウー Sadd-8W7i) mailto:sage [2023/06/11(日) 10:40:16.94 ID:a75z9osJa.net] https://github.com/microsoft/cswin32 これ知らんかったけど欲しかったやつ あったんだ
795 名前:デフォルトの名無しさん mailto:sage [2023/06/12(月) 08:20:00.96 ID:9gPNlu+S0.net] >>780 まぁそれがつまるところRefreshなんだけど
796 名前:デフォルトの名無しさん mailto:sage [2023/06/12(月) 09:51:36.95 ID:NagvqA3h0.net] >>787 リフレッシュは良いんだけどasyncとか出てきて使う様になってバックグラウンドでUI更新しようして出来てないって事に気付いてないとか有るやん UIスレッドじゃ無いと更新出来ないの知らない人も多いしスレッド切り替える方法知らない人も多い
797 名前:デフォルトの名無しさん [2023/06/13(火) 07:59:18.79 ID:0FRcsKll0.net] GitHubの使い方が分からない。 つまりこれって書いた差分をマージするってこと? ブランチとかよくわからんが、支店を出すってこと? コードをシェアするってことなんだけど、シェアする仲間がいない・・・
798 名前:デフォルトの名無しさん mailto:sage [2023/06/13(火) 08:00:47.90 ID:PEee/u2aa.net] そこからわからんなら使わなくていいぞ C#のスレだしな
799 名前:デフォルトの名無しさん mailto:sage [2023/06/13(火) 08:14:38.47 ID:rV2623H60.net] 支店のオーナーになって本店への併合を目指すゲームだよ
800 名前:デフォルトの名無しさん (ワッチョイ 8bbb-f0F1) [2023/06/14(水) 12:43:21.90 ID:zQTHCkUD0.net] >>789 githubも使い方gitと同じだから
801 名前:デフォルトの名無しさん (アウアウウー Sadd-g1CP) mailto:sage [2023/06/14(水) 13:01:51.20 ID:iWYHYN4ra.net] githubは差分を出してくれるけどcommitは差分じゃない
802 名前:デフォルトの名無しさん (アウアウウー Sadd-8W7i) mailto:sage [2023/06/14(水) 13:06:37.94 ID:GknXMRlPa.net] >>793 何を言ってるんだ?
803 名前:デフォルトの名無しさん (ワッチョイ 017c-1yE0) mailto:sage [2023/06/14(水) 14:17:45.17 ID:XWqksor40.net] バージョン管理なんだから差分とか考えるなよ 版管理だよ
804 名前:デフォルトの名無しさん (アウアウウー Sadd-8W7i) mailto:sage [2023/06/14(水) 14:31:03.19 ID:GknXMRlPa.net] 差分の表示 git diff head^^ head^
805 名前:デフォルトの名無しさん (オッペケ Sr05-8Dp1) [2023/06/16(金) 06:55:54.14 ID:OHuIfsqSr.net] 同一ネットワーク内の複数のPCで通信したいけどプロセス間通信って古いかな 今はSocketIOで非同期通信くらいしてないとダメかな ちなみにフォームアプリの予定w WPFは工数だけかかって面倒臭そう
806 名前:デフォルトの名無しさん (ワッチョイ 8907-8W7i) mailto:sage [2023/06/16(金) 07:13:30.39 ID:hLDZvlP60.net] 複数のPCでプロセス間通信てどれかをサーバーにするしかないじゃん リモートオブジェクトはなくなったぞ https://learn.microsoft.com/ja-jp/dotnet/core/porting/net-framework-tech-unavailable > .NET リモート処理は、.NET 6 以降ではサポートされていません。 .NET リモート処理は、問題のあるアーキテクチャであると判断されました。 これは、現在サポートされていないアプリケーション ドメインとの間の通信に使用されています。 また、リモート処理にはランタイム サポートも必要で、維持するのに高いコストがかかります。
807 名前:デフォルトの名無しさん (ワッチョイ 3102-2rqm) mailto:sage [2023/06/16(金) 08:13:22.22 ID:LNSu1MfD0.net] 複数のPCってのがざっくりしすぎてるな 1対多ならMinimalAPIでサーバ建てりゃいいんじゃね 詳細はググってくれ
808 名前:デフォルトの名無しさん (ワッチョイ a9e5-2rqm) mailto:sage [2023/06/16(金) 09:38:19.59 ID:8cf3Z2YQ0.net] 古いも何も、Socketで通信してようが他プロセスと通信する物はすべてプロセス間通信だろ
809 名前:デフォルトの名無しさん (アウアウウー Sadd-g1CP) mailto:sage [2023/06/16(金) 10:04:28.26 ID:ly+Q1cW8a.net] RPCとSocketIOを会話上で使い分けたいって意味かな
810 名前:デフォルトの名無しさん (ササクッテロラ Sp05-mItu) mailto:sage [2023/06/16(金) 10:39:19.11 ID:ZjNkxhYgp.net] いやいや実態が同じでも目的が違うだろ
811 名前:デフォルトの名無しさん (スフッ Sd33-pDI4) mailto:sage [2023/06/16(金) 12:48:25.83 ID:AFoiPDKcd.net] ほらね https://futureys.tokyo/what-happens-when-commit-large-file-on-git/
812 名前:デフォルトの名無しさん (オッペケ Sr05-VFpa) mailto:sage [2023/06/16(金) 13:37:11.38 ID:JZEl94b2r.net] やっぱ Mercurial だな。
813 名前:デフォルトの名無しさん (ワッチョイ b178-2rqm) mailto:sage [2023/06/16(金) 17:03:12.15 ID:kBMaOVut0.net] bazaar だろ
814 名前:デフォルトの名無しさん (ブーイモ MMeb-BK+T) [2023/06/16(金) 17:19:58.24 ID:wS8/ZvHAM.net] >>797 どういうプロトコルでのプロセス間通信?
815 名前:デフォルトの名無しさん (アウアウウー Sadd-8W7i) mailto:sage [2023/06/16(金) 17:58:26.69 ID:xumbESuca.net] >>803 サイズのことなら後で最適化されるぞw
816 名前:デフォルトの名無しさん (スップ Sd33-h5Ja) mailto:sage [2023/06/16(金) 20:02:10.64 ID:BdjqvBhXd.net] そういえば、IpcServer使ってる。 ちゃんと動いてるし、もう、変えたくないわぁ
817 名前:デフォルトの名無しさん (スップ Sd33-h5Ja) mailto:sage [2023/06/16(金) 20:06:39.73 ID:BdjqvBhXd.net] ぎりぎりまで、.netcore系には移りたくないね
818 名前:デフォルトの名無しさん (オッペケ Sr05-Cr01) [2023/06/16(金) 22:22:57.11 ID:koUma95Nr.net] 既存のアプリケーションを移行したくないのはわかる けど、null不許容参照型が使えないのはいまどきあり得ない
819 名前:デフォルトの名無しさん (ワッチョイ 1379-hEWj) mailto:sage [2023/06/16(金) 23:36:36.10 ID:sUccxFc+0.net] これだからフレームワークありきの環境はダメなんだよ やっぱC/C++しか信じられん!…ってなるのぉ?
820 名前:デフォルトの名無しさん (ワッチョイ 79ac-t2KC) mailto:sage [2023/06/17(土) 01:27:12.96 ID:96RBnRrs0.net] 金無限にあるならともかく、現実はフレームワーク使わんと採算とれないことがそこそこある
821 名前:デフォルトの名無しさん (ワッチョイ a2bd-L1I+) mailto:sage [2023/06/17(土) 05:59:53.37 ID:3A62XWi80.net] >>798 「リモート処理」って訳されていて最初ピンとこなかったけど、 英語ページを見たらやっぱり.NET Remotingのことなのね。
822 名前:デフォルトの名無しさん (ワッチョイ b1e5-C6j3) mailto:sage [2023/06/17(土) 08:16:10.20 ID:uo5kyeT50.net] >>810 警告がうざったい……
823 名前:デフォルトの名無しさん (ワッチョイ b6da-RnTl) mailto:sage [2023/06/21(水) 22:15:02.05 ID:hW8H2hzX0.net] コンパイラのnullチェックもLinq to SQLが混じるとうまく働かないね。 まぁ限界があるのは分かる
824 名前:デフォルトの名無しさん (ワッチョイ d242-C6j3) mailto:sage [2023/06/22(木) 01:03:28.84 ID:AGxh0AyX0.net] Linq To SQLは大昔に終わっているからうまく動かないかもな
825 名前:デフォルトの名無しさん (ワッチョイ 3274-hrKI) [2023/06/22(木) 04:35:53.17 ID:CPcSxaDF0.net] わたしは今からLinq To SQLを勉強しようといろいろ川俣の本を買ったのですが。
826 名前:デフォルトの名無しさん (ワッチョイ 8554-dYQK) mailto:sage [2023/06/22(木) 05:01:31.04 ID:Xft5ksI80.net] 自分自身にとって明確な理由やメリットがあって勉強するならいいと思う。 理由もなく、存在を知ったから目的ないのに勉強するというなら勉強不要。 たとえ話になるけど、ガチでプロ選手目指す野球少年なら野球の練習する意味あるけど、 大谷の話題で野球に興味持ったニワカが、目的なく練習しても意味ないでしょ。
827 名前:デフォルトの名無しさん (ワッチョイ ad7c-ZjIi) mailto:sage [2023/06/22(木) 05:23:50.74 ID:fUhg+N3Z0.net] そうでも無いやろ プロになる気が無くても野球やってみたら才能がある事に気付いたとかあるやん プロの選手だって高校までは別の競技やってたとか2つ同時にやってたとかあるやん
828 名前:デフォルトの名無しさん (ワッチョイ f642-C6j3) mailto:sage [2023/06/22(木) 07:28:29.12 ID:oInj3jkO0.net] 勉強するならLinq To SQLより後継のefやる方が賢いとは思う 具体的な仕事があるなら別だが
829 名前:デフォルトの名無しさん (ワッチョイ 6107-Tk+b) mailto:sage [2023/06/22(木) 07:31:19.22 ID:U7fCu9Ru0.net] efはefで欠点多いからなぁ 自分で選べるならDapperが最強
830 名前:デフォルトの名無しさん (ワッチョイ ad7c-ZjIi) mailto:sage [2023/06/22(木) 09:08:14.28 ID:fUhg+N3Z0.net] WebなんかでステートレスならDapperで良いけどデスクトップアプリなんかでステートフルならEFの変更追跡なきゃだるいやん 用途で選べばいいんだよ
831 名前:デフォルトの名無しさん (アウアウウー Sacd-Tk+b) mailto:sage [2023/06/22(木) 09:21:07.30 ID:8AaELlpYa.net] 変更追跡が役に立つ場面なんてほぼ無いよ 速度は無茶苦茶遅いし どうしても追跡したいならDapperで使うクラスに変更通知やIEditableObjectでも仕込んでおいたほうがいい
832 名前:デフォルトの名無しさん (スッップ Sdb2-6ESG) mailto:sage [2023/06/22(木) 13:34:23.63 ID:iyk8obpJd.net] そろそろ的外れなたとえ話は罪に問えるようにするべきだな
833 名前:デフォルトの名無しさん (ワッチョイ 22ea-hRAP) mailto:sage [2023/07/07(金) 20:47:23.54 ID:BdypaOA90.net] visual studioのformでプロジェクトデザイナーの設定settings.settingsでint型の配列を使いたいん [10]個ぐらいなんですけど、windowsFormでいい設定の保存方法ありますか?
834 名前:デフォルトの名無しさん (ワッチョイ 0610-Mrss) mailto:sage [2023/07/07(金) 22:10:36.42 ID:VQ1+4DlV0.net] >>825 デザイナーからじゃなくて直接Properties/Settings.settings/Settings.Designer.csに書けばいけるよ でもデザイナ触るとcs上書きされるからまた追記しないといけないけどね https://ideone.com/tJGGHq
835 名前:デフォルトの名無しさん (ワッチョイ 22ea-hRAP) mailto:sage [2023/07/07(金) 22:51:58.76 ID:BdypaOA90.net] >>826 さんくすです、デザイナーをいじらずListを追加するんですね Settings.Designer.csを書き換えたことをどこかに書いとかないとダメですね [] [ここ壊れてます]
837 名前:デフォルトの名無しさん (アウアウウー Sabb-DX8j) mailto:sage [2023/07/07(金) 23:11:34.06 ID:G77vHYnia.net] なんでpartialクラス使わねーの?
838 名前:デフォルトの名無しさん (ワッチョイ 22ea-hRAP) mailto:sage [2023/07/07(金) 23:28:40.56 ID:BdypaOA90.net] >>828 Settings.csの partial class Settingsを使えってことでしょうか?
839 名前:デフォルトの名無しさん (アウアウウー Sabb-DX8j) mailto:sage [2023/07/07(金) 23:43:30.04 ID:G77vHYnia.net] >>829 そっちが人間が書き換える用のファイル
840 名前:デフォルトの名無しさん (ワッチョイ 9fea-kkOg) mailto:sage [2023/07/08(土) 08:13:42.94 ID:91Ogp97S0.net] >>830 サンクスですSettings.csに書けば上書きされないってことですね
841 名前:デフォルトの名無しさん (スッップ Sdbf-CFBc) mailto:sage [2023/07/09(日) 13:11:44.65 ID:Dnv+EbFzd.net] 通知領域のアイコンをクリックすると現れるメニューを複数列にしてみたいです こういう場合は自作コントロールを作成する必要があると考えればよいですか? この辺は未経験なので自分にはハードル高そうですが 昔から使わせて頂いてるMr.Clipboardというソフトウェアに類似するものを作ることが目標です。
842 名前:デフォルトの名無しさん (スッップ Sdbf-CFBc) mailto:sage [2023/07/09(日) 13:23:58.06 ID:Dnv+EbFzd.net] ん~contextMenuStripとかをいじって自作コントロールを作るという高いハードルを越えるより 通知領域アイコンをクリックした時に、メニューに似せたフォームが、ちょうどメニューが表示されるような位置に現れるようにしたほうがいいのかな・・・実現可能性は高そう Mr.Clipboardの作者さんはどうやってこういうものを作ったんだろう
843 名前:デフォルトの名無しさん (オッペケ Sr0b-kkOg) mailto:sage [2023/07/09(日) 14:28:31.42 ID:qTcsfTmnr.net] 古そうなソフトウェアだから そもそもContextMenuStripじゃなくてContextMenu(=COMCTL32)を使ってるんじゃないかな 使ったことないから知らんけどひょっとしたら何かデフォルトで2列表示できる機能が備わってたりして
844 名前:デフォルトの名無しさん (スッップ Sdbf-CFBc) mailto:sage [2023/07/09(日) 15:40:32.78 ID:Dnv+EbFzd.net] >>834 ありがとうございます 画像貼れればいいのですが規制されててダメなんですごめんなさい Mr.Clipboardを自分のPCで今使っているのですが、通知領域のアイコンをクリックすると、10列表示されます。 文字列を登録することができるのですが、登録数をふやすほど列も増えていく仕様なんです 列数だけではなく、1列当たりの行数なども柔軟に扱えないと実現できないのかなと思ってます。 一応>>833 の方向性でやってみることにしました 継承やらオーバーライドやら試してみたい気持ちもあったのですが、.そもそもNETのソースコードを正しく読み解く自信が・・・
845 名前:デフォルトの名無しさん (ワッチョイ 3768-rqKn) mailto:sage [2023/07/09(日) 16:18:02.54 ID:rFc2qelE0.net] 現在進行形でC#の仕事してるけどプログラミングよりもgitとかのほうが難しい マーキュリアル開いて出てきたMQ パッチ適用がどうたらって何のこと?
846 名前:デフォルトの名無しさん (ワッチョイ 9f80-KChr) mailto:sage [2023/07/09(日) 16:26:49.16 ID:W7Z8cVLl0.net] Git の質問かと思ったら、マーキュリアルの話始めたり 精神分裂症かな
847 名前:デフォルトの名無しさん (ワッチョイ 9701-xBPm) mailto:sage [2023/07/10(月) 01:02:30.69 ID:qL1vqKUB0.net] 混在してるか移行中のPJで初心者故に両者がごっちゃになってるだけだとエスパーしてみます
848 名前:デフォルトの名無しさん (スップ Sd3f-mu37) mailto:sage [2023/07/10(月) 07:18:29.54 ID:BXZpIYtLd.net] 単に物を知らないのをバカにしたいだけで本気で精神分裂症とは思っとらんだろ
849 名前:デフォルトの名無しさん (ワッチョイ 9f80-KChr) mailto:sage [2023/07/10(月) 09:42:06.39 ID:zUnHM/go0.net] C#ってプロジェクトを作らないとコンパイル出来ないんでしょうか? main関数のあるHelloWorld.csだけでコンパイルするのは無理?
850 名前:デフォルトの名無しさん (ワッチョイ f7c6-knyK) mailto:sage [2023/07/10(月) 09:50:21.18 ID:jFNuf9xo0.net] csc.exeを直接実行すれば*.csだけでもコンパイルできるよ Linux向けとかはどうか知らないけど
851 名前:デフォルトの名無しさん (ササクッテロラ Sp0b-JJLP) mailto:sage [2023/07/10(月) 10:13:07.78 ID:bDJ4URo4p.net] >>840 C#がインタプリタ的に使えるのって案外知られて無いんだなぁ
852 名前:デフォルトの名無しさん (ワッチョイ 9f80-KChr) mailto:sage [2023/07/10(月) 10:33:54.46 ID:zUnHM/go0.net] >>841 Linuxには無さげですね dotnetコマンドでも無理そう
853 名前:デフォルトの名無しさん (ワッチョイ 9f80-KChr) mailto:sage [2023/07/10(月) 10:59:12.77 ID:zUnHM/go0.net] >>842 dotnet-repl を入れたら実行結果の確認は出来るようになった ありがとう
854 名前:デフォルトの名無しさん (アウアウウー Sa9b-Pj0o) mailto:sage [2023/07/10(月) 12:41:26.24 ID:h4a2e+7ia.net] シェルスクリプト代わりにするならC#使うよりPowerShellの方が便利だから batはそろそろ滅べ
855 名前:デフォルトの名無しさん (ワッチョイ bf79-CBkq) mailto:sage [2023/07/10(月) 12:44:12.34 ID:pvSg+WfU0.net] powershellでええやん
856 名前:デフォルトの名無しさん (アウアウクー MM0b-xBPm) mailto:sage [2023/07/10(月) 13:19:11.50 ID:otun5GpPM.net] batとの互換性が中途半端なのがイラつきますけどね
857 名前:デフォルトの名無しさん (アウアウウー Sa9b-Pj0o) mailto:sage [2023/07/10(月) 14:17:36.82 ID:h4a2e+7ia.net] batみたいな化石との互換性なんか要らんだろ PowerShell使えばC#もそのまま動くぞ https://codezine.jp/article/detail/5007
858 名前:デフォルトの名無しさん (ブーイモ MM8f-9ZAg) mailto:sage [2023/07/11(火) 22:56:21.27 ID:0HX/1I5LM.net] talkで質問集まってるみたいだから向こうに行くかな
859 名前:デフォルトの名無しさん (スププ Sdbf-1L5A) mailto:sage [2023/07/12(水) 01:00:39.52 ID:WP87K7PTd.net] おう、二度と戻ってくるなよ
860 名前:デフォルトの名無しさん (オッペケ Sr0b-B87o) mailto:sage [2023/07/14(金) 11:09:10.37 ID:SW9fkks0r.net] 少しはここもまともになるかな
861 名前:デフォルトの名無しさん (オッペケ Sr0b-jHc6) mailto:sage [2023/07/14(金) 11:21:59.88 ID:gWjfvyvyr.net] プログラム板住人誰も移住してなさそうだから変わらないんじゃない?
862 名前:デフォルトの名無しさん (ワッチョイ 7f2d-/79E) mailto:sage [2023/07/14(金) 11:29:58.
] [ここ壊れてます]
863 名前:62 ID:FrJI/jtz0.net mailto: あっちはスレッドだけ出来てて中身が空なのばっかりじゃん C#関連スレは全て1件もレス付いてない [] [ここ壊れてます]
864 名前:デフォルトの名無しさん (オッペケ Sr0b-WUNe) mailto:sage [2023/07/14(金) 13:15:57.44 ID:o+Lvn4Uxr.net] jane styleってC#で開発したって聞いたが勘違いかな
865 名前:デフォルトの名無しさん (ワッチョイ 57a7-xgtz) mailto:sage [2023/07/14(金) 13:19:10.56 ID:0qf2Hag/0.net] Delphiだから勘違いだね Delphiの発明者が後のC#の発明者と同一人物だからそういう勘違いが生まれたのでは
866 名前:デフォルトの名無しさん (スププ Sdbf-Gz7C) mailto:sage [2023/07/14(金) 17:53:33.20 ID:L1fXIk/+d.net] 発明されたんだ
867 名前:デフォルトの名無しさん (ワッチョイ 95ad-tdBp) [2023/07/15(土) 12:52:20.24 ID:x4tryG3A0.net] 初心者です。 非同期メソッドにCancellationTokenを渡して、エラーハンドリングを行う必要があることを知りました。CancellationTokenSourceからCancellationTokenを作成して、非同期メソッドに渡していくところまではできました。ただ、ネストが深い非同期メソッド内でトークンをキャンセルしたいときに、どのようにキャンセルすれば良いのか分からない状況です。 非同期メソッドからCancellationTokenSourceのCancelメソッドはどのように呼べば良いのでしょうか。
868 名前:デフォルトの名無しさん (ワッチョイ 665f-bpoS) mailto:sage [2023/07/15(土) 12:56:18.34 ID:IVtLjRqQ0.net] 【えっ】Perlに未来はあるのか?【終わり?】
869 名前:デフォルトの名無しさん (JP 0H62-9/0y) mailto:sage [2023/07/15(土) 13:15:08.16 ID:KExn0jd0H.net] トークンをキャンセルする権限を持ってるのは非同期処理側じゃなくて呼び出し元だと思うんだけど・・・ (だからcancellationTokenSourceを持ってる人だけがCancel()を実行できる) 呼び出し元から指図されたわけじゃないけど自発的にキャンセルしたいってことなら throw new OperationCanceledException(token) とでもすればいいんじゃないかな
870 名前:デフォルトの名無しさん (ワッチョイ ca2d-2eqx) mailto:sage [2023/07/15(土) 13:42:20.93 ID:m7eEyKEv0.net] それはtokenの状態と整合性取れないし不自然だろう 普通に(キャンセルしたいと判断した)要因に合った例外使えば済む話だ
871 名前:デフォルトの名無しさん (ワッチョイ 95ad-tdBp) [2023/07/15(土) 15:05:06.38 ID:x4tryG3A0.net] >>859 >>860 ご回答ありがとうございます。 awaitしている非同期メソッド内で例外を投げて、呼び出し元でcancellationTokenSource.Cancelしてキャンセルする、というのはできました。 ただ、awaitしない非同期メソッド内で例外を投げてもcatchできず、呼び出し元でcancellationTokenSource.Cancelできない状況です。 awaitして、非同期メソッド内で例外を投げて呼び出し元でキャンセルするしかないのでしょうか。
872 名前:デフォルトの名無しさん (ワッチョイ ca2d-2eqx) mailto:sage [2023/07/15(土) 16:17:24.24 ID:m7eEyKEv0.net] >>861 awaitしない非同期メソッドのタスクにContinueWith()で後続タスクを作って、その中でキャンセルかな。 後続タスクの実行条件はConinueWith()の引数にTaskContinuationOptionsを指定すれば変更出来る。 (エラーが起きた時のみ実行するとか)
873 名前:デフォルトの名無しさん (スッップ Sd94-XM1G) mailto:sage [2023/07/15(土) 17:39:44.49 ID:q/a2phH1d.net] windowsアプリ作る時にform2の幅をコンストラクタ内で指定しても 136未満だと勝手に136に広げられてしまうんだね 知らなくて原因究明するのに時間かかった
874 名前:デフォルトの名無しさん (ワッチョイ 87e5-XQTJ) mailto:sage [2023/07/17(月) 11:07:42.07 ID:fKATz6pi0.net] MinimumSizeにそう設定されてるだけでは
875 名前:デフォルトの名無しさん (ワッチョイ ca2d-2eqx) mailto:sage [2023/07/17(月) 12:47:25.02 ID:oq1oEUQ30.net] >>863 FormBorderStyleプロパティがNone、ToolWindow系、その他で幅が変わるね。 ToolWindowだとタイトルバーに表示されるボタンの有無でもちょっと変わって、 ControlBox = falseの時が一番小さく出来る。 何故かNoneの時が一番大きくなる。 >>864 MinimumSizeがSize(0,0)でもなる
876 名前:デフォルトの名無しさん (ワッチョイ 3210-2eqx) [2023/07/17(月) 21:11:29.34 ID:hjrHtCYP0.net] 自作クラスのインスタンス化したときに、 そのインスタンスのプロパティを設定するやりかた? を教えてください。 うまい言い方ができないので、例を示します。 自作クラスで class Square { double width double height } があったとして、 Square square = new Square(){width = 3, height =2} としたならば、 console.Writeline (square.ToString()) とすると 6 と表示されるようなイメージです。 何がしたいのかというと、 IPropertyChanged を使って、中の プロパティが変化したときに、square が変わったということを認知したいのです。
877 名前:デフォルトの名無しさん (ワッチョイ 3279-EJzg) mailto:sage [2023/07/18(火) 02:03:58.47 ID:BpIlHiPB0.net] Writelineで6を表示したければToStringをoverrideしてやればいいだろうまでは思いましたが 貼られたコードと「何がしたいのかというと」が全く繋がってなくて、恐らくこれは誰も質問を理解できてない状況ではないでしょうか 私の感想としてはIPropertyChangedとやらを使いたければ使えばいいだけの話ではないでしょうか
878 名前:デフォルトの名無しさん (ワッチョイ ca2d-2eqx) mailto:sage [2023/07/18(火) 02:28:36.72 ID:GDp0BnYT0.net] 例には書いてないけどIPropertyChangedイベントを購読して、イベントが来たらConsole.WriteLine()するんでしょう で、IPropertyChangedの実装方法が知りたいと public class Square : INotifyPropertyChanged { public event PropertyChangedEventHandler? PropertyChanged; private void SetProperty< T >( ref T field, T value, [CallerMemberName]string propertyName = null ) { if ( field.Equals( value ) ) { return; } field = value; PropertyChanged?.Invoke( this, new PropertyChangedEventArgs( propertyName ) ); } private double _width; public double Width { set => SetProperty( ref _width, value ); get => _width; } private double _height; public double Height { set => SetProperty( ref _height, value ); get => _height; } }
879 名前:デフォルトの名無しさん (ワッチョイ 87e5-XQTJ) mailto:sage [2023/07/18(火) 08:44:49.63 ID:3b5O2M5n0.net] >>863 >>865 なんか頭の中で136ってもっとおっきいイメージになってた、すまないw アイコンやコントロールボタンが表示できる最低サイズだったね 面白いことに、FormBorderStyle=Noneの時に コンストラクタでどんだけ小さいWidth指定しても136になるけど その後でShown等のフォームが生成された後の時点でWidth指定すると2までは縮まるんだな SizableとかだとShownでやっても136になるけど
880 名前:デフォルトの名無しさん (スッップ Sd94-XM1G) mailto:sage [2023/07/18(火) 10:03:44.12 ID:W6YFjoCEd.net] >>865 >>869 はーやっぱり知識ある人は知ってるんですねー こういう理屈じゃないところでいちいち悩まないといけないのが大変ですわ まったく別の話なんですけど、 今これ>>832 作ってて面白いこと気づきました MouseClickイベントって右クリック・左クリック別に処理を分けられないじゃないですか e.Button == MouseButton.Left とかが使えるMouseDown使えって言われるんですけど bool isRightClickみたいなフィールドつくって、MouseDownのイベントハンドラで右・左判別して結果をisRightClickに設定 んで、MouseDownイベントの直後にMouseClickイベントも発生するからこいつのハンドラでisRightClickを取得して右・左別に処理わけることができた! ってこれもみんな普通にやってんのかな・・・自分としては大発見なのだが。 今左右クリックやD&Dで細かい動きを作ってるんでこれは貴重な発見だった
881 名前:デフォルトの名無しさん (スププ Sd94-uP9V) mailto:sage [2023/07/18(火) 10:04:51.17 ID:5Ch5Zuv0d.net] >>867 >>868 ありがとうございます 質問のしかたが悪くうまく伝わっていないのですが回答は知りたかったことの一部でもありその部分については理解しました。 public class Hoge :IpropertyChanged { public Square square } とした時に squareが値をもっていないことから、methodでsquare.widthの値を変えたとしてもsquareか変化したことを認識できないとの理解です SquareにIPropertyChangedを噛ませてhogeのpropertyが変わったとする方法もあるのかも知れませんがsquare自身に値を持たせる方法があったら教えて下さい
882 名前:デフォルトの名無しさん (ワッチョイ 87e5-XQTJ) mailto:sage [2023/07/18(火) 10:25:56.29 ID:3b5O2M5n0.net] >>870 何のMouseClickイベントのこと? FormやNotifyIconのMouseClickイベントならe.Button使えるはずだけど
883 名前:デフォルトの名無しさん (スッップ Sd94-XM1G) mailto:sage [2023/07/18(火) 11:52:13.49 ID:W6YFjoCEd.net] >>872 今いろいろ確認して、間違えてたことが分かりました ごめんなさい 複数のラベルをForm上に動的配置したうえで、このラベル全てにクリック系のイベントを追加したんです。 この際、イベントハンドラも自分でコードを書いたのですが、Label_MouseClickイベントハンドラの引数である e の型を、間違えてMouseEventArgsではなくEventArgsとしていたため、e.Buttonが使えなかったというオチでした。 e.Buttonが使えない点を除いて問題なく動いていたので気づきませんでした ふぅ・・・何やってんだか・・・
884 名前:デフォルトの名無しさん (スッップ Sd94-XM1G) mailto:sage [2023/07/18(火) 12:01:06.39 ID:W6YFjoCEd.net] MouseDown使わないといけないのはVBAでした 知識がぐちゃぐちゃになってました
885 名前:デフォルトの名無しさん (ワッチョイ e979-9/0y) mailto:sage [2023/07/18(火) 13:43:10.65 ID:hAXktsXG0.net] 赤あげて、白あげて、白下げないで、赤下げる♪ 左押して、右押して、右離さずに、左離す♪
886 名前:デフォルトの名無しさん (ワッチョイ 73ae-/jfo) [2023/07/18(火) 14:42:32.76 ID:INtka+wY0.net] VBAはVB.netに仕様変更する気が無いんだろうな・・・
887 名前:デフォルトの名無しさん (ワッチョイ a6cd-LhHw) mailto:sage [2023/07/18(火) 15:08:54.43 ID:ss/yk/UI0.net] vb6言語より環境が古くさすぎて触るきにならん 出力して、vscodeでやって取り込みもあるけどいまいち
888 名前:デフォルトの名無しさん (ワッチョイ 4dc6-l/Dq) mailto:sage [2023/07/18(火) 16:00:19.51 ID:zVxGTRP30.net] >>871 細かいけどINotifyPropertyChangedじゃない? SquareにINotifyPropertyChangedを実装して、 Hogeの方でこういう風に Square square { get { return _square; } set { if (_square is not null) _square.PropertyChanged -= OnSquareChanged; this._square = value; if (value is not null) _square.PropertyChanged += OnSquareChanged; } } void OnSquareChanged(object sender, PropertyChangedArgs e) { this.OnPropertyChanged(nameof(this.square)); }
889 名前:デフォルトの名無しさん (ラクッペペ MM34-iMTa) mailto:sage [2023/07/18(火) 16:06:27.35 ID:vLiOabGzM.net] VBA - VisualBasic https://learn.microsoft.com/ja-jp/office/vba/library-reference/concepts/getting-started-with-vba-in-office Office add-ins - C# https://learn.microsoft.com/ja-jp/office/dev/add-ins/overview/office-add-ins Vsto - C# https://learn.microsoft.com/ja-jp/visualstudio/vsto/create-vsto-add-ins-for-office-by-using-visual-studio Office Scripts - TypeScript(JavaScript) https://learn.microsoft.com/ja-jp/office/dev/scripts/overview/excel
890 名前:デフォルトの名無しさん (ワッチョイ d010-uD+5) mailto:sage [2023/07/18(火) 17:40:37.17 ID:HtITPTeb0.net] 871が言ってる値が何のことかよくわからないな >square自身に値を持たせる方法
891 名前:デフォルトの名無しさん (スップ Sd00-IoCj) mailto:sage [2023/07/18(火) 17:59:36.33 ID:uMqw2ex7d.net] まず環境書けとか色々突っ込み所がありすぎて暑いしで萎えた おまえら頑張れよ
892 名前:デフォルトの名無しさん (ワッチョイ f62f-NBo5) mailto:sage [2023/07/18(火) 21:18:14.67 ID:ZtgGANuh0.net] >>871 俺がエスパー回答してやる Hoge のコンストラクタでsquareをnewする Square をクラスじゃなくて構造体にする 好きなほうを選べ
893 名前:デフォルトの名無しさん (オイコラミネオ MM71-9/0y) mailto:sage [2023/07/18(火) 22:23:27.30 ID:5UWIDgazM.net] お前らも含めてだが…基本的なことを勘違いしてるんだろう IpropertyChangedが必要なのかも怪しいがそれは置いておく 通常似た様なものがあった場合 面積に相当するAreaプロパティが設定されている binding対象はHoge.Square.Areaに普通はする さて、 WidthやHeightが変更になった場合にAreaはその都度変化を通知して欲しいのかどうかも気になる WidthとHeightを同時に変更したい場合メソッドを使って適切に変更しないとゴミがでるぞ
894 名前:デフォルトの名無しさん (オイコラミネオ MM71-9/0y) mailto:sage [2023/07/18(火) 22:33:21.86 ID:5UWIDgazM.net] Squareの値は各種プロパティを持ったオブジェクト自体でありそれを面積とみなすのはおかしいと言うこと ToString()をoverrideして面積を出すも間違っている ToString()で出すのは 四角形 幅:3 高さ:4 面積:12 と言う各種情報
895 名前:デフォルトの名無しさん (ワッチョイ 3210-NBo5) [2023/07/18(火) 23:28:46.06 ID:HED9e7490.net] >>882 エスパー ありがとうございます。 square を 構造体にかえて 今までやりたかったことが解決しました。 >>883 ,>>884 ありがとうございます。 勉強になりました。
896 名前:デフォルトの名無しさん (ワッチョイ 52da-0QNR) mailto:sage [2023/07/19(水) 12:26:43.18 ID:DPJDdup00.net] Func<T, bool>を受け取る引数にPredicate<T>を渡せないのは何故でしょうか?
897 名前:デフォルトの名無しさん (ワッチョイ 4dc6-l/Dq) mailto:sage [2023/07/19(水) 13:17:55.70 ID:rfnRytk30.net] 型が違うから class Hoge { public string Piyo; } class Fuga { public string Piyo; } と同じメンバを持った2つのクラスがあっても void Test(Hoge hoge) { ... } にFugaを渡せないのと同じ
898 名前:デフォルトの名無しさん (ブーイモ MM69-IGBM) [2023/07/19(水) 13:33:43.83 ID:Iak4bgJxM.net] hoge(pred.Invoke)で渡せる
899 名前:デフォルトの名無しさん (ワッチョイ 52da-0QNR) mailto:sage [2023/07/19(水) 13:52:39.72 ID:DPJDdup00.net] なるほど。 Predicate<T>ってFunc<T, bool>のシンタックスシュガーかと勝手に勘違いしてましたが、完全に別の型ってことですね。 ありがとうございます
900 名前:デフォルトの名無しさん (ワッチョイ ce6e-rP6O) mailto:sage [2023/07/20(木) 19:04:03.42 ID:oZtgKOtx0.net] 非同期処理について質問です。業務でWPFいじってるんですけど 1 起動画面→2 起動画面表示してる間に重い処理とか色々→3 ログイン画面→4 メイン画面 という流れになっています。それで重い処理の部分がtask runになっていてあぁ非同期処理ってやつかと なんですがやたら起動画面が長いんです。デバッグしてみるとその重い処理が実行されてるとき他の処理は実行されてなくて 結局普通に1〜4が一直線に進んでるだけじゃない?と 自分の理解だと非同期ってその処理をどっか他の場所でやっといてもらってそれ以外は全部通常通りに流れると この場合だとたとえば3や4のウインドウが出る処理が進んでいってもその裏で重い処理をやってるみたいな 2の部分が短くなるから起動画面も当然短くなるはずだろ……と思ってたんですが 非同期ってそういうもんじゃないんでしょうか
901 名前:デフォルトの名無しさん (ワンミングク MM9b-Q4Hq) mailto:sage [2023/07/20(木) 20:07:28.14 ID:4+aEc/KWM.net] ただ固まらないように使ってるだけじゃないの
902 名前:デフォルトの名無しさん (スップ Sd00-m3tO) mailto:sage [2023/07/20(木) 20:07:31.46 ID:GDwei+myd.net] 2の重い処理でUIスレッドを使っていて、 3ログイン画面でもUIスレッドを使うので、 3のレンダリングが遅延しているのかも と、先生は仰っている
903 名前:デフォルトの名無しさん (ワッチョイ b6d6-2eqx) mailto:sage [2023/07/20(木) 20:29:02.94 ID:etRvguBb0.net] たぶん2の実行中に1が固まらない(アニメーションしたりマウス操作等に反応する)ようにしてるだけだな 2が完了したら3って仕様なんだろ
904 名前:デフォルトの名無しさん (ワッチョイ 56bd-rqn1) mailto:sage [2023/07/21(金) 00:30:10.37 ID:3tiQJRjE0.net] その重い処理というのは、ログイン画面やメイン画面までに完了させる必要のない処理なの?
905 名前:デフォルトの名無しさん (オイコラミネオ MM71-rqn1) mailto:sage [2023/07/21(金) 01:04:23.20 ID:i7pkSIZ0M.net] 普通だろ 2で初期化 それが終わらないとログインすらさせない 当たり前 非同期はいわゆる並列処理ではない 処理してる間にGUIが固まらないようにしてるだけで
906 名前:デフォルトの名無しさん (ワッチョイ 87e5-XQTJ) mailto:sage [2023/07/21(金) 08:46:35.27 ID:cgj6JgkV0.net] 起動時にまずスプラッシュ画面やら表示して裏で初期化処理ガーッとやってメイン画面が出てくるアプリケーション、ごまんとあるやろ
907 名前:デフォルトの名無しさん (オッペケ Src1-YWw1) mailto:sage [2023/07/21(金) 08:48:39.50 ID:EGVnYM7fr.net] 非同期処理って偉そうな名前ついてるけどUIが固まらないようにするためだけの存在なんだよな
908 名前:デフォルトの名無しさん (ブーイモ MMba-mCwd) [2023/07/21(金) 08:56:24.44 ID:eg4croCbM.net] 画面が固まってるかどうかってそんな大事なことか?
909 名前:デフォルトの名無しさん (ワッチョイ fe33-l/Dq) mailto:sage [2023/07/21(金) 09:12:44.39 ID:1a+dN6EZ0.net] ”応答なし”って表示されるかどうかは一般利用者にとっては大きな違い
910 名前:デフォルトの名無しさん (ラクッペペ MM34-+gOE) mailto:sage [2023/07/21(金) 09:46:52.31 ID:OOKalSboM.net] 改善したいなら「重い処理」を並列に 分解するぐらいかな? 対して変わらんどころか遅くなるだろうけど
911 名前:デフォルトの名無しさん (ブーイモ MM5e-IGBM) [2023/07/21(金) 11:29:51.89 ID:69ts+SDiM.net] 業務アプリでログイン画面表示前に終わらせないといけないやたらと時間のかかる重い処理ってどういうの? ゲームやJavaアプリではあるけどC#で作る業務アプリでは個人的には経験したことないんだけど ネットワーク経由で自動アップデートを走らせてるとか?
912 名前:デフォルトの名無しさん (ドコグロ MM36-fSYF) mailto:sage [2023/07/21(金) 14:42:23.96 ID:6vfbgTUNM.net] DBから必要なデータ落としてくるとかそういうのかな そこまで大量になるかどうかはものによる
913 名前:デフォルトの名無しさん (スップ Sd00-IoCj) mailto:sage [2023/07/21(金) 15:03:06.92 ID:6MAm8yaxd.net] コアモジュールのアップデート確認とか こういうのを下手にオンデマンド化すると不整合で死者が出たりするんだよ
914 名前:デフォルトの名無しさん (ブーイモ MMba-mCwd) [2023/07/21(金) 20:26:40.73 ID:eg4croCbM.net] >>901 そういうのならスプラッシュで長々と起動表示するより さっさと画面見せてプログレスバー出した方が良くね 端的にいうとエクリプスみたいなのは嫌い
915 名前:デフォルトの名無しさん (ワッチョイ 7f10-UJxk) mailto:sage [2023/07/22(土) 06:19:51.07 ID:/NYJ/E/k0.net] プログレスバー出してる間はツールバーやらメニューやら触れないように無効化しとくん? 見せてる意味なくない?
916 名前:デフォルトの名無しさん (ワッチョイ bf79-mRrB) mailto:sage [2023/07/22(土) 08:28:55.45 ID:a8PwsTyx0.net] 業務アプリで認証前に見せるもんなんて何かあんの逆に
917 名前:デフォルトの名無しさん (ワッチョイ 4742-pcwf) mailto:sage [2023/07/22(土) 10:35:33.60 ID:KOXik0Zr0.net] >>906 アプリの生存確認
918 名前:デフォルトの名無しさん (ワッチョイ 27e5-UJxk) mailto:sage [2023/07/22(土) 13:04:05.76 ID:UbHj5dt40.net] デスクトップのアイコンダブルクリックしたのになんも画面出て来なかったら 動いてるのか不安になるのがエンドユーザー
919 名前:デフォルトの名無しさん (ブーイモ MM8f-2YhC) [2023/07/22(土) 18:21:41.76 ID:k3sQ1muHM.net] そらWEBアプリが流行るわな とりあえず画面は出てくるしな
920 名前:デフォルトの名無しさん (ワッチョイ 5f2d-rRCM) mailto:sage [2023/07/22(土) 18:44:42.22 ID:oc8oPCaK0.net] こじ付け
921 名前:デフォルトの名無しさん (ワッチョイ bf79-mRrB) mailto:sage [2023/07/22(土) 18:46:25.02 ID:a8PwsTyx0.net] >>907 今時プログレスバー程度じゃアプリの生存確認にはならないかー
922 名前:デフォルトの名無しさん (ワッチョイ 275f-U6D6) mailto:sage [2023/07/22(土) 20:58:38.40 ID:+w7QyAXT0.net] 生存w
923 名前:デフォルトの名無しさん (ドコグロ MM9f-0mQ+) mailto:sage [2023/07/22(土) 21:08:30.62 ID:hYyrQzz7M.net] WEBアプリでもローディングあるやつあるけどな
924 名前:デフォルトの名無しさん (ワッチョイ 8780-jqln) mailto:sage [2023/07/23(日) 00:11:53.57 ID:NsW44b0o0.net] webview2の初期化でぐるぐるさせる
925 名前:デフォルトの名無しさん (ワッチョイ 7f10-UJxk) mailto:sage [2023/07/23(日) 06:35:51.66 ID:YwDu7rEL0.net] 出てるプログレスバーがなんのプログレスバーか理解できる使用者がどれほど居るか
926 名前:デフォルトの名無しさん (ワッチョイ 7f10-fN/z) mailto:sage [2023/07/23(日) 08:35:02.27 ID:E9NR74nn0.net] とりあえず動いとけばいい
927 名前:デフォルトの名無しさん (スッップ Sdff-cTWz) mailto:sage [2023/07/23(日) 21:00:26.02 ID:DI++90CVd.net] >>915 何のとか関係ないんだよね>>899 に書かれてる通り、 応答なしってなった場合にユーザーがアプリが固まったって思って不安になったり、 人によっては強制終了させたりすることを回避するのが目的でみな実装してると思うよ
928 名前:デフォルトの名無しさん (オイコラミネオ MM3b-nVDU) mailto:sage [2023/07/23(日) 23:04:58.70 ID:NQIlbLw0M.net] win11でwindows upadateの元データ読み込みの時間がかかったらタイトルバーで プログレスバー的なアニメーションが出る
929 名前:デフォルトの名無しさん (ワッチョイ bf79-mRrB) mailto:sage [2023/07/24(月) 00:09:50.17 ID:z5rdGXQY0.net] タイトルバーで糞判りづらいアニメーションされてもな
930 名前:デフォルトの名無しさん (ワッチョイ 7f10-UJxk) mailto:sage [2023/07/24(月) 06:55:49.96 ID:dpuUxo8K0.net] >>917 プログレスバー出す出さないと応答なしになるかどうかはイコールじゃねぇのよ
931 名前:デフォルトの名無しさん (スッップ Sdff-cTWz) mailto:sage [2023/07/24(月) 08:15:20.93 ID:WyKfXWoDd.net] >>920 もともとは>>890 から来てる話のつもりだけど 重たい処理を裏で実行させて画面は動いてます(応答なしになってません)ってのを ユーザーに伝えるためにプログレスバーだしてると思ってるんだが違うのか? 非同期でもなくプログレスバー出して進捗報告してるだけなら言ってる通りかもね
932 名前:デフォルトの名無しさん (ラクッペペ MM8f-La+E) mailto:sage [2023/07/24(月) 09:57:36.50 ID:suAy7pRCM.net] 10秒ならクルクルカーソルでいい 1分超えるならメッセージぐらい出そう 10分レベルだとプログレス必須 つまり非同期は10分超えのみでいい
933 名前:デフォルトの名無しさん (スッップ Sdff-cTWz) mailto:sage [2023/07/24(月) 11:10:30.20 ID:WyKfXWoDd.net] 大多数のユーザーが使う画面作ってないのかわからんけど 10秒程度で画面クリックしたら応答なしになるだけで文句いってくるところもあるからね 10分越えで非同期とかはぬるすぎ まあこの辺までくるとスレチな感じだから言い逃げになるけど自分はここまでにするわ
934 名前:デフォルトの名無しさん (ラクッペペ MM8f-La+E) mailto:sage [2023/07/24(月) 11:24:15.27 ID:suAy7pRCM.net] 苦情は「起動が遅い」だろ? 「応答するともっと遅くなりますよ」で返せばいい
935 名前:デフォルトの名無しさん (ワッチョイ 4742-pcwf) mailto:sage [2023/07/24(月) 11:26:52.53 ID:AUmI6Ec80.net] 他にもあると思うが、通信、I/O、DBは無条件で非同期や並行処理を意識して設計しないとな
936 名前:デフォルトの名無しさん (ラクッペペ MM8f-La+E) mailto:sage [2023/07/24(月) 11:30:21.52 ID:suAy7pRCM.net] 素人はそう考えるけど 待機中のユーザーが他の作業を出来ることは少ない というか待つだけだろ? つまり非同期は不要
937 名前:デフォルトの名無しさん (ワッチョイ a779-bG9n) mailto:sage [2023/07/24(月) 12:28:09.61 ID:b5WDI80O0.net] 5秒だか10秒だか 応答しないとOSにフリーズ判定されるでしょ
938 名前:デフォルトの名無しさん (ワッチョイ 27e5-UJxk) mailto:sage [2023/07/24(月) 12:48:04.14 ID:D6WZQL9B0.net] >>926 でもそれアナタの思い込みですよねw
939 名前:デフォルトの名無しさん (ワッチョイ 5f2d-rRCM) mailto:sage [2023/07/24(月) 13:26:28.55 ID:X1NMCpf40.net] 今時UIが長期間応答しなくなるのは低品質アプリの証 非同期処理が実装しやすいC#では特に
940 名前:デフォルトの名無しさん (ラクッペペ MM8f-La+E) mailto:sage [2023/07/24(月) 13:43:25.62 ID:suAy7pRCM.net] ギャラガでもさせるか?
941 名前:デフォルトの名無しさん (ワッチョイ 275f-U6D6) mailto:sage [2023/07/24(月) 14:00:15.94 ID:ixDNpyk/0.net] コナミ グラディウス バブルシステム起動画面 - YouTube https://youtu.be/dM-UCiUirj4
942 名前:デフォルトの名無しさん (ワッチョイ 7f10-UJxk) mailto:sage [2023/07/24(月) 22:19:22.23 ID:dpuUxo8K0.net] >>921 なんか盛大に勘違いしてた
943 名前:A忘れてくれ・・・ [] [ここ壊れてます]
944 名前:デフォルトの名無しさん (ワッチョイ cf68-6+wX) [2023/07/30(日) 13:16:32.79 ID:qP2cEP2w0.net] >>929 逆に聞きたいけど長時間応答するしかねえって事もあるんじゃないの? 意図的にそうしてるとか
945 名前:デフォルトの名無しさん (ワッチョイ cf68-6+wX) [2023/07/30(日) 13:16:34.66 ID:qP2cEP2w0.net] >>929 逆に聞きたいけど長時間応答するしかねえって事もあるんじゃないの? 意図的にそうしてるとか
946 名前:デフォルトの名無しさん (ワッチョイ b742-yh3V) mailto:sage [2023/07/30(日) 13:47:13.19 ID:JdhDrtL30.net] 手抜きか技術不足以外で長時間無応答を放置する理由はありません
947 名前:デフォルトの名無しさん (ワッチョイ cf68-6+wX) [2023/07/30(日) 13:54:56.32 ID:qP2cEP2w0.net] 実行中の処理に影響与えないように応答させないのって普通じゃね?
948 名前:デフォルトの名無しさん (ワッチョイ 3ebb-bWks) [2023/07/30(日) 14:13:33.41 ID:2ZbxDykr0.net] 非同期にするオーバヘッドがないぶん処理が早く終わるしな
949 名前:デフォルトの名無しさん (ラクッペペ MMe6-Fuds) mailto:sage [2023/07/30(日) 14:25:18.01 ID:IK2UEk/mM.net] 30年前のCPUか?
950 名前:デフォルトの名無しさん (ワッチョイ da2d-cK++) mailto:sage [2023/07/30(日) 15:29:45.06 ID:C8zYgP+u0.net] いつの発想だよ… UIと時間がかかる処理は別スレッドだし 今時のPCならオーバーヘッドは無いに等しいだろ
951 名前:デフォルトの名無しさん (ワッチョイ da2d-cK++) mailto:sage [2023/07/30(日) 15:32:39.03 ID:C8zYgP+u0.net] >>936 UIの制御は必要になるけど、それをしないのは手抜きってやつだ
952 名前:デフォルトの名無しさん (ワッチョイ dabd-TJCF) mailto:sage [2023/07/30(日) 15:39:50.10 ID:ceI/e8I50.net] >>936 UIがないアプリなら好きにしろ。 UIがあるならUIのお約束を守れ。守れないのは低品質アプリだ。
953 名前:デフォルトの名無しさん (ワッチョイ cf68-6+wX) mailto:sage [2023/07/30(日) 16:01:47.86 ID:qP2cEP2w0.net] で応答できないことの何が問題?
954 名前:デフォルトの名無しさん (ワッチョイ 26bc-0TAO) mailto:sage [2023/07/30(日) 18:57:09.57 ID:h72pV3U00.net] てゆーか、まだやってたんだ。 ある意味スゲー。
955 名前:デフォルトの名無しさん (ワッチョイ 8f2f-KN61) mailto:sage [2023/07/31(月) 02:48:28.98 ID:/pzquaKJ0.net] UIが無応答って状態を勘違いしてる気がする
956 名前:デフォルトの名無しさん (ワッチョイ 73e5-U0W2) mailto:sage [2023/07/31(月) 09:07:39.25 ID:kMCzvjpl0.net] まだやってたんだって言うか、1週間近く動きも無く終わったと思われてた話をバカが蒸し返しただけ
957 名前:デフォルトの名無しさん (スフッ Sd8a-kvF/) [2023/07/31(月) 13:17:06.46 ID:lng3H2OQd.net] >>942 応答出来ない=次に応答するのが計算が終わったタイミング と言うことになる つまり開始後中断したくてUI(例えば停止ボタン)押して 実際に止まるのが計算完了後で 計算結果が表示される直前に終了してくれるオマケ付き
958 名前:デフォルトの名無しさん (スッップ Sd8a-1j9t) mailto:sage [2023/07/31(月) 13:19:35.83 ID:xjBtNZZud.net] >>946 >>942 みたいな過去の遺物みたいなのにかかわらないほうがいいぞ 「そのうち返ってくるでしょ」みたいな考えのやからは一定数いるからな
959 名前:デフォルトの名無しさん (アウアウウー Sa1f-6+wX) mailto:sage [2023/07/31(月) 13:25:23.15 ID:sgBBFIN2a.net] 全然ecoじゃない SDGs連中が飛び付くネタ
960 名前:デフォルトの名無しさん (ワッチョイ becf-WE/L) mailto:sage [2023/08/01(火) 01:57:41.21 ID:l/YBSfNu0.net] https://atmarkit.itmedia.co.jp/ait/articles/1702/22/news010.html > Windows上で実行されるアプリケーションのウィンドウは、応答がない状態になると、 > ウィンドウタイトルに「(応答なし)」と表示してユーザーに知らせます。 > “応答がない状態”とは、アプリケーションのプロセスが持つウィンドウオブジェクトが > 「ウィンドウメッセージ(Window Message)」に5秒(既定)以上、応答しなくなる状態を指します。 こんなん出たんですけどとか言われたら恥ずかしいだろ
961 名前:デフォルトの名無しさん (スップ Sd2a-3oaK) mailto:sage [2023/08/01(火) 08:39:12.57 ID:NwjOuTDqd.net] そうやってOSが面倒見てくれてるし気にするな
962 名前:デフォルトの名無しさん (ワッチョイ 73e5-U0W2) mailto:sage [2023/08/01(火) 08:48:36.38 ID:jZPe7+0n0.net] 気にしろし
963 名前:デフォルトの名無しさん (ワッチョイ 0ba7-4FLK) mailto:sage [2023/08/01(火) 19:37:01.30 ID:EZnFv0QC0.net] 真のエコはシングルスレッド非同期 プログラミングコストは爆増するけどな
964 名前:デフォルトの名無しさん (ワッチョイ 2301-iCAU) [2023/08/01(火) 23:34:51.68 ID:MwS5ZIT40.net] 魔法の呪文DoEventsでおk
965 名前:デフォルトの名無しさん (ワッチョイ 8f7c-0u9z) mailto:sage [2023/08/02(水) 07:43:03.92 ID:MJ0E5XCG0.net] 進捗表示、キャンセルや一時停止を受け付けない設計はクソ。
966 名前:デフォルトの名無しさん (ワッチョイ 17ae-CF7t) mailto:sage [2023/08/03(木) 10:08:52.15 ID:icL6sh+90.net] シリアルポートからの送信を出来るだけ高速に受信したいのですが、下記以外に何かありますでしょうか? また高速化する方法がありましたら、指摘してください。 よろしくお願いします。 LinkedList<byte> LLBuffer = new LinkedList<byte>(); SerialPort sp = new SerialPort(); byte[] buf = Encoding.ASCII.GetBytes(sp.ReadExisting()); foreach(byte b in data) LLBuffer.AddLast(b);
967 名前:デフォルトの名無しさん (ワッチョイ 0ba7-4FLK) mailto:sage [2023/08/03(木) 11:06:07.21 ID:L6gOIzTH0.net] >>955 単なる生バイト配列が欲しいんだったらEncoding.ASCII.GetBytes(sp.ReadExisting())は二重に無駄な事してるから var buf = new byte[1024]; int count = sp.Read(buf, 0, buf.Length); for (int i = 0; i < count; ++i) LLBuffer.AddLast(buf[i]);
968 名前:デフォルトの名無しさん (ワッチョイ 17ae-CF7t) mailto:sage [2023/08/03(木) 11:41:09.07 ID:icL6sh+90.net] >>956 ありがとうございます。 現在は1024バイト固定で受信しているのですが、 sp.ReadBufferSize()で見ているとどんどんシリアルポートのバッファが溜まって頭打ちになっているので、 アプリ側で出来るだけ取得しておきたいと思い、sp.ReadExisting()の使用を検討しているところです。
969 名前:デフォルトの名無しさん (ワッチョイ 0ba7-4FLK) mailto:sage [2023/08/03(木) 12:22:33.04 ID:L6gOIzTH0.net] >>957 IOの方が早いなんてことは有り得ないからwhileで回すとかはしてる? 内部バッファが空の時にsp.Read(buf, 0, buf.Length)するとブロックされちゃうのかな そうじゃないならwhile ((count = sp.Read(buf, 0, buf.Length)) != 0)、 ブロックされるとしてそれが嫌ならsp.BytesToReadで溜まってるバイト数チェックやDataReceivedイベントで拾うとか
970 名前:デフォルトの名無しさん (スッップ Sd2f-YWx9) mailto:sage [2023/08/05(土) 10:43:10.90 ID:wvUeqD5zd.net] 誰も突っ込まないけどシリアル受信に間に合わないは普通にあり得るくね、
971 名前:デフォルトの名無しさん (ワッチョイ 9b2f-1PqA) mailto:sage [2023/08/05(土) 11:08:11.80 ID:6FXtwa520.net] シリアルってだけで実際のスピードもハードスペックもPCの使用状況も書いてないけど 個人的意見なら、いまどきのハードでC#で普通に作って間に合わんなんて、 他に何か原因がなければ想像できんレベルだが
972 名前:デフォルトの名無しさん (ワッチョイ 01c5-i02c) mailto:sage [2023/08/05(土) 11:37:11.83 ID:kMOIqdZr0.net] 同期9600bps を試しにやってみたまえ。 LANCとかやね
973 名前:デフォルトの名無しさん (ワッチョイ 9949-HLSB) mailto:sage [2023/08/05(土) 11:45:14.79 ID:29MU2LyY0.net] .NET7でnlogがあれやこれやしてもうんともすんとも言わないので おすすめのログのライブラリとかありまふか
974 名前:デフォルトの名無しさん (オイコラミネオ MMc9-1ro1) mailto:sage [2023/08/05(土) 14:09:41.96 ID:wQaB7TT9M.net] nugetのランキング上位にあるやつ使えるのでは?
975 名前:デフォルトの名無しさん (ワッチョイ 472d-SCbl) mailto:sage [2023/08/05(土) 15:32:52.86 ID:JFXqS/BH0.net] .NET7でNLog普通に使えてるけどなぁ ちょっと前のバージョン(5.1.4)だからか?
976 名前:デフォルトの名無しさん (ワッチョイ 472d-SCbl) mailto:sage [2023/08/05(土) 15:46:07.77 ID:JFXqS/BH0.net] nugetの最新(5.2.2)にしたけど使えてるな
977 名前:デフォルトの名無しさん (オイコラミネオ MMc9-1ro1) mailto:sage [2023/08/05(土) 16:15:39.59 ID:wQaB7TT9M.net] .NET7使ってるのが驚き
978 名前:デフォルトの名無しさん (ワッチョイ 4954-4gg4) mailto:sage [2023/08/06(日) 21:10:40.86 ID:t8XxdJlt0.net] その程度で驚くヤツはくるみぽんちおの刑だな。 うちの製品なんて、.net framework 1.1 使ってる製品もある。 しかも重要ユーザーからの要望があれば機能追加までしてる。
979 名前:デフォルトの名無しさん (ワッチョイ b310-jhPE) mailto:sage [2023/08/07(月) 07:41:51.88 ID:NZgbVHgQ0.net] XPで動かしてそう
980 名前:デフォルトの名無しさん (ワッチョイ 7be5-uQHI) mailto:sage [2023/08/07(月) 09:07:25.45 ID:TF3XFQ9V0.net] OSにしてもランタイムにしても、古いのずっと生き残ってるのあるあるだよな うちの顧客なんてVB6製アプリをXPで動かしてるとこまだあるしな……
981 名前:デフォルトの名無しさん (ワッチョイ 7be5-uQHI) mailto:sage [2023/08/07(月) 09:08:05.81 ID:TF3XFQ9V0.net] 流石にNT4はもう居なくなったけど
982 名前:デフォルトの名無しさん (ワッチョイ eb42-tyL0) mailto:sage [2023/08/07(月) 09:17:47.25 ID:82JZu0tI0.net] ニューテクノロジ4か 名前にニューって付けて年月経つと碌なことにならないな
983 名前:デフォルトの名無しさん (アウアウウー Sa9d-mBaV) [2023/08/07(月) 10:03:51.30 ID:wl/Lx6N5a.net] うめようず
984 名前:962 (ワッチョイ 9949-c/5M) mailto:sage [2023/08/07(月) 10:41:55.42 ID:NRD23MMX0.net] NLog動くようになった! コードで設定すると動く、でもConfigは反映されないからと色々やってたら 「出力ディレクトリをコピー」 「ビルドアクション」 を設定してないことに気づいた C#(てかVS)久しぶりすぎて各ファイルにあるプロパティの存在を忘れてたw
985 名前:デフォルトの名無しさん (スッププ Sd03-XWNR) mailto:sage [2023/08/07(月) 14:14:56.57 ID:MBhkVnR+d.net] ふぅ・・・例外握りつぶしてたぜ・・やっと不具合原因のとっかかり見つけた
986 名前:デフォルトの名無しさん (アウアウクッ MMf3-uQHI) mailto:sage [2023/08/07(月) 15:03:38.79 ID:A9F8fN0gM.net] byte high = 0xff;; bool flag = (high & 0b10000000) != 0; これをもっとC#っぽくできないの?
987 名前:デフォルトの名無しさん (ワッチョイ 472d-SCbl) mailto:sage [2023/08/07(月) 15:16:30.47 ID:gOyFWeUo0.net] >>975 フラグをenum定義したら [Flags] enum Hoge : byte { Flag0 = 1 << 0, Flag1 = 1 << 1, ... Flag7 = 1 << 7, } var high = ( Hoge )0xff; high.HasFlag( Hoge.Flag7 );
988 名前:デフォルトの名無しさん (ワッチョイ c379-IXit) mailto:sage [2023/08/07(月) 23:19:46.08 ID:4jmmvhVW0.net] enumに属性がなんか気持ち悪いし…使用時にキャストしてるのもなんだかな #defineが無い弊害がこういうとこで出るのか C/C++のビット演算はイディオムで綺麗に書けるのにな
989 名前:デフォルトの名無しさん (ワッチョイ 1bd6-SCbl) mailto:sage [2023/08/07(月) 23:34:33.91 ID:gDjmIGTi0.net] キャストが嫌なら、複数のフラグをORで連結すれば
990 名前:デフォルトの名無しさん (ワッチョイ 1bd6-SCbl) mailto:sage [2023/08/07(月) 23:44:21.58 ID:gDjmIGTi0.net] 途中で書き込んじゃった enumに↓を追加 All = Flag0 | Flag1 | Flag2 | Flag3 | Flag4 | Flag5 | Flag6 | Flag7, var high = Hoge.All;
991 名前:デフォルトの名無しさん (ワッチョイ 7be5-uQHI) mailto:sage [2023/08/08(火) 08:54:05.88 ID:aeM2XQJJ0.net] 個人的には、Flagsよりも定義でビットシフトしてるんがなんか嫌だなw >>975 でも十分C#っぽい気はするけどねぇ C/C++でif(high & 0x80)で済むのはBOOLの実体が数値だからで C#のboolは別物だからしょうがないし
992 名前:デフォルトの名無しさん (ワッチョイ 7be5-uQHI) mailto:sage [2023/08/08(火) 09:22:12.70 ID:aeM2XQJJ0.net] 次スレ ふらっと C#,C♯,C#(初心者用) Part159 https://mevius.5ch.net/test/read.cgi/tech/1691454079/
993 名前:デフォルトの名無しさん (アウアウクッ MMf3-uQHI) mailto:sage [2023/08/09(水) 09:18:17.06 ID:tGujvv4CM.net] このままでいい気がしてきた
994 名前:デフォルトの名無しさん (ワッチョイ 095f-SCbl) mailto:sage [2023/08/10(木) 00:40:12.02 ID:P/TzKPwA0.net] >>980 ビットシフトで定義するかは好みと慣れだな C言語でも見かけるし 一応、何ビット目かソース上ではっきりするってメリットがある
995 名前:デフォルトの名無しさん (ワッチョイ b310-uQHI) mailto:sage [2023/08/10(木) 07:11:54.17 ID:ao9yBEOh0.net] 何ビット目かって表現なら、それこそ>>975 の方がC#では普通になったんじゃない?
996 名前:デフォルトの名無しさん (ワッチョイ 2b6e-D1BR) mailto:sage [2023/08/11(金) 16:58:32.91 ID:JGKsK+J90.net] ラムダ式ってこうちょろちょろっとした処理を書くのに使うものであってでかい処理は関数定義するのが基本って認識だったんですけど間違ってますかね もう今のプロジェクトラムダ式渡すところで数十行の関数がガンガン出てきてて デバッグしにくいわかりにくいでげんなりしています。まぁこれに限らずそもそも表に出る機能単位でしか考えてないのか関数抽出するって考え方があんま無いみたいな現場なんですが……
997 名前:デフォルトの名無しさん (オイコラミネオ MMc9-uQHI) mailto:sage [2023/08/11(金) 18:07:32.18 ID:CXONK6kXM.net] >>985 どうとでもいえるけど基本的にはその使い方は特に間違ってはいないので認識が間違っていると思う 処理の委譲目的ならそれが普通かも 関数抽出しやすいなら関数を抽出する ローカル変数などに依存度が高いならそのまんま書いたほうがいい 設計がしっかりしてクラスを作ってそれを渡しあってるとかなら別だけどそんなことしてられないと思う
998 名前:デフォルトの名無しさん (ワッチョイ c379-IXit) mailto:sage [2023/08/11(金) 18:39:03.98 ID:I7dwFhkG0.net] デバッグしたいなら1処理ずつ分けて書き直しゃいいだろ C#のlambdaはdelegateの意味も暗黙に含んでるからそのものは削らない方がいいけど
999 名前:デフォルトの名無しさん (ワッチョイ b310-uQHI) mailto:sage [2023/08/11(金) 20:58:53.23 ID:0dzc0r6z0.net] 同じ処理を他でも使うならメソッド化した方がいいと思うけど、そこでしかやらないならラムダでかまわんと思うけどな 今やローカル関数なんてのもあるし
1000 名前:デフォルトの名無しさん (ワッチョイ 395f-17EC) [2023/08/19(土) 20:49:54.56 ID:UW3EkLqg0.net] closedxmlでセルに書き込み反映されない…なんで😭
1001 名前:デフォルトの名無しさん (アウアウエー Sa23-NwC7) [2023/08/20(日) 02:06:38.74 ID:RsoPGDy3a.net] jsonのテキストをデコードできる関数ないかな? htmlでいうところのHttpUtility.HtmlDecode()のjson文字列版 「https:\u002F\u002Fwww」を「https://www」に変換したい そんなの自作しろと言われたらそれまでだけど、あるならあるの使いたいので
1002 名前:デフォルトの名無しさん (アウアウエー Sa23-NwC7) mailto:sage [2023/08/20(日) 04:06:30.93 ID:RsoPGDy3a.net] Regex.Unescape()でいけるのかな
1003 名前:デフォルトの名無しさん (ワッチョイ 2b10-YAjS) mailto:sage [2023/08/20(日) 08:33:15.17 ID:OGvFjvg+0.net] ちょっと前にTwitterのデータ取得して遊んでた時はRegex.Unescapeでやってたけど
1004 名前:デフォルトの名無しさん (ワッチョイ db79-wKkg) mailto:sage [2023/08/20(日) 18:10:25.72 ID:Jez4Fpf50.net] そこで普通にjsonパーサ使おうと思わないの何でなん
1005 名前:デフォルトの名無しさん (ワッチョイ 2b10-YAjS) mailto:sage [2023/08/20(日) 18:37:23.62 ID:OGvFjvg+0.net] JsonNode.Parseでゲットした配列から取り出した文字列をRegex.Unescapeにかけたんだけどね
1006 名前:デフォルトの名無しさん (アウアウエー Sa23-NwC7) [2023/08/20(日) 19:12:02.03 ID:RsoPGDy3a.net] jsonがあるわけじゃなかったから 適当なclass用意して文字列をjsonの書式にフォーマットしてパースして取り出すって流れは気分的にやりたくなかった
1007 名前:デフォルトの名無しさん (ワッチョイ c9c6-H9aa) mailto:sage [2023/08/20(日) 20:06:30.57 ID:YUyQ4ipW0.net] "hoge"だけみたいな文字列も整形式のJSONだよ JsonSerializer.Deserialize<string>("\"hoge\""); 生の文字列なら前後に二重引用符付ける必要はあるだろうけど
1008 名前:デフォルトの名無しさん (アウアウエー Sa23-NwC7) [2023/08/20(日) 21:07:24.34 ID:RsoPGDy3a.net] 試したら動いた。stringクラス指定だけでできたのか。それは知らなかった
1009 名前:デフォルトの名無しさん (ワッチョイ 93e5-YAjS) mailto:sage [2023/08/21(月) 08:03:28.38 ID:Ndtw0dBa0.net] うめか
1010 名前:デフォルトの名無しさん (ワッチョイ 395f-4N9b) mailto:sage [2023/08/21(月) 14:43:41.77 ID:s1KrJzLF0.net] 質問いいですか?
1011 名前:デフォルトの名無しさん [2023/09/10(日) 08:25:05.15 ID:MWuSGE3eL] 世界最悪の殺人組織公明党強盗殺人の首魁斉藤鉄夫らテロリス├に乗っ取られた国土破壊省に天下り賄賂癒着しながら莫大な温室効果ガスに 騒音にコロナにとまき散らして気候変動させて日本どころか世界中で土砂崩れに洪水、暴風、猛暑、干ばつ、森林火災にと災害連発させて 大量虐殺してエネ価格に物価にと暴騰させて住民の生活を破壊して私腹を肥やしてるクソ公務員個人に徹底報復しよう! 東京都港区赤坂2-17-10がクソ議員宿舎なのは有名だが「省庁別宿舎 ─覧表」で検索すれば全国の公務員宿舎の位置が容易に確認て゛きるのて゛ 拡声器や、騒音バヰクで乗り付けてブァンブアンやりに出向いてやろう!もちろんカによる一方的な現状変更によって都心まで数珠つなぎで クソ航空機飛ばして閑静な住宅地だろうと航空騒音まみれにして生活に仕事にと公然と妨害してるこいつら利権害虫のことだから騒音なんて どうということはないんだろうし、航空騒音に比べれば屁みたいな騷音しか出せないだろうが.遠慮なく大騒音まき散らしに出向いてやろう! 政府という傘で好き放題やってる公務員には個人攻撃が有効!図書館やらて゛ブァンブアンやって税金泥棒利権を徹底的に壊滅させるのも正義! (羽田)ttΡs://www.call4.jP/info.Ρhρ?type=iТems&id=I0000062 , tΤps://haneda-Project.jimdofree.com/ (成田)ttps://n-souonhigaisosyoudan.amebaownd.com/ (テロ組織)ttps://i.imgur.com/hnli1ga.jpеg
1012 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています