2024-01-01から1年間の記事一覧

C++でファイルに文字列を読み書きする(wofstream / wifstream)

C++

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと C++で、ファイルの読み書きをしたい。 が、FILE*とか、fopen()ではなく、新しいC++の方法でやりたい。 やったこと ifstream、ofstreamを使う。 実験コード #include <iostream> #include <fstream> #include <memory></memory></fstream></iostream>…

CsWin32でC#からWin32APIを使って、ウインドウを列挙し、そいつに好きなWindowsメッセージを送る

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 好きなウインドウに、好きなWindowsメッセージを送りたいということがあった。 (WM_CLOSEとか、そういうやつ) 以前こちらの記事で、好きなウインドウにWM_CLOSEを送るということをしたの…

nlohmann.jsonでjsonファイルをシリアライズ・デシリアライズする

C++

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと C++のアプリで、jsonを読みたい。 人に聞いたところによると、nlohmann.jsonというライブラリがよいらしい。やってみる。 やったこと 準備 VisualStudio2022で、C++のプロジェクトを作る…

Windowsの設定画面をURIで起動する

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと Windowsの設定画面でいつも迷子になるので、よく使う設定画面をショートカットにしたい。 URI一覧 下記のMS公式に、開けるページの一覧がある。 https://learn.microsoft.com/ja-jp/windo…

変数のコピーとstd::moveによる所有権の移動

