面白いことを調べていました。C# プログラムでクリップボードから画像を取得したいと考えています。
コードサンプル:
[STAThread]
public Image GetClipboardImage()
{
MessageBox.Show("try to get image");
Image returnImage = null;
if (Clipboard.ContainsImage())
{
MessageBox.Show("getting image");
returnImage = Clipboard.GetImage();
}
return returnImage;
}
任意の Web サイトからクリップボードにコピーされた画像を取得しようとすると、上記のコードは非常にうまく機能します。しかし、自分のコンピューターから画像をコピーしているときは機能しません (たとえば、デスクトップを意味します)。2 番目のケースでClipboard.ContainsImage()
返されます。false
Web からのコピーとデスクトップからのコピーのもう 1 つの違い: 最初のケースでは、画像をクリップボードからコンピューターのフォルダーに貼り付けることができません。もちろん、2番目のケースでも実行できます。2 番目のケースでは、1 つの実際の画像と、この画像を含む 1 つのファイルがあるようです。しかし、それができるかどうかはわかりません。
それで、私の状況の問題は何ですか、どうすれば解決できますか?