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


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

ふらっと C#,C♯,C#(初心者用) Part158



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

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 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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