C#

Windowsファイルパスを標準添付ライブラリで生成/パースする時の言語ごとの違い

Ruby 、 C# 、 Go の標準添付ライブラリで file:///c:\temp\doc.txt のようなパスを生成・パースした時の違いを示します。Ruby だけは標準ライブラリの仕様上少し手を加えてあげないと動きませんでした。そのあたり少しフェアじゃないかもしれません。 参考…

Microsoft 純正 Dependency Injection ライブラリ試してみた

C#

V-VM を Dependency Injection でつなげる例 using System; using System.Windows; using MessagePipe; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.DependencyInjection; namespace MessagePipeTest2 { public partial class App : Ap…

RSAのEncrypt/Decrypt で例外が出るときの対処

C#

要約 RSACryptoServiceProvider を使って Encrypt を呼び出した場合、文字列が長いと WindowsCryptographicException が出る。(Decryptの場合は CryptographicException) その場合は KeySize と パディングから最大長を割り出してそのサイズ以下でブロック化…

(C#) 並行処理キー入力まちプログラム

C#

参考サイト mslgt.hatenablog.com ポイント CancellationTokenSource() でトークン作成して、トークンからキャンセル用トークンを生成して、それをすべての非同期タスクで共有して、キャンセルが起きた時の処理をタスクに書くってとこ。 今回は WaitKeyTask …

10進数、16進数、8進数をコンボボックスで切り替えつつ入力チェックもしてくれる実装サンプル

あらすじ こんな感じのものを実装しました。 XAML

ジェネリックのキャスト

C#

ただの愚痴です。 なんしか、↓これがコンパイル通るのに実行時にキャストエラーになるのが納得いかない。 using System; using System.Collections.Generic; namespace GenericTest { class Program { private static void Fn1(object list) { foreach (var …