Custom drawn system menu (like Winamp3)

Win32 Programming


  • 1. Determine version of installed msdn library?
    Indy a crit: > How do I programatically determine the version of msdn library installed on my comp? Collection file => HKLM\Software\Microsoft\HTML Help Collections\Developer Collections\...
  • 2. Window control
    Hi All, I have a top level application window handle HWND. This is the handle to the top level window of an application like word or coreldraw. The main frame has many child windows.I have 2 documents open and they are in 2 seperate windows, one of those windows is active and other not. My question is in what order does EnumWindows calls the EnumWindowProc. Is it based on the z-order? for e.g:- If one of the child window is over the other child window, Am I gauranteed to get the top one before the other or viceversa consistently. Another question:- I am not sure if EnumThreadWindows is going to help. If I do GetWindowThreadProcessId(...) on the top level application window and after that I do GetWindowThreadInfo(...), Will I be gauranteed that in an MDI I will get the document windows in the threadinfo structure. thank you vipin
  • 3. Windows XP visual styles
    My program is not using Windows XP visual styles (Coctl32.dll version 6). I followed the instructions in the Platform SDK and (included commctrl.h) called "InitCommonControls" linked to comctl32.lib and also linked the manifest file as a resource, but it still isn't working. It only works when I place the manifest file in the same directory as the program. Thnaks for any help.
  • 4. Drag and drop and IAsyncOperation problems
    Hello, I'm developing db-based document management system. Currently I'm trying to implement adding documents to the system through drag and drop from Windows Explorer. This is quite lengthy operation involving some user input in wizard that appears. So I decided to use IAsyncOperation explosed by explorer's IDataObject. The following problems occured (Win2K SP3): 1. IAsyncOperation->GetAsyncMode() returns TRUE but not VARIANT_TRUE as noted in MSDN 2. When I'm even not using asynchronous drag and drop some file managers do not remove files if I set pdwEffect to DROPEFFECT_MOVE and set CFSTR_PERFORMEDDROPEFFECT format to the same value. Explorer deletes files but, for example, Windows Commander doesn't 3. In asynchronous drag and drop mode I set CFSTR_PERFORMEDDROPEFFECT format to DROPEFFECT_MOVE and call IAsyncOperation::EndOperation(S_OK, NULL, DROPEFFECT_MOVE). Everything works fine but Windows Explorer doesn't delete files :( Adding files is made in the new spawned thread (from IDataObject::Drop method) as well as CFSTR_PERFORMEDDROPEFFECT and EndOperation. IDataObject interface pointer is marshalled through CoMarshalInterThreadInterfaceInStream/CoGetInterfaceAndReleaseStream. No AddRef/Release is performed (is this correct?). IAsyncOperation::BeginOperation is called before spawning the thread Any help is highly desired.
  • 5. Programmatic control of NT Scheduled Tasks
    Hi all, I'm developing an application that needs to add, delete, run, etc tasks in the NT Task Scheduler. It runs on NT, XP etc etc. I've got it listing, running and deleting scheduled tasks but am having problems adding new tasks. I'm developing in MSVC++ 6 and using COM to communicate to the task scheduler API. Specifically, I have a wizard which uses 2 pages from the NT Task Scheduler property sheet. On the first wizard page, the user sets the application specific details and the wizard generates the task details - name, executable and parameters, then the wizard loads 2 pages from the NT Task Scheduler property sheet to allow the user to set the schedule for the task. The problems I have are when the wizard finishes: the task has been saved but not the schedule. I also get an access violation at this point. Can anyone here help? If so, I'll post more details. --- Al.

Custom drawn system menu (like Winamp3)

Postby Dan » Fri, 04 Jul 2003 18:25:46 GMT


We are trying to create a window with a system menu 
completely customized (and custom drawn) like Winamp3 has.
If I could disable the system menu, I could handle some 
windows messages to display a custom window that will act 
as my custom menu.
I can disable the standard system menu by intercepting 
some messages in WndProc (WM_ENTERMENULOOP, WM_SYSCOMMAND, 
works only when clicking on the titlebar, it doesn't work 
when rightclicking on the taskbar button of the 
So the thing is I cannot disable that standard menu and 
replace it with my own window that will act as a menu.
A short example should be enough, but I cant find it... :-(


P.S. Also I cant seem to find out how to set an icon and a 
system menu to the taskbar button of a window that doesn't 
have a titlebar, but that's a different one :)

Re: Custom drawn system menu (like Winamp3)

Postby pollux2008 » Sat, 05 Jul 2003 20:46:33 GMT

through spy++,you can see,a message which number is 0x313 
will sended when you rightclicking on the taskbar button 
of the application.

you can add WS_SYSMENU style to you window

Re: Custom drawn system menu (like Winamp3)

Postby Plugware » Tue, 22 Jul 2003 03:41:47 GMT

See the article on CodeGuru re bitmap captions and my response to it, as the
principles are the same.



Return to Win32 Programming


Who is online

Users browsing this forum: No registered users and 52 guest