C++

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと あるとき、下記のようなコードを書いた。 class MyClass { private: FILE* fp; public: MyClass() { _wfopen_s(&fp, L"C:\\Users\\masa\\Desktop\\a.txt", L"r"); } ~MyClass() { auto re…

C++のバックグラウンドプロセスの作り方

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 以前C#で、ウインドウが出ない、バックグラウンドアプリを作った。 https://qiita.com/tera1707/items/c48f13ea01c8615136cb 今回、C++でも同じように、ウインドウのないバックグラウンド…

新規ユーザー作成時に、指定のレジストリキーと値を設定しておきたい

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと Windowsのユーザーを新しくつくるときに、 作ったその新しいユーザーが、指定のレジストリキーと値を持った状態で出来てきてほしい。 そのユーザーの「HKCU」が、新しいユーザー作成時に…

バッチからレジストリに値を追加する(regコマンド)

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと レジストリエディタ(regedit)で、レジストリの値を追加したり変更したり、 regファイルを作成してレジストリの値を変更したりするのを以前やった。 今回は、バッチファイルからさっとレジ…

System.Threading.Timerのタイマーを使う

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと System.Threading.Timerのタイマーを使ってみる 使い方 基本はこれ System.Threading.Timer? threadingTimer; private void Button_Click_1(object sender, RoutedEventArgs e) { Debug.W…

System.Timers.Timerのタイマーを使う

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと C#で使えるタイマーにはいろいろあるらしい。 タイマーはかなりよく使うので今更とりたててなにかあるわけではないのだが、 なぜか毎回「どれを使えばいいんだったか?」となる。 動けば…

テスト中の障害発生時に調査を円滑に行うための準備と情報採取のためのバッチをつくる

やりたいこと Releaseビルドの正式リリース版のテスト時に、アプリクラッシュやその他もろもろの障害であたふたしないための準備 以前、正式版のテストで、テスターの方から なんかアプリがクラッシュするけど、再現しようとしてもなかなか再現しない。 テス…

Windowsの表示言語のインストールをバッチで行う

もくじ https://tera1707.com/entry/2022/02/06/144447 やったこと powershellのInstall-Language を使う。 また、バッチファイルをダブルクリックするだけで実行したいので、下記の過去記事を使う。 管理者権限がなかったらUAC昇格してから実行するバッチフ…

イベントログ(.evtx)を採取する

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 作成したwindowsアプリのユーザーテスト中に、クラッシュしたとか謎の動きをしたとかがよくある。 そのとき、まずはイベントログを見ようという話になるので、イベントログをさっと採取で…

PowerShellで取得した値をSelectする方法

もくじ https://tera1707.com/entry/2022/02/06/144447#PowerShell やりたいこと PowerShellで、たとえばGet-AppxPackageでパッケージアプリの情報をとりたいときに、 アプリ名とバージョンだけ欲しい場合に、Get-AppxPackageをそのまま打つと、情報量が多す…

バッチファイルの中でPowerShellのコマンドを実行する

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと バッチの中で、PowerShellのコマンドで取れる情報を取りたい。 具体的には、以前調べた、Get-AppxPackageでとれる、パッケージアプリのバージョンを取得したい。 やりかた powershell.exe…

ソリューションのテンプレートにTagを付ける

もくじ https://tera1707.com/entry/2022/02/06/144447 テンプレート関連記事 ソリューションのVisualStudioテンプレートを作る ソリューションのテンプレートにTagを付ける やりたいこと 前回、ソリューションのテンプレートを作って、新規slnを作ってのWin…

ソリューションのVisualStudioテンプレートを作る

もくじ https://tera1707.com/entry/2022/02/06/144447 テンプレート関連記事 ソリューションのVisualStudioテンプレートを作る ソリューションのテンプレートにTagを付ける やりたいこと WinUI3のアプリを開発するときに、本番をつくるまえにいろいろ実験し…

ワーカースレッドのコードに、UI部品を更新するコードを書く(WPF)

WPF

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと WinUI3で、ワーカースレッドのコードに、UI部品を更新するコードを書くということを以前した。 tera1707.com これと同じことをWPFでもしたい。 やりかた Dispatcher.Invoke メソッド もし…

SynchronizationContext の実験(+Dispatcher(WPF)の実験)

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと WInUI3/WPFで、ワーカースレッドの中に、メインスレッドでやってほしい処理(UIの更新など)を書きたいときはこうやる、というのを以前調べた。 tera1707.com tera1707.com それはそれでで…

.regファイルでレジストリキーと値をポンと登録する

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 以前、WER(Windows Error Reporting)を使って、ダンプを出力するということをした。 qiita.com WERでダンプを出すにはレジストリに設定を行うことが必要なのだが、手でやろうとすると、毎…

データベース「SQLite」を試す

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと ここで勉強させてもらった内容のメモ。 https://www.javadrive.jp/sqlite/ ツールダウンロード DBの練習のために必要なツールをダウンロードして、インストールする。 sqlite3 sqlite操作…

C#でxmlファイルを読み込む

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと Package.appxmanifestファイルを、C#から読み込んで、値を取得したい。 System.Xml.Linqというのを使うのが簡単そう。 learn.microsoft.com これを使って、やってみる。 読み込みたいPack…

デスクトップ・UWP・WinUIのウインドウを見分ける

C++

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 他人が作って自分のPCで動いているアプリのウインドウが、なにで出来ているのか(デスクトップアプリなのか、UWPなのか、WinUI3なのか)を知りたい。 以前、この記事で勉強した奴がほぼその…

SetupDi系APIでマイクやカメラのデバイスインスタンスパスを取る

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 最近、Windowsのドライバの情報を取得する方法を練習している。 ドライバ関連?の用語メモ devconの中身を見る①(cmdClasses) devconの中身を見る②(cmdListClass) devconの中身を見る③…

devconの中身を見る③(cmdHwIds)

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと devconで、 devcon hwids <ハードウェアID> devcon hwids =<クラス名> とパラメータを渡して実行したときの処理の中身を追いかけたい。 クラス名とは、devcon classesで取れるクラス名の…

Windowsの検索機能を使って、objとbinフォルダを全部消す

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと VisualStudioのプロジェクトをたくさん作っていると、 複数のソリューション、プロジェクトの中にobjやbinフォルダなどがたまってきて、すごく重くなることがある。 重い奴を一気に全部消…

ドライバ関連?の用語メモ

もくじ https://tera1707.com/entry/2022/02/06/144447 2024/3/7時点のドライバのイメージ図 https://github.com/tera1707/Siryou/blob/master/%E3%83%89%E3%83%A9%E3%82%A4%E3%83%90%E3%81%AE%E6%A7%8B%E6%88%90%E3%82%A4%E3%83%A1%E3%83%BC%E3%82%B8.xlsx …

devconの中身を見る②(cmdListClass)

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと devconで、 devcon listclass <クラス名> とパラメータを渡して実行したときの処理の中身を追いかけたい。 クラス名とは、devcon classesで取れるクラス名のこと。たとえはMouseなど。 出…

devconの中身を見る①(cmdClasses)

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと devconで、 devcon classes とパラメータを渡して実行したときの処理の中身を追いかけたい。 該当コード ここ。 https://github.com/microsoft/Windows-driver-samples/blob/b968cfbed556…

可変引数の関数を作る

C++

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 最近見たコードに「va_start」という、謎の関数?マクロ?が出てきた。 また、引数に「...」とか書いてある関数が出てきた。 どうもこれは、C++の引数を可変個取れる関数らしい。 使い方…