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)をやったが、そのときコンストラクタで受けるクラスは、それぞれ別のインターフェースを実装するクラスだ…

[WinUI3] WinUI3で表を使うために、CommunityToolkit.WinUI.UI.Controls の DataGridを試す

WinUI3のDataGridで表を作りたい。 DataGridはWindows Community Toolkitに含まれている。(WinAppSDKの元にはない) https://github.com/CommunityToolkit/WindowsCommunityToolkit Windows Community Toolkitの7.1.2が、WinAppSDKの1.0をサポートしているら…

dotnetコマンドで.gitignoreを作成する

git

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 新しくgithubにリポジトリを作ったときに、.gitignoreがないので、コミットするときにいらないファイル(binフォルダやobjフォルダの中身など)がたくさん入ってしまうので、gitignoreを配…

XElementを使ってxmlファイルを読み込む

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと xmlファイルを読み込みたい。 具体的には、VisualStudioのC#(.net6)のプロジェクトファイル(.csproj)を読み込んで、中身の情報を見たい。 csprojのサンプルはこんな感じ。 <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>net6.0</TargetFramework> <ImplicitUsings>e</implicitusings></propertygroup></project>…

指定フォルダの中にある.特定の拡張子のファイルをリストUPする

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと Grepみたいな機能を作るために、指定した拡張子のファイルを、指定のフォルダの中から、子フォルダの中も含めて検索するような機能をつくりたい。 やりかた DirectoryInfoクラスのGetFile…

charmapでフォントファイル(.ttf)の中身を見る

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと フォントファイル(.ttf)の中にどんなフォントがあるのかと、その文字コードを知りたい。 やりかた charmap.exeを使う。 C:\Windows\System32の中にあるcharmap.exeを実行すると、下記のよ…

クラスのprivateなフィールド、プロパティの値を外から変えて、UnitTestする(.NET6)

もくじ https://tera1707.com/entry/2022/02/06/144447#UnitTest やりたいこと クラスの中で持っているprivateなフィールドやプロパティの値を外からいじって、そのクラスをユニットテストしたい。 以前、.NET6でprivateやinternalなメソッドを呼ぶ方法を調…

WinUI3アプリをローカライズする(ResourceDictionary使用)

WInUI3関連記事 https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと WinUI3アプリをローカライズしたい。 以前の記事で、MSのドキュメントをもとに、.reswを使ってローカライズをした。 WinUI3を手探りで使う中でローカライズをしたいときに…

UIの現在の表示言語設定をコードから変更する

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 以前の記事で、多言語対応のやり方を調べたが、 多言語対応の動作確認をするときに、実際にWindowsの言語の設定を変えてテストいようとすると、一度サインアウトしないといけなかったりし…

ResourceDictionaryでxamlの画面を多言語対応(ローカライズ)する

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 以前の記事で、WPFでPropertiesを使ってローカライズする方法を調べた。 今回、ResourceDictinaryを使ってローカライズする方法を知ったのでメモしておく。 やりかた 言語ごとのResourceD…

自作例外発生時に、VisualStudioの例外設定を使って止めてもらう

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 「例外設定」の画面で、例外が発生したときにVisualStudioでプログラムを止めてくれるように設定できるが、元々ある例外に対してしかその設定をしたことがなかった。自前で作った例外でも…

