備忘録

備忘録

C# 16進数文字列をbyte[]に変換する方法

C#

Ⅰ. はじめに タイトルの通り「16進数文字列をbyte[]に変換する方法」です。 処理速度は考慮してません。 LINQ 拡張メソッドの Chunksについては参考に書いてあるブログのコードをそのまま利用しています。 Ⅱ. 16進数文字列→byte[] "0x000102030405" byte[] b…

はてなスターを無効にする方法

Ⅰ. はじめに SEO、アクセス数目的で「はてなスター」をつける人が目立ってきました。 非常に不快かつ迷惑極まりない行為です。 はてなブログ利用者ができる対応として「はてなスター」の機能そのものを無効化させる方法を紹介します。 Ⅱ. やり方 1. 「設定」…

C# で Redis を使う

Ⅰ. はじめに タイトルの通り「C# で Redis を使う方法」です。 ライブラリは「StackExchange.Redis」を使います。 Ⅱ. 使い方 NuGetから必要なライブラリをインストールします Install-Package StackExchange.Redis 文字列をセットする var redis = Connectio…

C# でSMTP サーバを建ててメールを受信する方法

C#

Ⅰ. はじめに タイトルの通り「C# でSMTP サーバを建ててメールを受信する方法」です。 cosullivan/SmtpServer を使います Ⅱ. やり方 1. NuGetから必要なライブラリをインストールする Install-Package SmtpServer Install-Package MimeKit Install-Package S…

Windows ダウンロードしたファイルをブロックさせない

Ⅰ. はじめに デフォルト設定の場合、インターネットからダウンロードしたファイルには自動的に「ゾーン識別子情報」が付加されます。 これによりファイルにアクセスしようとするとセキュリティの警告が表示されます。 Ⅱ. ブロックさせない方法(「ゾーン識別…

C#でHttpClientにSOCKS Proxyを利用する方法

C#

Ⅰ. はじめに タイトルの通り「C#でHttpClientにSOCKS プロクシを利用する方法」です。 SocksSharp を利用します。 SocksSharp は SOCKS4/4a/5 に対応しています。(2017/08/26時点) Ⅱ. やり方 1. NuGetから SocksSharp をインストールする Install-Package …

CentOSでSOCKSサーバ(Dante)を構築する

Ⅰ. はじめに Inferno Nettverk A/S によって開発されているSOCKS4,5サーバ Dante の構築方法です。 Ⅱ. 環境 $ cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) $ uname -a Linux xxx 3.10.0-514.6.2.el7.x86_64 #1 SMP Thu Feb 23 03:04:39 U…

C# 7.1 非同期Mainを使う

C#

Ⅰ. はじめに C# 7.1の新機能の1つに「非同期Main」があります。 C# 7までは Main関数で await を利用することが出来きませんでした。 C# 7 まで static void Main(string[] args) => MainAsync().Wait(); static async Task MainAsync() { await Task.Delay(…

C# Zlibで圧縮、展開する

C#

Ⅰ. はじめに Zlibのマジックナンバーは2バイトです。 「78 DA」「78 01」「78 9C」等がメジャーです。 詳しくはRFC 1950で定義されています。 https://www.ietf.org/rfc/rfc1950.txt Ⅱ. やり方 NuGetから Iconic.Zlib.Netstandard をインストール 圧縮 bytes…

HttpClient で任意のHTTPヘッダを指定した時 FormatException が発生する

C#

Ⅰ. はじめに 通常HttpClientでHTTPヘッダを指定する場合は以下のように書くことが出来ます。 var client = new HttpClient(); client.DefaultRequestHeaders.Add("User-Agent", "hoge"); しかし、User-AgnetやAuthorization等のよく知られたヘッダは自動的に…

Vue.js + Onsen UI + webpack で ページを切り替える方法

Ⅰ. はじめに タイトルの通り「Vue.js + Onsen UI + webpack で ページを切り替える方法」です。 この方法が推奨されているやり方かどうかは不明です…。 Ⅱ. やり方 1. App.vue を書き換える <v-ons-splitter-content> <component :is="currentPage"></component> </v-ons-splitter-content> import HomePage from './components/HomePage' import AboutPag…

Vue.js + Onsen UI + webpack で helloworld する

Ⅰ. はじめに タイトルの通り「Vue.js + Onsen UI + webpack で helloworld する」方法です。 Ⅱ. やり方 1. vue-cliのインストール $ npm install -g vue-cli 2. Vue.js +Onsen UI + webpack のテンプレートを使って初期化する $ vue init OnsenUI/vue-cordov…

Vue.js で 子から親のdataにアクセスする

Ⅰ. はじめに タイトルの通り「Vue.js で 子から親のdataにアクセスする」方法です。 この方法が推奨されているやり方かどうかは不明です…。 Ⅱ. やり方 親 main.js new Vue({ data () { return { hoge: 'abc' } } }) 子 xxx.vue 階層が深くなればなるほど $pa…

右クリックで出てくるSkyDrive Proを消す

Ⅰ. はじめに タイトルの通り「右クリックで出てくるSkyDrive Proを消す」方法です。 Office 2013をインストールすると右クリックに出てきます。 Ⅱ. 消し方 1. 以下のテキストをx.regという名前をつけて保存し、実行する。 Windows Registry Editor Version 5…

ChromeやFireFoxの開発者ツールを無効にする

Ⅰ. はじめに 開発者ツール(デベロッパーツール)を使えなくする方法です。開発者ツールが使える状況ではデバッガ等の強力な機能が利用可能になります。 JavaScriptの難読化を行っていてもデバッガが利用可能なので何らかの解析が可能になります。 そういっ…

