SourceForge.jp

dkutilClipBoardManager.h

説明を見る。
00001 
00002 #ifndef _dkutilClipBoard__h_
00003 #define _dkutilClipBoard__h_
00004 
00005 #include "dKingyoMacro.h"
00006 #include "dkutilDefinedC.h"
00007 #include "dkutilBuffer.h"
00008 
00009 
00010 
00011 
00012 namespace dkutil{
00013 
00014 
00015 
00016 class ClipBoardManager{
00017 protected:
00025 
00026 
00027     bool GetClipboardText(char *pstrMemory,DWORD size)
00028     {
00029         HANDLE hText;
00030         //char *pText;
00031         bool f=true;
00032         if(TRUE==OpenClipboard(NULL))
00033             return false;
00034 
00035         hText = GetClipboardData(CF_TEXT);
00036         if(hText == NULL){
00037             f=false;
00038             CloseClipboard();
00039             return f;
00040         }
00041         
00042         LPSTR m;
00043         m= (LPSTR)GlobalLock(hText);
00044         if(m!=NULL){
00045             // テキストオブジェクトからデータを取得
00046             strncpy(pstrMemory, m,size);
00047             GlobalUnlock(m);
00048             CloseClipboard();
00049         }   
00050             
00051         
00052         return f;   
00053 
00054     }
00055 public:
00056     ClipBoardManager(){}
00057     virtual ~ClipBoardManager(){}
00063 
00064     bool GetText(char *buff,size_t size){
00065         scoped_globalalloc_buffer buff(size);
00066 
00067         if(false==GetClipboardText(buff,buff.size())){
00068             return false;
00069         }
00070         if(DKUTIL_FAILED(dkstrcpy_amap(buff,size,
00071             buff.get(),
00072             strlen(buff.get())
00073             )))
00074         {
00075             return false;
00076         }
00077         return true;
00078     }
00079 
00080 };
00081 
00082 
00083 
00084 
00085 }//end of dkutil namespace
00086 
00087 #endif //end of include once
00088 

dkutil 1.02リリース前 d金魚専用マニュアルバージョンに対してSun Dec 28 21:23:07 2003に生成されました。 doxygen 1.3.5