コーヒー飲みながら仕事したい

仕事で使う技術的なことの備忘録とか


Wordpress に引っ越しました!

Redmine に EasyGantt のプラグインを入れようとしたらハマったので備忘録

首題の件ですが、 Redmine に EasyGantt というプラグインを入れることにしました。 目的としては、このプラグインを入れることで、ドラッグアンドドロップでガントチャートが引けるようになるからです。 ガントチャートの運用で一番の問題点は、メンテナン…

MQL5 を Visual Studio Code でコンパイルする その2 ~お手軽?コンパイル編~

前回に引き続き、今度はコンパイルできるようにします。 結論から言うと、コンパイルをするだけなら、ググったら既に Qiita 記事で情報公開してくださっている方がいました。 そういったわけで、今回はそちらの記事をほぼ流用する形になりますが、個人的な備…

MQL5 を Visual Studio Code でコンパイルする その1 ~シンタックスハイライト編~

ちょっとこのブログに書くべきか悩みましたが、 MetaTrader5 で使用する MQL5 と呼ばれる言語に関する記事です。 一応プログラム言語に関することなので、書くことにしました。 (MetaTrader5 が何かはここでは述べません) ちなみに、今回の記事は、こちら…

SQLite を使用して単体テストしていると、'FOREIGN KEY constraint failed' と怒られる

単体テストで SQLite を使用していて困ったことが合ったので、その概要と解決策です。 外部キー制約にひっかかる DB を使用する箇所の単体テストにおいて SQLite を使用することで簡単にテスト環境を構築することが出来ます。とりあえずテストしたいところだ…

EMQ X のインストール

以前、EMQ をインストールしましたが、新しい環境で再度インストールする必要がありました。 tassi-yuzukko.hatenablog.com 詳細はわかりませんが、過去の URL は接続できなくなっていました。 どうやら、「EMQ X」という名前に変わった?みたいなので、再度…

WPF 閉じるボタンのみを非表示にしたウィンドウの作り方

諸事情で閉じるボタン(いわゆる×ボタン)を非表示にしつつ、最小化ボタンのみを残す必要がありました。 たったこれだけのことなのに、結構複雑な処理を実装しないといけなかったので、備忘録として残しておきます。 参考サイト 今回、予想以上に処理が複雑…

WPF で 上下左右に中央寄せのラベル(テキストボックス)を作る

WPF で上下左右(水平垂直方向)に中央寄せするラベルの作り方でハマったので備忘録です。 調べてもなかなかでてこなかった・・ やりたいこと ずばり、以下の絵のようなやつです。 解決策 以下の自動翻訳されたページに答えがありました。 codeday.me 上記絵…

Visual Studio Code で markdown のスニペットを登録する

Visual Studio Code で markdown を使用して plantuml を書くことが多いのですが、 ```plantuml @startuml skinparam backgroundColor #FEFEFE ~ @enduml ``` というようなのを毎回手入力するのが面倒です。 何かいい方法はないかなぁと思ってたら、スニペ…

Microsoft.Extensions.DependencyInjection の DI コンテナの挙動について

ASP.NET Core でよく使われる(?) Microsoft.Extensions.DependencyInjection をクラスライブラリやコンソールアプリケーションで使用したときの挙動についての備忘録です。 Microsoft.Extensions.DependencyInjection の DI コンテナの依存性の注入方法 …

Linux Mint から Windows10 へリモートデスクトップ接続する

私の環境(Linux Mint 19.1 MATE)では、標準で Windows へのリモートデスクトップができなかったので、その備忘録です。 前提 接続元: Linux Mint 19.1 MATE 接続先: Windows10 ただし、Windows10 側は Pro エディションでないとそもそもリモートデスクト…

バッチファイルで % とかをエスケープする方法

所用で、 git log -n 1 --format=%H をバッチファイル上で実行しようとしたのですが、うまくいかなかったので備忘録として残しておきます。 バッチファイルでは、% は特別な意味を持つので、エスケープが必要なのはわかるのですが、何故か後ろに付ける ^ に…

Fire TV Stick で IEEE802.11ac 接続できないときの対処法

仕事とは全く関係ないですが、今回の Amazon Cyber Monday にて、 Fire TV Stick を買いました。 買って、さっそくセッティングしたのですが、我が家の Wi-Fi の 11ac (5GHz 帯)のネットワークを認識しませんでした。 一応 11g は認識して、速度もフル HD で…

CentOS で samba の設定をする

Windows10 から CentOS7 へエクスプローラーを使ってアクセスしたかったので、 ssamba による設定を行いました。 かなり苦戦したので、苦戦したところを備忘録として残します。 samba の準備 usado.jp ↑を参考にさせてもらいました。 基本的にはこの通りでよ…

WPF で外部のプロジェクトからユーザーコントロールとかを参照する方法

地味にかなりハマったので、備忘録として残しておきます。 シチュエーションとしては、以下の感じです。 プロジェクトは WPF を前提 ユーザーコントロール(MyUserCtrl.xaml)を含むクラスライブラリとしてプロジェクトAがある プロジェクトAを参照したエン…

自作の nuget package に xml コメントを付加する

