Click here to Skip to main content
15,902,636 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: php and VC++ compatible encryption algorithm???help please Pin
BaldwinMartin10-Nov-03 20:44
BaldwinMartin10-Nov-03 20:44 
GeneralRe: php and VC++ compatible encryption algorithm???help please Pin
geo_m11-Nov-03 8:03
geo_m11-Nov-03 8:03 
GeneralRe: php and VC++ compatible encryption algorithm???help please Pin
geo_m11-Nov-03 8:00
geo_m11-Nov-03 8:00 
GeneralOnSysChar Pin
Vancouver10-Nov-03 19:38
Vancouver10-Nov-03 19:38 
Generalgettin' jiggy with it Pin
closecall10-Nov-03 19:14
closecall10-Nov-03 19:14 
GeneralRe: gettin' jiggy with it Pin
RoyceF1-Dec-06 9:17
RoyceF1-Dec-06 9:17 
Generalto Pin
samhita10-Nov-03 18:39
samhita10-Nov-03 18:39 
GeneralDrag and Drop to WinXp Cd Wiz Takes a Wiz Pin
Swinefeaster10-Nov-03 18:15
Swinefeaster10-Nov-03 18:15 
Hi there,

I am trying to cache an CF_HDROP of filename handles, (to be dropping into the xp cd burning wizard). This used to work, but lately it stopped working (perhaps because of a Platform Sdk upgrade exposed something I was doing wrong). It works fine dropping to other apps like Nero, or even normal explorer windows.

Has anyone every implemented a Ole Drop Target that can be successfully dropped onto the winxp cd writing wizard window?

Is there anything I'm doing wrong in the following code? I can't seem to see it. I tried replacing "CacheData" with "CacheGlobalData", but still have problems. CacheGlobalData fails in a call to ::GlobalSize(). If CacheData is used, CCmdTarget::~CCmdTarget() fails an assertion, ASSERT(m_dwRef <= 1), and the files don't get copied in.

<br />
void <br />
cPkpCollectFinishWizardPage::OnBeginDragDragList(NMHDR* Header, LRESULT* <br />
 pResult) <br />
{<br />
   const cPkpCollection* Collection = GrabCollection();<br />
<br />
   if(Collection)<br />
   {<br />
      cFilenameChain FilenameChain;<br />
      Collection->GetDropFiles(FilenameChain);<br />
<br />
      if(!FilenameChain.IsVoid())<br />
      {<br />
         NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)Header;<br />
<br />
         int item = pNMListView->iItem;<br />
<br />
         cSimpleListControl* List = &m_DragList;<br />
         CString Label = List->GetItemText(item, 0);<br />
         int labelLength = Label.GetLength() + 1;   // add one for the NULL<br />
<br />
         DWORD bitmapId = BMP_PHOTO_IMAGE;<br />
<br />
         HDROP dropHandle = FilenameChain.ConstructDropped();<br />
<br />
         if(dropHandle)<br />
         {<br />
            // Allocate our data object<br />
            COleDataSource* DataSource = new COleDataSource;<br />
<br />
            STGMEDIUM StgMedium;<br />
            StgMedium.tymed = TYMED_HGLOBAL;<br />
            StgMedium.hGlobal = (HGLOBAL)dropHandle;<br />
            StgMedium.pUnkForRelease = NULL;<br />
<br />
            DataSource->CacheData(CF_HDROP, &StgMedium);<br />
<br />
            PostMessage(UM_PKP_HANDLE_BEGIN_DRAG, (UINT)DataSource, <br />
             item);<br />
         }<br />
      }<br />
   }<br />
<br />
   *pResult = 0;<br />
}<br />
<br />
LRESULT<br />
cPkpCollectFinishWizardPage::OnHandleBeginDrag(WPARAM wParam, LPARAM lParam) <br />
{<br />
   COleDataSource* DataSource = (COleDataSource*)wParam;<br />
<br />
   int item = lParam;<br />
<br />
   if(!DataSource)<br />
   {<br />
      // Bad wParam.<br />
      ASSERT(false);<br />
   }<br />
   else<br />
   {<br />
      cPoint Point;<br />
      cPoint ClientPoint;<br />
      GetCursorPos(&Point);<br />
<br />
      ClientPoint = Point;<br />
<br />
      cSimpleListControl* List = &m_DragList;<br />
      ScreenToClient(&ClientPoint);<br />
<br />
      DROPEFFECT result = DataSource->DoDragDrop(DROPEFFECT_MOVE|DROPEFFECT_COPY, <br />
          NULL, m_DropSource);<br />
      }<br />
<br />
      delete DataSource;<br />
      DataSource = NULL;<br />
   }<br />
