2017-03-28 10 views
3

スクリーンショットを取得し、ウィンドウを表示せずに保存する簡単なプログラムを作成したいと考えています。通常のWindowsフォームアプリケーションVisual Studioで "隠し"ユーティリティを作成するのにどのタイプのプロジェクトを使うべきですか?

  • と私はコンソールアプリケーション
  • 何かをウィンドウを非表示にする必要があります - ?エレメントの種類は、私が使用する必要がない

+1

いずれのプロジェクトタイプでも起動できます。どちらも有効なWindowsアプリケーションを作成します。フォームアプリケーションが簡単になります:フォームを作成して 'Main()'に表示するだけで、Main()のコードをスクリーンキャプチャに置き換えることはできません。 – dlatikay

答えて

3

は、ここでも簡単な解決策だ だけでウィンドウを非表示にします。

  1. コンソールアプリケーションを作成します。 Windowsアプリケーション

から

  • オープンアプリケーションタブ
  • 変更に生成されたプロジェクト
  • 行くにプロパティを出力タイプあなたがいずれかを非表示にする必要はありません。この方法では、あなたが何も作成していないからです。

  • 1

    両方を使用できます。私は特にwinformで作業することを好む。その後、

    this.WindowState = FormWindowState.Minimized; 
    

    Rectangle bounds = this.Bounds; 
    using (Bitmap bitmap = new Bitmap(bounds.Width, bounds.Height)) 
    { 
        using (Graphics g = Graphics.FromImage(bitmap)) 
        { 
         g.CopyFromScreen(new Point(bounds.Left,bounds.Top), Point.Empty, bounds.Size); 
        } 
        bitmap.Save("C://test.jpg", ImageFormat.Jpeg); 
    } 
    
    +2

    うん、 "winforms"ウィンドウを隠す方が "コンソール"ウィンドウを隠すよりはるかに簡単です。しかし、あなたが書いたものは実際には**ウィンドウを最小限に抑え**、隠すことはありません。実際の隠蔽については、http://stackoverflow.com/questions/70272/single-form-hide-on-startupを参照してください。参考:私が言ったように、コンソールウィンドウを非表示にすることもできます。http://stackoverflow.com/questions/3571627/show-hide-the-console-of-ac-sharp-console-application – quetzalcoatl

    3

    ジョブに適切なツールを使用します。

    空のプロジェクトまたはクラスライブラリを作成します。新しいクラスを追加します(既に作成されているクラスライブラリテンプレートを使用する場合)。 名前がMainの静的メソッドを追加します。

    public class Class1 
    { 
        public static void Main() 
        { 
          // do your staff 
         } 
    } 
    

    プロジェクトをビルドした後、使用できるプロジェクト.exeファイルが生成されます。
    ウィンドウを隠す回避策の必要はありません。

    関連する問題