自作コンソールエミュレータで複数のコンソールを表示する


Windowsでコンソールエミュレータを作りたいのですがどのようにすればよいのでしょうか?  
ここでいうコンソールエミュレータとはConEmuのようなものです。  
cmd.exeやPowershellではきれいにフォントを表示できないので自作を考えています。

タブ機能を実装してみたいのですが、どうも`AllocConsole`は一つのプロセスで一回までと決まっており、2つ以上のコンソールを開けません。  
どうすればよいのでしょうか?

また、AllocConsoleを呼ぶとcmd.exeのような画面が表示されてしまいます。  
これを表示せずに自前で実装したいのですが、うまく表示させない方法はありますか?  
ちなみにC++を使っています

OS:Windows10 1803




[`SetParent`](https://msdn.microsoft.com/en-
us/library/windows/desktop/ms633541\(v=vs.85\).aspx)というWindows
APIがあります。これを使うことで任意のウィンドウに対して親ウィンドウを変更することができます。`AllocConsole`で作られるウィンドウに対して親ウィンドウを自作アプリに指定することで実現できるかなと思います。

