リトライ処理をまとめる

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと アプリを作る中で、 「あるメソッドを実行したときに、例外がスローされたら数回リトライしたい」 「数回リトライしてもまだ例外スローするならあきらめて処理継続したい」 というような…

指定exeのウインドウにWM_CLOSEを投げる

C++

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと アプリのデバッグで、特定のウインドウメッセージ(WM_XXXXX)を受け取ったときの動作を見たいときがあった。 Windowsサービスのプログラムだと、以前の記事で調べたように、sc controlコマ…

名前付きパイプでプロセス間の双方向通信を行う(最終版)

C#

パイプ関連記事 もくじ https://tera1707.com/entry/2022/02/06/144447#Pipe やりたいこと 以前の記事で、パイプの受信用タスクがキャンセルできるようにした。 どうせ閉じるなら、DisposableにしてDisposeしたときに勝手にキャンセルするようにしたい。また…

名前付きパイプでプロセス間の双方向通信を行う(さらに改良版)

C#

パイプ関連記事 もくじ https://tera1707.com/entry/2022/02/06/144447#Pipe やりたいこと 以前の記事で、プロセス間通信のためのパイプ通信を少し改良した。 が、前回のものはまだパイプ受信スレッドを立ち上げると、その後終了ができなかったりまだ改良の…

Taskのキャンセルのしかた その2

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 以前の自分の記事で、Taskのキャンセルの仕方を調べた。 そこで、なんとなくキャンセルの仕方がわかったのだが、下記の記事を拝見して、さらに便利にキャンセルする方法があると知った。 …

管理者権限で別のプロセスを起動する

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 自分のアプリから、別のexeを管理者で起動したい。 やりかた ProcessクラスのItartInfoのVerbを"RunAs"にする。 またその際、UseShellExecuteをtrueにして、そのプロセスをStartする。 そ…

Taskのキャンセルのしかた

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと タスクの中で行っている処理を、キャンセルしたい。 また、以前の記事で、タスクの状態遷移を調べたときに、 下表の中のCanceled(6)とFaulted(7)が、どういう状態なのかがよくわから…

Taskの状態遷移

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと タスクは、作ったり動かしたり、キャンセルしたりで、いろいろ状態が変化する。 その変化を試したときのメモ。 下記のような状態があるらしい。 https://learn.microsoft.com/en-us/dotne…

csprojに条件式を書いて、nugetパッケージを参照したりしなかったりを切り替える

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと Moqというnugetパッケージを使っているのだが、 そのMoqのパッケージについて、条件を付けて、 通常時は、Moqを参照しない 条件付きコンパイルシンボルに特定の文字列を書いたときだけ、M…

バッチで取得できる、特殊フォルダのパスの一覧を出す(setコマンド)

バッチ関連もくじ https://tera1707.com/entry/2022/02/06/144447#BatCommand やりたいこと Windowsのバッチファイルの中で、今ログイン中のユーザーのフォルダ(C:\Users\ユーザー名\のような)に、ファイルをコピーなどしたいことがあった。 C#やC++で、特殊…

アセンブラ命令

もくじ https://tera1707.com/entry/2022/02/06/144447 ダンプ関連記事 https://tera1707.com/entry/2022/02/06/144447#WindowsDump やりたいこと 以前の記事で、WinDBGで.NETアプリのクラッシュダンプを解析したが、 そのときにアセンブラを見ないといけな…

.NET向けWinDBGコマンド

もくじ https://tera1707.com/entry/2022/02/06/144447 ダンプ関連記事 https://tera1707.com/entry/2022/02/06/144447#WindowsDump やりたいこと .NETアプリをWinDBGでデバッグしたい。 だいぶ昔から、WinDBGは達人向けツールというイメージがあり、手を出…

.NETアプリのクラッシュダンプをイベントビューアとWinDBGで解析する

ダンプ/デバッグ関連記事 https://tera1707.com/entry/2022/02/06/144447#WindowsDump やりたいこと .NET6(C#)で作ったアプリについて、 アプリがクラッシュした(落ちた)ときに採取したダンプファイルを、 WinDBGを使って解析して、 自分のコードのどこでな…

WinUI3/WPFプロジェクトに持っている言語リソースと、OSの表示言語設定、表示言語優先順位の関係のまとめ

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 以前書いた下記の記事で調べた内容をまとめたい。 https://tera1707.com/entry/2023/03/16/222146 前提 .NET6 WindowsAppSDK 1.2.221109.1 結果 resw方式は、言語の優先順位が1位の言語で…

【CPU負荷計測】WindowsPerformanceRecorder(CLI版WPR)でデータ採取しWindowsPerformanceAnalyzer(WPA)で解析する

負荷計測系記事 https://tera1707.com/entry/2022/02/06/144447#Profile やりたいこと 以前、WPRのUIがある版でCPU使用率のログを取ったが、 WPRのCLI版でもできるらしいのでやってみる。 前提 Win11 home 22H2 22621.1413 やったこと(とりあえずデータをと…

