"windows.h" は、16bit版 Windowsのヘッダファイルを多数インクルードしている。WIN32_LEAN_AND_MEAN
を define することで、32bitアプリには不要なヘッダファイルのインクルードを抑止してコンパイル時間を短縮できる。
「Windows」タグアーカイブ
[win] 参照しているNTPサーバを確認する
Windowsクライアントが参照しているNTP(時刻)サーバを確認する方法
1 |
C:\> w32tm /query /source |
コマンドプロンプトは「管理者」で起動すること。
[win] コピーコマンド
- copy
- xcopy
- robocopy
[NuGet] パッケージのインストール失敗
1 2 3 4 5 6 7 |
PM> Install-Package CommandLineParser Install-Package : 現在の環境には、開いているソリューションはありません。 発生場所 行:1 文字:1 + Install-Package CommandLineParser + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Install-Package]、InvalidOperationException + FullyQualifiedErrorId : NuGetNoActiveSolution,NuGet.PackageManagement.PowerShellCmdlets.InstallPackageCommand |
原因
ソリューション(*.sln)を開いていないため。
パッケージ(いわゆるライブラリ)はソリューション(実行ファイルをつくるためのソースコードや設定ファイル一式)に追加(インストール)するものであるから、ソリューションを開いていない状態ではパッケージはインストールできない。
[win] バッチファイルで文字列の取り出し
1 2 |
set MY_STRING="HELLO" echo %MY_STRING:~m,-n% |
行頭から数えてm文字目、行末から数えてn文字目の範囲を切り出す
[win] EXEと複数のDLLをマージして1ファイル化
Microsoft公式コマンドラインツール ILMerge
https://www.microsoft.com/en-us/download/details.aspx?id=17630 続きを読む
[win] バッチファイルで複数の結果(行)を扱う
1 2 3 4 5 6 |
setlocal set CMD=dir /B *.txt set FILENAME= for /f "usebackq delims=" %%a in (`%CMD%`) do set FILENAME=%%a echo %FILENAME% endlocal |
[win] バッチファイルの終了方法
1 |
exit 0 |
バッチファイルの中から再帰的に呼び出されていても、この行で強制的に終了する。呼出し元バッチファイルに処理は戻らない。
1 |
exit /B 0 |
該当するバッチファイルは終了するが呼出し元のバッチファイルに処理が戻って以降の処理を継続する。
[win] アセンブリ情報
Windowsの実行ファイルに埋め込まれる「タイトル」、「会社名」、「著作権」、「バージョン」等の情報
Visual Studio 2017 の C# プロジェクトでは Properties\AssemblyInfo.cs
に記述する
[win] POSIXのwhichに相当するコマンド
where
例
1 2 3 |
> where code C:\Program Files\Microsoft VS Code\bin\code C:\Program Files\Microsoft VS Code\bin\code.cmd |