結局FMtrialでもパッチ地獄に突入!
DLLの存在場所がDLLから判明できるようになったので、
TCHAR szModuleFileName[_MAX_PATH] = _T("");
GetModuleFileName((HMODULE)hInstance, szModuleFileName, _MAX_PATH);
その場所にパッチデータを保存しといたら色々と楽じゃんということで、
早速そこにパッチを書き込んだり、読み込んだりするコードを書いてみました。
でもWin7くらいからProgramFiles以下は割とユーザやプログラムが読み書きしたら
ダメよウフフ的なルールになってきていたので大丈夫かなーと思いながら実行。
あら、ちゃんとパッチをセーブしたりロードしたりできる!
簡単じゃん!
と思って該当のVSTのある場所を見に行くと、パッチデータは無い。
でも、ちゃんとパッチをセーブしたりロードしたりしてる。
なんだこれ!?
パッチファイル名で検索かけたら、
C:\Users\<ユーザ名>\AppData\Local\VirtualStore\Program Files (x86)\VSTPlugIns
こんなトコにしゅれっとセーブされてる!
なんだこれ!?
調べたら、VirtualStoreという機能らしくて、システム領域をアホプログラムから守る
機能らしいどす。
うーん。
なんだろうこのモヤモヤ感。
「DLLの隣にパッチデータを置いておきたい!」
という野望はどうにもうまくいきませんでした。
もうちょっとゴチャゴチャやってみよう。
0 件のコメント:
コメントを投稿