#include #include #include #include #include #include class App: public QObject { Q_OBJECT private: void main(); public: App(): QObject() { } public slots: void qtmain() { main(); emit finished(); } signals: void finished(); }; void App::main() { QClipboard *clip = QApplication::clipboard(); for(QString& formatName: clip->mimeData()->formats()) { std::string s; s = formatName.toStdString(); QByteArray arr = clip->mimeData()->data(formatName); printf("name=%s, size=%d: ", s.c_str(), arr.size()); for(int i = 0; i < arr.size(); i++) { printf("%02x ", (unsigned char) arr.at(i)); } printf("\n"); } } int main(int argc, char **argv) { QApplication app(argc, argv); App *task = new App(); QObject::connect(task, SIGNAL(finished()), & app, SLOT(quit())); QTimer::singleShot(0, task, SLOT(qtmain())); return app.exec(); } #include "xclipshow.moc"