flat assembler
Message board for the users of flat assembler.

Index > Windows > RightClick Close CDRom...

Author
Thread Post new topic Reply to topic
semiono



Joined: 31 Aug 2007
Posts: 198
Location: section '.code' executable
semiono 31 Aug 2007, 02:44
Please, help me! Maybe source is ready ago?...
I'm newbe and I want learn fasm...
The Open/Close Right-clicked CDRom is really useful for me.
I found only SysTray software by Aquila on masm32...
And somes by win95 (

_________________
Windows 9, FL Studio 19
Post 31 Aug 2007, 02:44
View user's profile Send private message Reply with quote
ManOfSteel



Joined: 02 Feb 2005
Posts: 1154
ManOfSteel 31 Aug 2007, 06:23
What exactly do you want to do?
Do you want a program to open and close the CD player's door? Do you want it in the system tray or what?
Anyway, you can use MCI strings for that. There's already an example in FASM (beer). To close the door, you can simply use 'set cdaudio door closed' instead. There's plenty information about MCI on MSDN.
If you want it in the system tray, Iczelion's Tutorial 23 will be useful. The example is very easy to convert to FASM. If you have trouble, just ask.
Hope this helps.
Post 31 Aug 2007, 06:23
View user's profile Send private message Reply with quote
semiono



Joined: 31 Aug 2007
Posts: 198
Location: section '.code' executable
semiono 31 Aug 2007, 09:58
Thanks!
I see one trouble that me need get it from explorer contecst menu the
right click on the drive letters...
And more It's should be the DLL formats... per example
rundll32 ...\system32\cdclose.dll installable.

Beer is an exe program
Tutorial 23: Tray Icon - no! Exactly not need SysTray... Smile

> "The example is very easy to convert to FASM."
Manuality? I still not ready...

Ok I try thik about it.
Post 31 Aug 2007, 09:58
View user's profile Send private message Reply with quote
ManOfSteel



Joined: 02 Feb 2005
Posts: 1154
ManOfSteel 31 Aug 2007, 12:27
A shell extension is not really the best way for a newbie to begin programming and it's quite a high-level programming subject.

First learn how to program a DLL -- like how to export DLL functions (check FASM DLL example for that). For shell extensions you should export DllEntryPoint, DllRegisterServer, DllUnregisterServer and DllCanUnloadNow.

Then you need to learn (at the very least) the basics of COM programming (classes, objects, interfaces, methods implementation, etc).

At this point you should be able to implement interfaces and methods (MSDN has all the information you need for that).
You will need to implement the following methods:
IClassFactory::QueryInterface
IClassFactory::AddRef
IClassFactory::Release
IClassFactory::CreateInstance
IClassFactory::LockServer
IShellExtInit::QueryInterface
IShellExtInit::AddRef
IShellExtInit::Release
IShellExtInit::Initialize
IContextMenu::QueryInterface
IContextMenu::AddRef
IContextMenu::Release
IContextMenu::QueryContextMenu
IContextMenu::InvokeCommand
IContextMenu::GetCommandString
Post 31 Aug 2007, 12:27
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.