読者です 読者をやめる 読者になる 読者になる

ぽにょろん

思いついたこととメモ

2016年の振り返りなど

特に恒例でもないですが、折角なので振り返りエントリでも。 すっかり幾日か経ってはいますが。 目次 目次 2016年 ブログ 2017年 2016年 個人的に色んな経験が出来た年だったと思います。 半年以上無職な生活を送りまして、怠惰な毎日を楽しく過ごしてました…

C91でFirebird Embeddedの記事を寄稿した本が出ます

気が付いたら本を作ることになっていたので、その宣伝です。 目次 目次 同人誌作りました 私の記事 1日目西み23a 同人誌作りました 昨年から、栃木県宇都宮市を中心に活動する「でがらし会」なるものに参加しているのですが、 C91で同人誌を出すことになりま…

C#でFirebirdのストアドを書く

本エントリは、Firebird AdventCalender 2016 の14日目です。 今回は、Firebirdの.NET ProviderのコミッターであるJiri Cincura氏がブログで公開している、FbNetExternalEngineについて書きます。 目次 目次 FbNetExternalEngineってなに? 簡単な例 実装 検…

HTML5 CONFERENCE 2016 に参加してきた

HTML5 CONFERENCE 2016 に参加してきました。 参加時と後から録画をちらっと見たメモを記載しておきます。 公式HP events.html5j.org YouTube - ライブ配信録画 www.youtube.com 目次 目次 基調講演 中村さん 及川さん ブラウザ用のCPUをつくるよ!WebAssemb…

FAManagementStudioなるものを作ってます

以前からFirebird Embedded用のGUIツールを作成、公開しています。 名前は「FAManagementStudio」です。 github.com その宣伝記事になります。 目次 目次 背景 ツールの概要 詳しい使い方 開発環境 最後に 背景 Firebird Embeddedを以前から使っていたのです…

WPFでRadioButtonにEnumをBindする

目次 目次 環境 実現したいこと 実装の方針 実装 Converter VMとEnum View 環境 C# + WPF .NET Framwork4.5.2 実現したいこと RadioButtonにViewModelのプロパティ値(Enum)をBindする。 実装の方針 各RadioButtonのIsCheckedにEmun値をバインドさせる。 Conv…

Firebird .NETProviderで実行計画を取得する

目次 目次 環境 実装 実行計画の見方 環境 C# Firebird .NET Data Provider 実装 FBCommandクラスにCommandPlanメソッドがあるので、それを呼び出すだけです。 using (var con = new FbConnection("接続文字列")) using (var command = con.CreateCommand())…

Firebirdでテーブル状態に合わせてINSERTとUPDATEを実行する

実は過去に、こんな記事を書いていました。 ponyoth.hateblo.jp 上記のFirebird版になります。 データ更新の際に、すでに該当行があればUPDATE、なければINSERTする単純な例です。 ただし、Firebirdには「UPDATE OR INSERT」という構文があります。 そのため…

AvalonEditをTabControlでつかう

自作ツールのTabControlのContentにAvalonEditを導入しようとしたところ、 思いの外苦戦したので記録しておきます。 目次 目次 環境 問題点 解決 環境 C# (.NET Framwork 3.5) WPF VS2015 AvalonEdit version="5.0.3" 問題点 TabControlでTabを切り替えた時…

AvalonEditを使って、SQL文にSyntaxHighlightつけたい

自作ツールにFirebirdのSQL文を入力した際に、SyntaxHighlightできるようにしたい! ということで、AvalonEditを使ってみました。 目次 目次 環境 AvalonEditとは 実装 ライブラリの取得 エディタの配置 SyntaxHighlight の設定 SyntaxHighlight のカスタマ…

ADO.NET provider 5.0.0.0 が出てた

FB3対応の「ADO.NET provider 5.0.0.0」がリリースされてました。 ADO.NET provider 5.0.0.0 for Firebird is ready | Jiří {x2} Činčura Release Notes - .NET Data provider - Version 5.0.0.0 - Text format - Firebird RDBMS Issue Tracker これで自前ビ…

同一プログラムからFirebird2.5と3.0のDBにアクセスしたい

同一プログラムからFB3とFB2.5にアクセスするシナリオを考え、サンプルを作ってみました。 目次 目次 環境 課題 ODSバージョンの取得 structを使うパターン 必要なところだけ変換 比較 FB3とFB2.5の共存 解決 環境 C# (.NET Framwork 4.5.2) VS2015 Firebird…

