備忘録

備忘録

bashで文字列を数値に変換する方法

Ⅰ. はじめに bashの変数は全てを文字列として扱う為、そのままでは数値計算ができません。 数値計算を行う方法として以下の2通りあります。 # 概要 1 $(())を使う方法 2 exprを使う方法 Ⅱ. 文字列→数値($(())を使う方法) $ echo $((10+10)) 20 Ⅲ. 文字列→…

Fiddlerで常に特定ホストのログを除外する方法

Ⅰ. はじめに 簡単な方法として、セッションを選択→右クリック→Filter Now→ Hide example.com とする事で除外できます。 しかし、以下の2点が非常に面倒です。 Fiddler起動時に設定が初期化される ワイルドカード指定する場合、TextBoxで編集する形になるので…

C++ リンカエラーを非表示にする方法

Ⅰ. はじめに タイトルの通り「C++ リンカエラーを非表示にする方法」です。 型キャスト等で出力されるコンパイラ警告は以下の一行で非表示にできますが、リンカエラーは #pragma では不可能です。 #pragma warning(disable:4312) コンパイラ警告の例 「C4312…

C#でSSD/HDDのシリアル番号を取得する方法

C#

Ⅰ. はじめに 以下のコマンドを実行すると記憶媒体(SSD/HDD)のシリアル番号を取得する事ができます。 vol c:ドイブ C のボリューム ラベルがありません。 ボリューム シリアル番号は A8D9-2235 ですこのシリアル番号をC#のプログラムで取得する方法です。 Ⅱ…

cpprestsdk をビルドしてstatic linkする

Ⅰ. はじめに cpprestsdk の使い方はこちらcpprestsdk はNuGetで dynamic link 版が配布されています。 static link 版は配布されていません。static link する為には2017/10/08時点、自分でビルドするしか方法がありません。 Ⅱ. 必要なもの VisualStudio 201…

C++でHTTP(S)でGET/POSTする(cpprestsdk の使い方)

Ⅰ. はじめに .NET系 であれば WebClient や HttpClient が標準である為、 追加のライブラリ無しでHTTPをモダンかつ簡単に扱うことができます。しかし、C++にはそのような物が標準ではありません。 ライブラリを探した結果、Microsoft社が作成しているC++ RES…

OpenSSLをWindowsでビルドする方法

Ⅰ. はじめに タイトルの通り「OpenSSLをWindowsでビルドする方法」です。 コンパイル済みライブラリだけ欲しい人はこちら Ⅱ. 環境(必要なもの) ・Visual Studio 2017 Community (C++) ・Perl(ActivePerl を利用しました) ・OpenSSL 1.0.2l のソースコー…

.NET 難読化ツール「Obfuscar」の使い方

Ⅰ. はじめに 無料で利用できる難読化ツール Obfuscar の使い方です。 GitHubでソースコードが公開されています。 https://github.com/lextm/obfuscar Ⅱ. 使い方 1. NuGetから必要なライブラリをインストールします Install-Package Obfuscar 2. プロジェクト…

SYSTEM権限でアプリケーションを実行する方法

Ⅰ. はじめに タイトルの通り「NT AUTHORITY\SYSTEM」でアプリケーションを実行する方法です。 Ⅱ. やり方 やり方は3つあります。 1. AprelTech社のRunAsSystemを使う方法 https://www.apreltech.com/Free/How_to_run_as_system_user非常にわかりやすいGUIがあ…

Administrator アカウントの有効化、無効化を行う方法

有効化 コマンドプロンプトで以下のコマンドを実行する net user administrator /active:yes 無効化 コマンドプロンプトで以下のコマンドを実行する net user administrator /active:no 参考 https://msdn.microsoft.com/ja-jp/library/windows/hardware/dn8…

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

C#

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

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

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

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…