• ベストアンサー

コンソールアプリでのクリップボードの使用について

C#のコンソールアプリでクリップボードが使用できないです VS 2008の環境でClipbordクラスを利用しています。そのため System.Windows.Forms(.dll)を設定しているのですが 実行時にオブジェクトの参照ができないようです。 具体的には、 IDataObject oData = Clipboard.GetDataObject(); を実施してもoDataはnullのままでした。 何か他に設定が必要なのでしょうか? ちなみに、フォームアプリではClipbordクラスで問題なく使用できました。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

[STAThreadAttribute] static void Main(string[] args) { Clipboard.SetText("hello"); string str = Clipboard.GetText(); Console.WriteLine(str); } これで一応の動作確認は取れましたが、エラーになったりならなかったりと非常に不安定です。 フォームアプリでは正常に動いたようですが、その時は偶然動いただけという可能性はないでしょうか?

D_matinori
質問者

お礼

ありがとうございます。 STAThread属性を付けたら動作しました。 フォームアプリはあらかじめついているので そのまま動作したようです。

関連するQ&A