C#+FirebirdでExeの終了が遅かった件がFB3では再現しなくなっていた

以前記事にした以下の件、Firebird3.0で置き換え試したところ、 再現しなくなっていました。 ponyoth.hateblo.jp ponyoth.hateblo.jp Firebird2.5特有の問題なのか、Firebird3.0での修正に伴い解消されたのか。 謎ですが、一安心。

Firebird3.0でEmbedded試してみた

昨日(4月19日)、Firebird3.0(以下FB3)が正式にReleaseされました。 www.firebirdsql.org せっかくなので、FB3でのEmbedded接続を試してみました。 C#です。 目次 目次 今回試した環境 FB2.5からの大きな変更点 Firebirdのバイナリを取得 必要なDLLをコピー …

Firebirdのシステムデータにアクセスしたい場合

DBを扱うプログラムを書く際に、テーブルやカラム、インデックスやトリガー等の一覧を取得したい場合がありませんか? 何かと検索しているので、Firebirdの場合をメモしておきます。 目次 目次 環境 .NET Provider使う場合 各スキーマの引数一覧 SQLを自力で…

Nano Server 試してみた。(Windows Server 2016 TP4)

以前からちょこちょこっと試してはいたのですが、先日のComCampで刺激を受けたこともあり、手順を残しておきます。 目次 目次 NanoServerとは 個人的な目的 事前準備 作成 困ったこと NanoServerとは 「プライベートクラウドやデータセンターでホストするの…

Tokyo ComCamp 2016 powered by MVPsに参加してきた

2月20日にTokyo ComCamp 2016 powered by MVPsに参加してきました。 全体的にAzureなセッションが多かったかなと。 東京以外の会場でも面白そうなセッションがあったので、配信を見るという手もあったかな。 天気悪かったせいか、会場は結構空いてましたね。…

WebRTC Conference Japan に参加してきた

WebRTCについては、ネットでちらっと調べたことあるくらいなもので使った経験もないまま参加してきました。 CodeIQさんの↓これで入場チケット頂いたというのがきっかけですね。 codeiq.jp 感想 特に1日目に関してはとにかく英語!英語!英語!って打ちのめさ…

2015年の振り返り

良い機会なので今年を振り返っておきます。 目次 目次 ブログ始めました 仕事 退職します 来年 ブログ始めました 一念発起して、ブログ始めてみました。 最初の頃は何とか更新していたのですが、年末に向かうにしたがって更新をサボってしまった(笑) ただ、…

c#からFirebirdのDBにアクセスした後、Exeの終了が遅い。その2。

Firebird Embeddedを使用した後、プロセスの終了が遅い件ですが、 その後色々調べたところ、似たような件で悩んでいる人はいるようでした。 stackoverflow.com ただ、解決にはいたっていないようです。 試しに FbConnection.ClearAllPools() がどれくらい効…

c#からFirebirdのDBにアクセスした後、Exeの終了が遅い

c#からFirebirdのDBにアクセスした後のExeの終了が遅いということがありまして、少し調べてみました。 結論が正しいのかわかりませんがメモとして残しておきます。 ※検証甘いです。 環境 現象 分析 解決策(??) 環境 Firebird Embedded 2.5.4 FirebirdSql.Dat…

.NET Framework 4.5.2 でXmlReaderのDTD読み込みの挙動が変わっていた

以前、少しはまってしまったので、メモしておきます。 先に解決策書いておくと、ちゃんとXmlResolverのインスタンス作成しておきましょう!です。 問題点 解決 ソースサンプル 問題点 TargetFramworkを4から4.6に上げた際に、DTDの外部実体参照が読み込まれ…

Postfix, Dovecotのversionを取得する

そう何度もやるもんじゃないので、version確認する方法をメモ。 CentOSの場合 Postfixの場合 Dovecotの場合 CentOSの場合 よく使うのはCentOSなので、ついでに記載。 cat /etc/redhat-release >>> CentOS Linux release 7.2.1503(Core) Postfixの場合 postco…

CentOS7でテスト用のメールサーバーを立てる

仕事でプログラムからMail送信する機能があったため、テスト用のメールサーバー立てました。 手順を残しておきたかったので、メモしておきます。 公開するような設定にはなっていないです。 検証環境 postfix Install postfix Settings /etc/postfix/main.cf…

