タグ

2017年2月28日のブックマーク (2件)

  • のぶろぐ クリップボード使用時のCOMException

    あるWindows7PCで、クリップボードに文字列を保存するSystem.Windows.Clipboard.SetText() を実行すると、ほぼ必ずSystem.Runtime.InteropServices.COMException が発生するということがあった。 調べてみると、クリップボードを監視するアプリが別に存在する場合、遅延レンダリングでコピーしたデータをすぐにレンダリングすることを要求され、この様な事態になるらしい。 (なぜすぐにレンダリング要求するとイカンのか、疑問が残る説明ではあるが、ここではそれは置いておく。) 遅延レンダリングとは、大きいデータなどをクリップボードにコピーした場合などを想定した機能で、その場でクリップボード側へのデータコピーを行わず、リンクをコピーする様な仕組みだ。 実際にペーストする時には、要求メッセージに応じてデータを提供する義務が、コピーを行

  • 【C#】String.Splitをもっと使いやすくする拡張メソッド - コガネブログ

    はじめに 例えばCRLF(\r\n)の改行で区切られた文字列をString.Split関数で分割する場合 var src = "ピカチュウ\r\nカイリュー\r\nヤドラン"; // 1. エラー src.Split("\r\n"); // 2. OK src.Split(new []{ "\r\n" }, StringSplitOptions.None); 1のように文字列を引数で受け取るSplit関数がオーバーロードされていないので 2のように区切り文字を配列に変換して、さらにStringSplitOptionsを指定する必要があり 構文が冗長になってしまいます 対応方法 using System; /// <summary> /// string 型の拡張メソッドを管理するクラス /// </summary> public static partial class StringExt

    【C#】String.Splitをもっと使いやすくする拡張メソッド - コガネブログ
    rby
    rby 2017/02/28