画像ファイルのローカライズ(言語により勝手に画像を切り替えてもらう)(ms-appx:)

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと こういうプロジェクト構成をしているときに、 Imagesフォルダの下の言語毎のフォルダ(ruとかdeとか)の下にある画像を表示させるこういうxamlを書くと、 <Image Source="ms-appx:///Images/myimage.bmp" Width="100" Height="100"/> なぜか、勝手にいい感じに画像を</image>…

【CPU負荷計測】VisualStudioパフォーマンスプロファイラでデータ採取と解析する

負荷計測系記事もくじ https://tera1707.com/entry/2022/02/06/144447#Profile 内容 この動画を見て学んだことのメモ。 Performance Profiling | CPU Usage Tool www.youtube.com 前提 VisualStudio2022 とそのツール群を使用。 VisualStudio 2022 17.4.4 学…

WindowsアプリのCPU負荷の計測をする方法をしらべる

負荷計測系記事もくじ https://tera1707.com/entry/2022/02/06/144447#Profile 内容 この動画を見て学んだことのメモ。 Performance Profiling | Part 1 An Introduction www.youtube.com Performance Profiling | Part 2: Choosing the right tool www.yout…

【CPU負荷計測】VS diagnostics.exeでデータ採取しVisualStudioで解析する

負荷計測系記事もくじ https://tera1707.com/entry/2022/02/06/144447#Profile 内容 この動画を見て学んだことのメモ。 Performance with Profiling Part 3: Profiling and Production www.youtube.com 前提 VisualStudio2022 とそのツール群を使用。 Visual…

WinUI3プロジェクトに持っている言語リソースと、appmanifestの中の言語リソース設定、OSの表示言語設定の関係の実験

もくじ https://tera1707.com/entry/2022/02/06/144447 下のような問題に当たったので、いろいろ試したときのメモ。 ローカライズのやり方で、OSで同じ言語設定をしてても動きが違うことがある WPFとWinUI3で、ローカライズを以前やった。 ①WinUI3で、文字列…

WinUI3で、OSの言語設定を変更せずに、コードから使う言語を変更する

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 以前の記事で、.reswファイルを作成して、WinUI3をローカライズする方法を調べた。 そこでローカライズした後、画面上の文言が翻訳できているか、OSの言語設定を変えて動作確認していたの…

【CPU負荷計測】WindowsPerformanceRecorderUI(WPRUI)でデータ採取しWindowsPerformanceAnalyzer(WPA)で解析する

負荷計測系記事もくじ https://tera1707.com/entry/2022/02/06/144447#Profile やりたいこと 自分の作ったアプリのCPU使用率のログを取って、変にCPUを食ったりしてないか、テストしたい。 やったこと Windows Performance Recorder で、CPU使用率のログをと…

WPFでPropertiesでxamlの画面を多言語対応(ローカライズ)する(.NET6版)

もくじ https://qiita.com/tera1707/items/4fda73d86eded283ec4f やりたいこと 以前.NET FrameworkのWPFで、画面のローカライズを行った。 https://qiita.com/tera1707/items/fb6570f3894a607f9dce その時のやり方と、.NET6でのWPFで、微妙にやり方に違いが…

Windowsサービスに、独自のサービスコントロール(SC)を送る

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 以前の記事で、サービスを作ったのだが、 SERVICE_CONTROL_PAUSEやSERVICE_CONTROL_STOPなどの元からあるサービスコントロールではなく、 自分で定義した独自のSCを受け付けたい。 とりあ…

ほうれん草のごまあえ

完成図 作り方 ほうれんそう洗う 2cmくらいにざくざく切る 30秒くらい茹でる ざるにあけて、みずで冷やす 水をしぼって、ボウルにあける めんつゆを入れる(もったいなくないくらい入れて、味ついてたら良し) 砂糖、ほんの少しだけ入れる(こさじ1くらい?) …

タイトルバーで右クリックして出てくるコンテキストメニューから一部項目を消す(Winui3のタイトルバーを右クリックしたときのコンテキストメニューのバグ対応)

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと 以前、WinUI3のウインドウを最大化できないようにしたくて、下記ページでOverlappedPresenterを使って実現した。 そこでは、最大化ボタンを無効表示にできていた。 https://tera17…

ピーマンツナ炒め

完成図 作り方 ピーマン小4個洗ってタネ取る ピーマン切る フライパンにごま油ちょっと入れる 先にピーマン炒める 後からノンオイルツナ1缶いれて炒める おわり

菜の花のおひたし

完成図 作り方 水で洗う 1分くらい茹でる ざるにあけて、冷たくなるまで水で冷やす 2cmくらいに切る 皿に入れて、めんつゆを大さじ2杯くらいかけてまぜる ゴマあったらかける おわり

Windowsサービスで発生するエラーのメモ

目次 https://tera1707.com/entry/2022/02/06/144447#WindowsService やりたいこと 以前、C++のサービスの作り方を調べて、サンプルを作った。 サービスの処理の中で、Windowsのルール、お作法に従えていないときなどには、Windowsのイベントビューアにいろ…

DIでServiceCollectionに同じInterfaceのクラスを複数登録する

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 以前の記事で、Ioc と ServiceCollection を使って、DI(Dependency Injection)をやったが、そのときコンストラクタで受けるクラスは、それぞれ別のインターフェースを実装するクラスだ…