現在の言語の設定にかかわらず、指定した言語のリソースを取ってくる

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 以前の記事で、Windowsの言語設定に合わせてリソースを取得する方法を調べたが、今度は逆に、今現在のWindowsの言語設定によらず、固定である言語の(例えばなんの言語設定にしていても英…

Tailっぽくログを監視できるコマンド

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと ログファイルを、エディタで開かずに見たい、監視したいときに、以前バッチを使うやり方をメモしたが、もっとよさげなやり方を教えてもらったのでメモしておく。 やり方 pwoershellの cat…

WinUI3のコントロールのnupkgを作って使ったときに出てくる「.xbfがない」エラーの対応

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと WinUI3のUserControlを作って、それを複数のWinUI3アプリで共用したいなと思い、UserControlをdllにして、それをnupkgにして他アプリでも使えるようにしようとした。 いざ、UserControlを…

アプリの空き時間にキー入力を監視する

WPF

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと アプリで、キー入力を監視したい。 監視したいが、アプリの起動中、ずっとタイマー回しっぱなしでキー入力を監視し続けるのは、違う気がする。 なにか、良い方法ないか探してみる。 やっ…

Terrainを使って地形をつくる

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 3Dアクションゲーム的なものを作ってみたいので、3Dのフィールドをつくりたい。 やりかた Terrainを使って地形をつくる。 Terrain用アセットをインポートする WIndow > パッケージマネー…

Unityストアにある無料アセットを自分のプロジェクトで使う

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 3Dのアクションゲーム的なものをつくるときに、家とか木とかのオブジェクトを自分で作れる気がしないので、無料のアセットを取ってきて使いたい。 アセットを自分のUnityプロジェクトで使…

モノに力を加える

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと モノ同士が衝突したときに、片方をカキーンと跳ね返したい。 やりかた RigidBodyのAddForce()メソッドを使って、当たってきたモノに力を加えて跳ね返す。 https://docs.unity3d.com/ja/20…

モノとモノが当たったことの判定

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと モノとモノが当たったことを判定したい。 本当は当たった判定して、バットとボールのようにカキーンと跳ね返すようなことがしたいが、とりあえず判定だけしたい。 やりかた BoxColiderと…

物理法則を適用する

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 画面に追加したSphereを、重力に従ってポトンと落としたい。 やりかた RigidBodyのコンポーネントを付ける。 付けたいモノを選択して「Add Component」を押す。 「Rigid Body」を選択 こ…

gifアニメを作る

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと ブログを書く上で、簡単な動画で分かりやすくメモするために、gifアニメを使いたい。 やり方 下記のようなやり方でやってみた。 手順 xboxゲームバーで動画をとる 録画したいウインドウを…

NLogでログをとる

C#

やりたいこと 以前、自前でログを取るためのクラスを作ったりしたが、マルチスレッドの場合に同時に書き込んだりすると落ちるなど、問題があった。 頑張って自分で作るのもいいが、世の中には便利なログ取りライブラリがある様子。 最近NLogというのに触れる…

1つのexeから、同じnugetパッケージの複数バージョンを切り替えて使いたい

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと nugetで参照するあるパッケージ(ライブラリ)の異なるバージョンを、一つのexeから切り替えてつかいたい。 基本、一つのexeでnugetで参照できる1つのパッケージの複数のバージョンを同時に…

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

C#

パイプ関連記事 もくじ https://tera1707.com/entry/2022/02/06/144447#Pipe やりたいこと 以前の記事で勉強した、プロセス間通信につかう「パイプ」のためのサンプルプログラムを改良したい。 (というか、元のサンプルプログラムがいろいろまずそうだったの…

WinUI3のコントロールの標準style(generic.xaml)のありか

もくじ https://tera1707.com/entry/2022/02/06/144447/WinUI3 やりたいこと WinUI3で「標準のコントロールのstyleやテンプレート」を取ってくるために、以前、下記の記事で、generic.xamlを取ってくればいいということを調べた。 コントロールのマウスオー…

WinUI3で最小ウインドウサイズを指定する

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと WPFとかでよくやっていた、ウインドウサイズをこれ以上小さくできないようにしたい、ということをWinUI3でもやりたい。 が、ぱっと調べただけでは、WinUI3の標準のやり方でそうい…

自分がよく使いそうなPoweShellコマンド早見表

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと WinUI3のアプリを作っているが、よく実装の実験のためにパッケージするタイプのWinUI3アプリを新規で作ってお試し実装することがあるのだが、それをやると、自分のPCに、実験用アプリがた…

WinUI3アプリのウインドウの大きさや位置が変化したイベントと、変化したときの大きさや位置の値を取りたい

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと WInUI3アプリのウインドウの、大きさや位置が変化したイベントと、変化したときの大きさや位置の値を取りたい。 前提 VisualStudio2022 Community 17.3.0 WinUI3 と パッケージプ…

WinUI3アプリのウインドウのタイトルバーを消す

もくじ https://tera1707.com/entry/2022/02/06/144447#WinUI3 やりたいこと WInUI3アプリのウインドウの、タイトルバーをなくしたい。 前提 VisualStudio2022 Community 17.3.0 WinUI3 と パッケージプロジェクト Windows App SDK 1.1.3 やりかた Overlappe…