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

C# のビルドを高速化する

性能の良いSSDが手に入ったので、高速ビルドにチャレンジしてみました。 CPU:Intel Xeon E3-1280 V2 3.6GHz(8core) Memory:32GB(DDR3) HDD:Intel SSD 750(Read 2,200MB/s Write 900MB/s) ソースコード規模:総ステップ 16万行、実ステップ 7万行 MSBuildのオ…

Windows Server 2008 R2 で、エアロを有効にする

サーバーマネージャーから機能の追加で「デスクトップエクスペリエンス」を追加する。 管理ツール−サービスから「Theme」サービスを自動起動に設定する。 再起動する。

WCF入門-11 App.config以外のファイルからサービス構成を取得する

Sample SourceWCFServer.zip クライアント側は、app.configの場合は、clientbaseを使いますが、別のファイル(例えば、other.config)から設定を読み込む場合は使えません。 ConfigurationManager.OpenMappedExeConfigurationを使ってConfigファイルを読み込ん…

Lenovo E550で、Fnキーを押さなくてもFunctionキーを有効にする

Lenovoのサイトからダウンロードできるユーザーガイドに記載されています。Escキー+Fnキーを押す。成功するとFnキーのLEDが点灯するみたいです。

Windows 7 を ルーターにする

Windows 7 をルーター化するには以下のレジストリ設定を変更して、ルータ機能を有効にします。 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters IPEnableRouter REG_DWORD 1キーがない場合は追加します。レジストリ設定後にシステム…

C#でMethod全体を排他ロックする

javaのsynchronized相当の機能、c#では属性を指定します。 using System.Runtime.CompilerServices; [MethodImpl(MethodImplOptions.Synchronized)] public void SomeMethod() { // sync code }プロパティのget/setにも以下のように指定できます。 public in…

imageをbyte配列に変換する

private byte[] ImageToBinary(Image targetImage) { using (var mem = new MemoryStream()) { mem.Position = 0; targetImage.Save(mem, ImageFormat.Bmp); byte[] buffer = new byte[mem.Length]; mem.Position = 0; mem.Read(buffer, 0, (int)mem.Length)…

Dispatcherによる、UI更新

別スレッドによるUI更新は、invokeやpostmessageを使った更新遅延テクニックを使いますが、WPFで標準的に利用されているDispacherクラスを利用したUI更新を使うことができます。むしろ、今後はこの更新テクニックが主流であるといえます。Postmessageは役割…

img要素で読み込みに失敗した時に非表示にする。もしくは代替画像を表示する。

リンク切れなどでimg要素が表示できない場合の対応です。onerrorイベントハンドラを使用します。 非表示にする。 <img src="original.png" alt="title" onerror="this.style.display='none'"/> 代替画像を表示にする。 <img src="original.png" alt="title" onerror="this.src='/Images/alternate.png'"/>

XMLに設定する日付書式(ISO 8601)

XMLに日付データを設定するときに設定する日付書式です。 yyyy-MM-ddTHH:mm:sszzz以下の文字列が取得できます。 2015-01-03T10:35:46+09:00

postgresqlのpsqlコマンドラインオプション

C:\Program Files\PostgreSQL\9.4\bin>psql.exe --help psql は PostgreSQL の会話型ターミナルです。使用方法: psql [オプション]... [データベース名 [ユーザ名]]一般的なオプション: -c, --command=コマンド (SQLまたは内部の)単一コマンドを一つだけ実…

WCFの通信データサイズ制限を調整する。

WCFの受信サイズ制限は、既定で65536となっていて制限を越えた場合はSystem.ServiceModel.CommunicationExceptionが発生します。 System.ServiceModel.CommunicationException が発生しました。 HResult=-2146233087 Message=受信メッセージの最大メッセージ…

WCFでAddressAccessDeniedExceptionが発生する場合の対処方法

WCFのHost起動時に以下のメッセージが表示される場合があります。セキュリティ関連のチェックにかかったメッセージで、対処としては管理者で実行するか、実行するユーザに対して権限を与える必要があります。 System.ServiceModel.AddressAccessDeniedExcept…

特定のDBに依存しないデータアクセス方法(DbProviderFactories)

C#

C#で特定のDBに依存しないデータアクセスをする場合の実装方法です。例えば、Oracleに接続する場合はOracleConnectionを使うし、PostgreSqlに接続する場合はNpgSqlを使用すると思いますが、将来的に切り替えたりさまざまなプロジェクトで流用していこうとい…