c# で default(T) した時の値

default(string) が Null なのをよく忘れるので、 default(T) の値をまとめてみました。 class Program { static void Main(string[] args) { $@"dyte: {default(byte)}".Dump(); //0 $@"sbyte: {default(sbyte)}".Dump(); //0 $@"int: {default(int)}".Dump…

分散トランザクション(MSDTC)の設定をする

基本的に一度しかやらない設定なため、新マシンだと大抵引っかかるので簡単にまとめてみました。 PowerShellでの設定です。 検証環境 Windows10 PSVersion 5 分散トランザクション(MSDTC)とは 簡単には複数のDBにトランザクションを張るみたいなものですかね…

T-SQLでOUTPUT句を使う

OUTPUT句って結構便利だと思っているんですが、そうそう使わないこともあってなかなか覚えられないorz そんなわけでサンプルを書いてみました。 まずは書き方 何はともあれ、MSDN参照しましょう。 OUTPUT 句 (Transact-SQL) SQLServer2005から使えるようです…

権限昇格したプログラムからネットワークドライブが参照できない

UACが導入されて以降、権限昇格したプログラムからネットワークドライブが参照できなくて困ったことが何度かあります。 マシンを入れ替えるたびにあれ、なんだっけとなっていたのでメモとして残しておきます。 そもそも Some Programs Cannot Access Network…

Dismで.NET Framwork3.5(2.0/3.0)をインストールする

ちょっと試す機会があったので、やってみました。 Windows8やWindows10では、.NET Framwork3.5以前は無効の状態が初期状態なので、必要に応じて有効にする必要があります。 普通にDismでコマンド投げてあげればよさそうです。 .NET Framwork3.5のインストー…

C#でファイルのウイルスチェックをする

C#

最近、ファイルのウイルスチェックをコードでやりたいといった会話をしたので、少し調べてみました。 結果、IAttachmentExecuteなるものを利用するとやりたいことが出来そうということが分かりました。 IAttachmentExecute interface (Windows) 必要な定義は…

C#でFirebird Embedded を使う。

仕事の関係でFirebird Embeddedを使用することが増えたので、C#からのアクセスを試してみました。 用意する環境 Firebird ADO.NET Data Provider Firebird Embedded fbembed.dll ib_util.dll icudt30.dll icuin30.dll icuuc30.dll Firebird ADO.NET Data Pro…

SQL ServerでMERGEを使ってINSERTとUPDATEを実行する

データベースへのデータ更新の際に、すでに該当行があればUPDATEし、なければINSERTするというシチュエーションはあると思います。 過去に参加したプロジェクトでは以下のような手法を見かけました。 ・UPDATEを先にかけて、affectedな行が0ならINSERTする。…

IISのインストールをコマンドで行う。

最近、急激にWindowsPEに興味を持ち始めて、DISMのコマンドを見るケースが増えてきました。 そこで、IISのインストールについてもDISMでできそうだったので、コマンド例を作ってみました。 IISの設定 適当に使いそうなものだけ突っ込んでますので、必要に応…

キーボードの配列を変更する。

今年から会社で英語配列キーボードを使い始めたので、設定変更方法を度々検索していたものを備忘のためメモしておきます。 検索したところ似たようなことをやっている人が沢山いたので、無駄に日本語配列にする場合と英語配列にする場合をPowerShellで書いて…

リモート接続した際にアプリからCDを認識する

RDP接続した際にiTunesでCDを取り込む PCを組み替えた際、新PCにはCDドライブをつけませんでした。 最近は、ゲームや音楽もダウンロードで買う機会が増えましたし、 OSのインストールもUSBで済むようになってきたので。 そんなわけで物理ディスクが必要な場…

RTX1210環境下でスプラトゥーンの対戦ができなかった。

どこのご家庭にも業務用ルーターはあるかと思いますが、私も自宅のルーターが YAMAHAのRTX1210です。 そして、今、大人気のスプラトゥーンを私も夜な夜なやっているわけですが、 購入初日に対戦できないという事態に巻き込まれました。 ナワバリバトルの画面…

Hello ぽにょろん!

いつか始めてみようと思ったまま放置していたのだが、 思いついたので始めてみます。 基本的にアウトプットとメモ用に使っていこうと思ってます。 最初の記事なんてものは誰も読まないという、初心者Blog解説記事も ありましたので、見つからないことを祈り…