VC++ DLLサンプル
DLL側
#include "pch.h" #include "stdio.h" #include <windows.h> BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } return TRUE; } extern "C" __declspec(dllexport) int plus(int x, int y) { return (x + y); } extern "C" __declspec(dllexport) void print_hoge(void) { printf("HOGE\n"); int msgboxID = MessageBox( NULL, L"message!!", L"Title", MB_ICONEXCLAMATION | MB_YESNO ); }
DLLを呼び出す側
#include <iostream> #include <windows.h> typedef int (*FUNC1)(int x, int y); typedef int (*FUNC2)(); int main() { std::cout << "Hello World!\n"; HMODULE hModule = LoadLibrary(L"sample_dll.dll"); if (NULL == hModule) { std::cout << "Failed load library!\n"; return 1; } std::cout << "Success load library!\n"; FUNC1 func = (FUNC1)GetProcAddress(hModule, "plus"); if (NULL == func) { std::cout << "Failed load function!\n"; return 2; } std::cout << "Success load function!\n"; std::cout << func(1, 2); FUNC2 func2 = (FUNC2)GetProcAddress(hModule, "print_hoge"); if (NULL == func2) { std::cout << "Failed load function!\n"; return 2; } std::cout << "Success load function!\n"; func2(); while (1) {} }
emacs package
init.elに下記を記載
(require 'package) ;; HTTP (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t) (add-to-list 'package-archives '("melpa-stable" . "http://stable.melpa.org/packages/") t) (add-to-list 'package-archives '("org" . "http://orgmode.org/elpa/") t) (add-to-list 'package-archives '("ELPA" . "http://tromey.com/elpa/") t) (package-initialize)
下記を実行
M-x package-refresh-contents M-x package-list-packages
■
キーバインドをemacsライクへ
1. ダウンロードした設定ファイルをインポート
http://sakura.qp.land.to/?Customize%2F%C5%EA%B9%C6%2F6
設定 => 共通設定 => キー割り当て => インポート => Emacs.key
2. Ctrl + Spaceで選択開始を設定
設定 => 共通設定 => キー割り当て => 識別「選択系」 => 機能「範囲選択開始」 => キー「Ctrl + Space」
右端で折り返す
1. 設定 =>タイプ別設定一覧 => 変更したいタイプを選択
2. 設定 => タイプ別設定 => スクリーン => 折り返し方法「右端で折り返す」
色を編集
1. .colファイルを作成。
2. 設定 =>タイプ別設定一覧 => 変更したいタイプを選択
3. 設定 => タイプ別設定 => カラー => インポートを押し、1で作成したファイルを選択
; テキストエディタ色設定 Ver3 [SakuraColor] C[BRC]=1,1,ffff84,202020,0 C[CAR]=1,0,f7f7f7,3a3a3a,0 C[CBK]=0,0,f2f8f8,202020,0 C[CMT]=1,0,cc9b6a,202020,0 C[CTL]=0,0,c6c6c6,202020,0 C[CVL]=0,0,ffc184,3a3a3a,0 C[DFA]=0,0,202020,ffc184,0 C[DFC]=0,0,202020,c0fdbd,0 C[DFD]=0,0,202020,f2f8f8,0 C[EBK]=0,0,222827,202020,0 C[EOF]=1,0,ff9999,0c0c0c,0 C[EOL]=1,0,c6c6c6,202020,0 C[FN2]=1,0,202020,ffff9e,0 C[FN3]=1,0,202020,9eff9e,0 C[FN4]=1,0,202020,9eceff,0 C[FN5]=1,0,202020,ff9eff,0 C[FND]=1,0,202020,9effff,0 C[HDC]=0,0,84ff84,202020,0 C[IME]=1,0,a791ff,3a3a3a,0 C[KW1]=1,0,ffff84,202020,0 C[KW2]=1,0,84c1ff,202020,0 C[KW3]=1,0,ff84c1,202020,0 C[KW4]=0,0,8484ff,202020,0 C[KW5]=0,0,8484ff,202020,0 C[KW6]=0,0,8484ff,202020,0 C[KW7]=0,0,8484ff,202020,0 C[KW8]=0,0,8484ff,202020,0 C[KW9]=0,0,8484ff,202020,0 C[KWA]=0,0,8484ff,202020,0 C[LNO]=1,0,c6c6c6,3a3a3a,0 C[MOD]=1,1,c6c6c6,3a3a3a,0 C[MRK]=0,0,202020,c08000,0 C[NOT]=0,0,ff9999,f0fbff,0 C[NUM]=0,0,fdfdfd,202020,0 C[PGV]=0,0,f0fbff,ffe6be,0 C[RAP]=1,0,ff9999,202020,0 C[RK1]=1,0,cccc6a,202020,0 C[RK2]=1,0,cccc6a,202020,0 C[RK3]=0,0,cccc6a,202020,0 C[RK4]=0,0,cccc6a,202020,0 C[RK5]=0,0,cccc6a,202020,0 C[RK6]=0,0,cccc6a,202020,0 C[RK7]=0,0,cccc6a,202020,0 C[RK8]=0,0,cccc6a,202020,0 C[RK9]=0,0,cccc6a,202020,0 C[RKA]=0,0,cccc6a,202020,0 C[RUL]=1,0,c6c6c6,3a3a3a,0 C[SEL]=1,0,202020,fdfdfd,0 C[SPC]=0,0,c6c6c6,202020,0 C[SQT]=0,0,84ff84,202020,0 C[TAB]=1,0,c6c6c6,202020,0 C[TXT]=1,0,fdfdfd,202020,0 C[UND]=1,0,ffc184,3a3a3a,0 C[URL]=1,0,c184ff,202020,1 C[VER]=0,0,ff9999,202020,0 C[WQT]=1,0,84ff84,202020,0 C[ZEN]=1,0,c6c6c6,202020,0
サクラエディタ設定
1. ダウンロードした設定ファイルをインポート
http://sakura.qp.land.to/?Customize%2F%C5%EA%B9%C6%2F6
設定 => 共通設定 => キー割り当て => インポート => Emacs.key
2. Ctrl + Spaceで選択開始を設定
設定 => 共通設定 => キー割り当て => 識別「選択系」 => 機能「範囲選択開始」 => キー「Ctrl + Space」
* 色を編集
fish shellをローカルにインストール
1. 下記からfish-3.1.0.tar.gzをダウンロード
https://fishshell.com/
2. 解凍しインストールする
例: ~/fishにインストール
$ tar xzvf ./fish-3.1.0.tar.gz $ cd ./fish-3.1.0 $ mkdir build $ cd ./build $ cmake -DCMAKE_INSTALL_PREFIX=~/fish/ ../ $ make $ make install
3. fisherをインストールする
https://github.com/jorgebucaran/fisher
$ curl https://git.io/fisher --create-dirs -sLo ~/.config/fish/functions/fisher.fish
4. $PATHを通す、起動時にfishをデフォルトシェルに変更
# ~/.profile or ~/.bashrc export PATH="$PATH:/home/user/fish/bin/" fish
5. zとbassをインストールする
$ fisher add fisherman/z
$ fisher add edc/bass
6. config.fishを編集する
~/fish/etc/fish/config.fish