我已经研究了预定义的剪贴板格式,而我无法解释的一种是音频流二进制格式,我不知道要复制什么内容,因此我的剪贴板将包含一段二进制音频数据。在C#和托管C++中,剪贴板类也具有这种格式。您能否解释一下并提供此类数据的示例。另外,我想知道为什么没有任何视频数据格式。谢谢
最佳答案
CF_WAVE剪贴板格式只是一个.wav文件。如果将.wav文件加载到内存中,则可以使用如下代码将其复制到剪贴板:
DWORD BytesRead;
void* pFData = GlobalLock(hFData);
if (ReadFile(hFile,pFData,GetFileSize(hFile,NULL),&BytesRead,NULL) == FALSE)
{
ErrCode = E_FILE_READ;
}
GlobalUnlock(hFData);
...
if (OpenClipboard(NULL))
{
EmptyClipboard();
if (SetClipboardData(CF_WAVE,hFData) == NULL)
{
GlobalFree(hFData);
}
CloseClipboard();
}
else
{
在这里,hFile WAV文件句柄。
关于c++ - 音频数据?我需要一个典型的例子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8110362/