Практическое руководство. Извлечение текста из буфера обмена (C++/CLI)
В следующем примере кода использована функция-член GetDataObject для возврата указателя на интерфейс IDataObject. У этого интерфейса можно затем запросить сведения о формате данных и использовать его для получения действительных данных.
Пример
// read_clipboard.cpp
// compile with: /clr
#using <system.dll>
#using <system.Drawing.dll>
#using <system.windows.forms.dll>
using namespace System;
using namespace System::Windows::Forms;
[STAThread] int main( )
{
IDataObject^ data = Clipboard::GetDataObject( );
if (data)
{
if (data->GetDataPresent(DataFormats::Text))
{
String^ text = static_cast<String^>
(data->GetData(DataFormats::Text));
Console::WriteLine(text);
}
else
Console::WriteLine("Nontext data is in the Clipboard.");
}
else
{
Console::WriteLine("No data was found in the Clipboard.");
}
return 0;
}