如果有两个结构
StructA m_a; 
StructB m_b; CObList m_list;
m_list.AddTail( m_a );
m_list.AddTail( m_b );
如何将m_list存放到自定义的剪贴板中。或者不使用CObList,直接同时将两个或更多结构(或对象)数据同时存储到自定义的剪贴板中呢?

解决方案 »

  1.   

    传统Windows剪贴板编程   
        
      将数据复制到剪贴板:   
      1.调用OpenClipboard()设置数据的源窗口.   
      2.调用EmptyClipboard()清空剪贴板中以前的数据.   
      3.调用SetClipboardData()将数据存放到剪贴板上.   
      4.调用CloseClipboard()使别的窗口能访问剪贴板.   
      取得剪贴板上的数据:   
      1.调用OpenClipboard()访问剪贴板.   
      2.调用GetClipboardData()取得数据.   
      3.调用CloseClipboard()释放剪贴板.   
        
      使用延迟供应技术时,源数据方以NULL为数据句柄调用SetClipboardData(),数据使用方GetClipboardData()时,Windows向数据产生者发送WM_RENDERFORMAT和WM_RENDERFORMATS消息,数据提供者响应消息并产生数据.