<br />
   return NOTHING;<br />
}<br />
<br />
ConstructDropped() does a <br />
<br />
         DWORD globalDataLength = sizeof(DROPFILES) + filesLength;<br />
         globalHandle = ::GlobalAlloc(GPTR, globalDataLength);   <br />
         char* FilesData = (char*)::GlobalLock(globalHandle);<br />
                                              <br />
         DROPFILES* DropFiles = (DROPFILES*)FilesData;<br />
         DropFiles->fNC = false;<br />
         DropFiles->fWide = false;<br />
         DropFiles->pFiles = sizeof(DROPFILES);<br />
         DropFiles->pt.x = 0;<br />
         DropFiles->pt.y = 0;<br />
<br />
... and puts the strings in...<br />
code><br />
<br />
?<br />
<br />
Thanks in advance! <br />
<br />
[b]yte your digital photos with [ae]phid [p]hotokeeper - <a href="http:\\www.aephid.com\photokeeper-default-frame-codeproject.shtml">www.aephid.com</a>.

QuestionAny Experts Like to Challange This Questions??? Pin
percyvimal10-Nov-03 16:50
percyvimal10-Nov-03 16:50 
AnswerRe: Any Experts Like to Challange This Questions??? Pin
Dave Bryant10-Nov-03 17:08
Dave Bryant10-Nov-03 17:08 
GeneralRe: Any Experts Like to Challange This Questions??? Pin
percyvimal10-Nov-03 17:15
percyvimal10-Nov-03 17:15 
GeneralRe: Any Experts Like to Challange This Questions??? Pin
Dave Bryant10-Nov-03 17:24
Dave Bryant10-Nov-03 17:24 
GeneralRe: Any Experts Like to Challange This Questions??? Pin
percyvimal10-Nov-03 17:29
percyvimal10-Nov-03 17:29 
GeneralRe: Any Experts Like to Challange This Questions??? Pin
Antti Keskinen11-Nov-03 10:50
Antti Keskinen11-Nov-03 10:50 
GeneralIsWindow(m_hwnd) returns 0. Pin
suninwater10-Nov-03 16:48
suninwater10-Nov-03 16:48 
GeneralRe: IsWindow(m_hwnd) returns 0. Pin
Dave Bryant10-Nov-03 17:14
Dave Bryant10-Nov-03 17:14 
GeneralRe: IsWindow(m_hwnd) returns 0. Pin
suninwater10-Nov-03 19:24
suninwater10-Nov-03 19:24 
GeneralRe: IsWindow(m_hwnd) returns 0. Pin
Dave Bryant11-Nov-03 8:26
Dave Bryant11-Nov-03 8:26 
GeneralRe: IsWindow(m_hwnd) returns 0. Pin
MultiThread10-Nov-03 17:27
MultiThread10-Nov-03 17:27 
GeneralRe: IsWindow(m_hwnd) returns 0. Pin
Swinefeaster10-Nov-03 18:19
Swinefeaster10-Nov-03 18:19 
GeneralCDialogBar Background color Pin
asierra10-Nov-03 16:21
asierra10-Nov-03 16:21 
GeneralDesign opinions/help needed Pin
Steve Messer10-Nov-03 16:06
Steve Messer10-Nov-03 16:06 
GeneralRe: Design opinions/help needed Pin
Antti Keskinen11-Nov-03 11:21
Antti Keskinen11-Nov-03 11:21 
GeneralRe: Design opinions/help needed Pin
Steve Messer11-Nov-03 18:05
Steve Messer11-Nov-03 18:05 
GeneralRe: Design opinions/help needed Pin
Antti Keskinen12-Nov-03 8:25
Antti Keskinen12-Nov-03 8:25 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.