以下、 .NET Standard の話です。 .NET Standard では、 nuget package の作成方法は、 *.nuspec を使用しなくても、 *.csproj に以下のように記載すれば *.nupkg が出力されます。 <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>netstandard2.0</TargetFramework> <LangVersion>latest</LangVersion> <NeutralLanguage>ja-JP</NeutralLanguage> </propertygroup></project>

Visual Studio 2017 でデフォルトの using を設定する【項目テンプレート使用】

Visual Studio で C# でアプリケーションを開発中に個人的によく思うのが、例えば using System.Linq とか using System.Threading.Tasks とか、毎回毎回手で書くの面倒くさいなぁというところです。 using System とかは最初から記述してあるので、それと同…

.net standard で nuget package (*.nupkg) を生成する方法

.net framework 等では、 *.nuspec というファイルを経由して *.nupkg を作る方法があるみたいですが、.net standard では異なるみたいです。(もしかしたら .net core も同様かもしれませんが、試していません) というかかなり楽で、 *.csproj から生成す…

mosquitto でブローカーのログをファイル出力する方法(Windows10 にて)

主題の通り、Windows10 の環境にて、 mosquitto のブローカーのログをファイルに出力する方法です。 公式な手順(ただし Windows10 ではうまくいかない・・・) まず、公式にログ出力に関する設定方法が書かれています。 大まかな手順としては mosquitto.con…

.NET Standard で EntityFrameworkCore の Scaffold を実行する

前回、 .NET Core で Scaffold しましたが、 tassi-yuzukko.hatenablog.com クラスライブラリ側に Scaffold して DTO クラスを自動生成したくなりました。 しかし、単純ではなかったので、こちらも備忘録として残しておきます。 はじめに 単純に .NET Standa…

EntityFrameworkCore で Scaffold 使ってデータベースファーストする方法

主題の件ですが、ハマった部分もあったので備忘録として残しておきます。 先に注意点ですが、 .NET Core コンソールアプリケーションと、 ASP.NET Core では Scaffold の条件が異なる というのが今回ハマったところです。 前提事項 恐らく現状(dotnet core …

mosquitto でパスワード認証の設定をする

概略手順 ブローカー側で保持するパスワードファイルを作成 作成したパスワードファイルを、config ファイルに登録する config ファイルを起動オプションに指定して、ブローカーを起動する クライアント側でもオプションにユーザー名とパスワードを指定して…

moq でデリゲートをモックする方法

Func<XXX> といったようなデリゲートをモックしたい時があります。 これを、 moq を使用する方法です。 やり方 たとえば、int 型を2つ受け取り、文字列に変換するデリゲートがあったとします。(つまり、 Func<int, int, string>) これをモックする方法は、以下の通りです。 var m</int,></xxx>…

ProtocolBuffers の自動ドキュメント作成について

時間がないのでメモ的にですが残しておきます。 ProtocolBuffers の .proto ファイルから、ドキュメントを自動生成する方法について見つけました。 taktak.jp 上記に記載がありますが、ちょこっと変えてフォルダ内の全ファイルに対して自動生成するようなス…

moq で virtual メソッドをコールする方法

moq を使っていて、ハマったことがあったので備忘録として残しておきます。 主題の通り、「moq で virtual メソッドをコールする方法」です。 やりたかったことと症状 以下のような Dispose パターンを使用したテスト対象のクラスがあったとします。 public …

消せないファイルを消したい!ときの IObit Unlocker

主題の通り、Windows にてファイルを消そうとすると、「プロセスがどうたら~」とか余計なおせっかいを言われてファイルが消せないことが多々あります。 「ええから消させてくれい!」というときに結構困るんですが、そんなとき用の便利ツールが以下の「IObi…

mosquitto のバグ(たぶん)について

mosquitto は mqtt ブローカーの参照実装と言われるだけあって、安定していて使いやすいのですが、やはりバグがいくつかあります。(現状 Github で報告されている issue だけでもこれだけあります) 今回、私のプロジェクトにおいて関係するバグを備忘録と…

Git Bash on Windows で gitlab に ssh 接続するときにハマったこと

事象 社内のオンプレミスの gitlab に対して、 tortoise git では ssh できるのに、 git bash では ssh できない!1 原因 普段 ssh で使用している秘密鍵は、 putty で作成した鍵でした。 tortoise git 使っているときには、putty 形式の鍵が使えたのですが…

Observer パターンを自分なりに整理してみる

免責 いきなり免責というのもアレですが、この記事の真偽は一切保証を致しかねます。 正直、かなり怪しいと思いますので、少なくとも情報収集されている方は、この記事はスキップされたほうが無難かと思われます。 (私のアカウントに書いてあることはもとも…

Visual Studio 2017 で欠かせないプラグイン 4+1つ

個人的にこれは欠かせないっていう Visual Studio のプラグインを備忘録として残しておきます。 Format document on Save Ctrl + S で保存時、自動整形を実行してから保存してくれるプラグインです。 Visual Studio 自体にもプラグインの機能があるのですが…

Visual Studio でビルド時に「のプロジェクト情報が見つかりません。これは、プロジェクト参照がないことを示している可能性があります。」でエラーになったときの対処法

C#

(備考:もしかしたら .NET Standard のみの事象かもしれません) 事象 主題の通り、 Visual Studio でビルド実行時に、以下のようなエラーになりました。 (xxx.csproj はソリューション内で参照しているプロジェクト) 'xxx.csproj' のプロジェクト情報が…