スクリーンショットを取得し、ウィンドウを表示せずに保存する簡単なプログラムを作成したいと考えています。通常のWindowsフォームアプリケーションVisual Studioで "隠し"ユーティリティを作成するのにどのタイプのプロジェクトを使うべきですか?
- と私はコンソールアプリケーション
- に
- 何かをウィンドウを非表示にする必要があります - ?エレメントの種類は、私が使用する必要がない
?
スクリーンショットを取得し、ウィンドウを表示せずに保存する簡単なプログラムを作成したいと考えています。通常のWindowsフォームアプリケーションVisual Studioで "隠し"ユーティリティを作成するのにどのタイプのプロジェクトを使うべきですか?
?
は、ここでも簡単な解決策だ だけでウィンドウを非表示にします。
から
両方を使用できます。私は特に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);
}
うん、 "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
ジョブに適切なツールを使用します。
空のプロジェクトまたはクラスライブラリを作成します。新しいクラスを追加します(既に作成されているクラスライブラリテンプレートを使用する場合)。 名前がMain
の静的メソッドを追加します。
public class Class1
{
public static void Main()
{
// do your staff
}
}
プロジェクトをビルドした後、使用できるプロジェクト.exeファイルが生成されます。
ウィンドウを隠す回避策の必要はありません。
いずれのプロジェクトタイプでも起動できます。どちらも有効なWindowsアプリケーションを作成します。フォームアプリケーションが簡単になります:フォームを作成して 'Main()'に表示するだけで、Main()のコードをスクリーンキャプチャに置き換えることはできません。 – dlatikay