DateTime をミリ秒未満など指定した単位へ切り捨てや、10分単位など任意の単位へ丸める方法。
カテゴリ : C#
AssemblyInfo を AssemblyName, CustomAttribute, FileVersionInfo の3つの方法で取得します。
自分自身のアセンブリ情報と3種類のバージョン(アセンブリ・ファイル・製品)を取得します。
.NET Framework での記述を .NET Core SDK ベース csproj に置き換えて記述した比較です。
安心して使うには、0 は有効な値として使わず、None = 0、Default = 0 などと定義する。判定のHasFlag()は、.NET Core 2.1 から高速なので使い、それ以前ではビット演算で高速判定する。
Win 32 APIのFindFirstFileExを使用して実装します。Directoryクラスと同じような静的メソッドで実装するので、そのまま差し替えられます。
Collection<T>
は独自コレクションを実装する時に継承して使用します。Collection<T>
は内部でList<T>
を保持していますが、拡張できるように仮想メソッドが定義されています。
64bitのOSで起動している32bitアプリ(WOW64)から外部アプリ(任意のファイル)を起動する際に、WOW64のリダイレクトの影響を受けずずに正常に起動させる方法です。
cmd.exeを経由して外部アプリを起動するようにします。
AssemblyName, CustomAttribute, FileVersionInfo の3つの方法で取得します。
自分自身のアセンブリ情報と3つのバージョン(アセンブリ・ファイル・製品)を取得します。
拡張子やフォルダ名を指定して削除します。NuGetから取得したライブラリの不要なファイルを削除することを想定しています。
kernel32.dll(Win32API)、INIFileParser(NuGet)、独自実装(IniFile.cs)のパターンで取得します。
Windows Script Host(COM)
を使用して.lnkファイルの内容を取得します。
COMを参照設定する方法としない方法(リフレクション)で行います。