Windows 10 アプリのバックグラウンド実行を許可しない

Ⅰ. はじめに Windows10 では使っていないアプリでもバックグラウンドで動作していることがあるそうです。 Ⅱ. バックグラウンド実行を許可しない方法 1. Windows キー + I で設定を開く 2. 「プライバシー」→「バックグラウンドアプリ」 3. 「オフ」に変更す…

Windows10 右クリックの編集の関連付けを変更する

Ⅰ. はじめに タイトルの通り「Windows10 右クリックの編集の関連付けを変更する」方法です。 Ⅱ. やり方(拡張子がtxtの場合) 1. レジストリエディタを起動 2. 以下のキーに移動 HKEY_CLASSES_ROOT\SystemFileAssociations\text\shell\edit\command 3. 任意…

Windows 10 でUACを無効にする

Ⅰ. はじめに タイトルの通り「Windows 10 でUACを無効にする」方法です。 無効にしてもユニバーサルアプリ(Edge等)の使用が可能です。レジストリの FilterAdministratorToken を書き換えても意味はありません。 Ⅱ. 環境 Windows 10 64bit 1703(Creators Up…

Vue.js + webpack で Bootstrap を使う

Ⅰ. はじめに Vue.js + webpack の基本的なインストール方法はこちらを参照して下さい。 http://kagasu.hatenablog.com/entry/2017/07/24/082405上記で作った環境にBootstrap v4をインストールする方法です。 Ⅱ. やり方 1. bootstrap-vue をインストール $ np…

Vue.js + webpack で helloworld する

Ⅰ. はじめに タイトルの通り「Vue.js + webpack で helloworld する」方法です。 Ⅱ. やり方 1. vue-cliのインストール $ npm install -g vue-cli 2. Vue.js + webpack のテンプレートを使って初期化する $ vue init webpack my-project $ cd my-project $ np…

Vue.jsでaxiosを使ってJSONデータを利用する

Ⅰ. はじめに タイトルの通り「Vue.jsでaxiosを使ってJSONデータを利用する」サンプルです。以下のJSONから [ { "name" : "name001" }, { "name" : "name002" }, { "name" : "name003" } ] 以下のように出力するサンプルです。 name001 name002 name003 Ⅱ. サ…

C#でDiscord BOTを作る

Ⅰ. はじめに kagasu.hatenablog.comこちらの記事でプログラミング不要なBOTの作成方法を書きましたが、 細かい動きをするBOTを作るにはコード書く必要があります。この記事ではC#でecho botのサンプルを紹介します。 Ⅱ. 環境 Windows 10 64bit 1703 Visual S…

DiscordでTwitterやSteamやブログRSSを通知するBOTを作る方法

Ⅰ. はじめに ・Twitterで誰かがツイートした時 ・ブログが更新された時 ・Steamゲームのニュースが更新された時 等、何か起きた時に自動的にDiscordで通知を受け取る方法です。上記のようなケースだけでなく、様々なケースに応用が可能です。 また、IFTTT を…

.NET CoreでSystem.Drawingを使う

Ⅰ. はじめに System.Drawing は WindowsのGDI+に依存している為標準の.NET Coreで利用することができません。 解決策として CoreCompat.System.Drawing を使う方法を紹介します。 Ⅱ. Windowsの場合 1. NuGet で CoreCompat.System.Drawing をインストールす…

WindowsでPOCO C++を使う

C++

Ⅰ. はじめに 「POCO C++」はモダンで強力なC++ライブラリです。 XML JSON Zip DB (SQLite, ODBC, MySQL) Foundation(基本機能ライブラリ Base64変換等) 等の機能があります。 Ⅱ. Windows で使う 1. コンパイルする Testは不要なのでアンロードさせます。 2. …

Windows 10 ナビゲーションウィンドウの邪魔なフォルダを消す

Ⅰ.はじめに 私個人としては「ビデオ」「ピクチャ」「ドキュメント」といったフォルダは頻繁に使用しないため非常に邪魔です。 消し方 1. 以下のテキストをx.regという名前をつけて保存し、実行する。 Windows Registry Editor Version 5.00 ; Desktop [-HKEY…

C#でテンプレートマッチを行う

C#

Ⅰ. はじめに OpenCV3 のラッパーである OpenCvSharp の MatchTemplate メソッドを使ってテンプレートマッチを行います。 Ⅱ. サンプル スクリーンショットを取り、メモ帳のアイコンを探すサンプルです。 NuGet から OpenCV3 のラッパーをインストールする。 t…

Windows で touch を使う

Ⅰ. はじめに Windows に touch コマンドは存在しません。 Ⅱ. やり方 type nul > hoge.txtこれは以下のコマンドに相当します。 touch hoge.txt Ⅲ. 参考 https://web.archive.org/web/20150510181656/http://text.readalittle.net/article.php?id=244

C# で HMACSHA256を計算する

C#

string CalculateHMACSHA256(byte[] bytes) { using (var hmacsha256 = new HMACSHA256(key)) { var bs = hmacsha256.ComputeHash(bytes); return BitConverter.ToString(bs).ToLower().Replace("-", ""); } } // 出力例 // b248bb2b861e5efe1e5bea3722b19c6…

Photonの生パケットを読む

Ⅰ. はじめに 1. Photon とは クロスプラットフォームで動作する「ネットワークエンジン」です。 ドイツのベンチャー企業「Exit Games」が開発しています。「クラウド(SaaS)」と「オンプレミス」が選択できます。 アジアリージョンのクラウドはGMOが独占して…