2017-11-29 18 views

答えて

2

最も簡単なオプションは、Windowsフォームプロジェクトを起動し、出力タイプをコンソールアプリケーションに変更することです。また、ただのSystem.Windows.Forms.dllへの参照を追加し、コーディングを開始:

using System.Windows.Forms; 

[STAThread] 
static void Main() { 
    Application.EnableVisualStyles(); 
    Application.Run(new Form()); // or whatever 
} 

重要なビットがフルCOMをサポートするために必要な、自分のメイン()メソッドに[STAThread]です。

別の方法:

using System.Runtime.InteropServices; 

private void Form1_Load(object sender, EventArgs e) 
{ 
    AllocConsole(); 
} 

[DllImport("kernel32.dll", SetLastError = true)] 
[return: MarshalAs(UnmanagedType.Bool)] 
static extern bool AllocConsole(); 

あなただけのGoogleで、このトピックを研究した場合、あなたはあなたの質問を実装するので、多くの方法を見つけることができます示唆私のいくつかの方法を試してみて、より多くのあなたへの適応が何であるかを確認することです。

+0

におけるオブジェクト他の溶液

testform tf = new testform(); tf.Show();

を発見しました表示する。代わりに、私は両方の方法の組み合わせを使用しました。ここでは、コンソールをメインORに割り当て、フォームを実行します。フォームを表示したい場合は、ウィンドウフラグを指定してarg [0]を使って自分自身を再実行しますが、内部的に実行することもできます。 – netniV

+0

本当に助けてくれてありがとう –

1

私はちょうど作成されたフォームは、私は一度私がフォームからコンソールを作成し、後者の方法を用いるが、それはフォームが常に試みることを意味メイン

関連する問題