Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2010-11

Windows Explorer context menu plug-in with fpc?

10 messages · 4 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Bo Berglund

Is it possible to make a Windows Explorer plug-in DLL using FPC/Lazarus?
What I mean is the type where you see a submenu in the rightclick menu in Explorer like for example TortoiseSVN displays. As far as I have understood Win7x64 requires the plug-in to be 64 bit so it cannot be done in Delphi yet, but maybe wit FPC?

Then again, I have noted on my Win7x64 machine that both TortioiseSVN and notepad++ integrate this way even though seem to be 32 bit applications. How is that done? Did they create a 64 bit dll for the plug-in, which in turn can call the 32 bit program?

Any insight in this is appreciated.
And I am not good at reading C++ so what I am after is sime pascal solution...

Bo Berglund Developer in Sweden

Reply by email

Sven Barth
to Bo Berglund
Bo Berglund wrote 12 lines
Is it possible to make a Windows Explorer plug-in DLL using FPC/Lazarus? What I mean is the type where you see a submenu in the rightclick menu in Explorer like for example TortoiseSVN displays. As far as I have understood Win7x64 requires the plug-in to be 64 bit so it cannot be done in Delphi yet, but maybe wit FPC? Then again, I have noted on my Win7x64 machine that both TortioiseSVN and notepad++ integrate this way even though seem to be 32 bit applications. How is that done? Did they create a 64 bit dll for the plug-in, which in turn can call the 32 bit program?

I'd say, yes they did.

Show quoted text 5 lines
Any insight in this is appreciated. And I am not good at reading C++ so what I am after is sime pascal solution...

In theory you should be able to rely on the tutorials for Delphi as the COM implementation should be good enough for that with FPC now. (and there isn't that much difference in COM regarding 32 and 64 bit... only the DLL has to have the correct bitness to be loaded)

Regards,
Sven

Reply by email

Paul Breneman
to Bo Berglund: Is it possible to make a Windows Explorer plug-in DLL using FPC/Lazarus? What I mean is…
Bo Berglund wrote 15 lines
Is it possible to make a Windows Explorer plug-in DLL using FPC/Lazarus? What I mean is the type where you see a submenu in the rightclick menu in Explorer like for example TortoiseSVN displays. As far as I have understood Win7x64 requires the plug-in to be 64 bit so it cannot be done in Delphi yet, but maybe wit FPC? Then again, I have noted on my Win7x64 machine that both TortioiseSVN and notepad++ integrate this way even though seem to be 32 bit applications. How is that done? Did they create a 64 bit dll for the plug-in, which in turn can call the 32 bit program? Any insight in this is appreciated. And I am not good at reading C++ so what I am after is sime pascal solution...

Embarcadero's web site seems to be down at the moment, but there is a little copied from a message on one of there forums from 1 Feb 2010:

At http://cc.embarcadero.com/Item/27554 you can find the source code for a shell extension which can be compiled to a 64bit library using Free Pascal / Lazarus. The source code is compatible with Delphi 7 and better, too.

If you don't already use www.codenewsfast.com you might search on it for "explorer shell extension 64" and you'll find several threads about this.

Reply by email

Bo Berglund
to Paul Breneman
Paul Breneman wrote 10 lines
Embarcadero's web site seems to be down at the moment, but there is a little copied from a message on one of there forums from 1 Feb 2010: At http://cc.embarcadero.com/Item/27554 you can find the source code for a shell extension which can be compiled to a 64bit library using Free Pascal / Lazarus. The source code is compatible with Delphi 7 and better, too. If you don't already use www.codenewsfast.com you might search on it for "explorer shell extension 64" and you'll find several threads about this.

This site found the posting and it is located in newsgroup: embarcadero.public.delphi.thirdpartytools.general
I am keeping many of these newsgroups in my Free Agent archive, but unfortunately I did not subscribe to this particular one before, so i need to connect to embarcadero to geth the update and now it seems like they have shut down the site (maybe it is the scheduled server maintenance on Nov 19, 7PM Pacific that has kicked in early?).

The post references the link above and it is dead at the moment... Just have to wait, I guess.

Bo Berglund Developer in Sweden

Reply by email

Thierry B.
to Bo Berglund

Le 19/11/2010 15:48, Bo Berglund a ?crit :

Show quoted text 24 lines
On Fri, 19 Nov 2010 07:45:51 -0600, Paul Breneman wrote: > Embarcadero's web site seems to be down at the moment, but there is a > little copied from a message on one of there forums from 1 Feb 2010: > > At http://cc.embarcadero.com/Item/27554 you can find the source code for > a shell extension which can be compiled to a 64bit library using Free > Pascal / Lazarus. The source code is compatible with Delphi 7 and > better, too. > > If you don't already use www.codenewsfast.com you might search on it for > "explorer shell extension 64" and you'll find several threads about this. This site found the posting and it is located in newsgroup: embarcadero.public.delphi.thirdpartytools.general I am keeping many of these newsgroups in my Free Agent archive, but unfortunately I did not subscribe to this particular one before, so i need to connect to embarcadero to geth the update and now it seems like they have shut down the site (maybe it is the scheduled server maintenance on Nov 19, 7PM Pacific that has kicked in early?). The post references the link above and it is dead at the moment... Just have to wait, I guess.

http://demo.ovh.com/zip/12d5e9bc202817635121fca08623e95b

Reply by email

Bo Berglund
to Bo Berglund: On Fri, 19 Nov 2010 07:45:51 -0600, Paul Breneman This site found the posting and it is…
Bo Berglund wrote 24 lines
On Fri, 19 Nov 2010 07:45:51 -0600, Paul Breneman wrote: >Embarcadero's web site seems to be down at the moment, but there is a >little copied from a message on one of there forums from 1 Feb 2010: > >At http://cc.embarcadero.com/Item/27554 you can find the source code for >a shell extension which can be compiled to a 64bit library using Free >Pascal / Lazarus. The source code is compatible with Delphi 7 and >better, too. > >If you don't already use www.codenewsfast.com you might search on it for >"explorer shell extension 64" and you'll find several threads about this. This site found the posting and it is located in newsgroup: embarcadero.public.delphi.thirdpartytools.general I am keeping many of these newsgroups in my Free Agent archive, but unfortunately I did not subscribe to this particular one before, so i need to connect to embarcadero to geth the update and now it seems like they have shut down the site (maybe it is the scheduled server maintenance on Nov 19, 7PM Pacific that has kicked in early?). The post references the link above and it is dead at the moment... Just have to wait, I guess.

--- Following reply has been hanging in my out-box for a few days ---

I continued my search and lo-and-behold! I found this link: http://www.gnostice.com/nl_article.asp?id=168&t=Copy_File_Path_and_Name_using_Windows_Explorer_Context_Menu_Extensions or as tiny:
http://tinyurl.com/33yu62g

There was explained what position in the registry to use in order to integrate your command to the Explorer context menu. And it works! I have now added UltraEdit and one of my own utilities to the pop-up menu in Explorer. :-D

Now I only want to know how to expand this into having a multi-line menu to the right of the pop-up menu.

But it looks like there is some hope also here, because there is an example delivered with Delphi7 (and probably also in later versions) in the Demos folder:
$DELPHI\Demos\ActiveX\ShellExt
This has an example, which I have as yet not opened, on how to make a plug-in dll probably with menus.
Of course once embarcadero wakes up I can look at that link too for the FPC compatible code.

Bo Berglund Developer in Sweden

Reply by email

Paul Breneman
to Bo Berglund
Bo Berglund wrote 13 lines
On Fri, 19 Nov 2010 15:48:07 +0100, Bo Berglund wrote: > On Fri, 19 Nov 2010 07:45:51 -0600, Paul Breneman > wrote: > >> Embarcadero's web site seems to be down at the moment, but there is a >> little copied from a message on one of there forums from 1 Feb 2010: >> >> At http://cc.embarcadero.com/Item/27554 you can find the source code for >> a shell extension which can be compiled to a 64bit library using Free >> Pascal / Lazarus. The source code is compatible with Delphi 7 and >> better, too.

...

Of course once embarcadero wakes up I can look at that link too for the FPC compatible code.

It is working for me and has been for the past day or two.

Reply by email

Thierry B.
to Bo Berglund: On Fri, 19 Nov 2010 15:48:07 +0100, Bo Berglund --- Following reply has been hanging in…

Le 22/11/2010 20:30, Bo Berglund a ?crit :

Show quoted text 52 lines
On Fri, 19 Nov 2010 15:48:07 +0100, Bo Berglund wrote: > On Fri, 19 Nov 2010 07:45:51 -0600, Paul Breneman > wrote: > >> Embarcadero's web site seems to be down at the moment, but there is a >> little copied from a message on one of there forums from 1 Feb 2010: >> >> At http://cc.embarcadero.com/Item/27554 you can find the source code for >> a shell extension which can be compiled to a 64bit library using Free >> Pascal / Lazarus. The source code is compatible with Delphi 7 and >> better, too. >> >> If you don't already use www.codenewsfast.com you might search on it for >> "explorer shell extension 64" and you'll find several threads about this. > > This site found the posting and it is located in newsgroup: > embarcadero.public.delphi.thirdpartytools.general > I am keeping many of these newsgroups in my Free Agent archive, but > unfortunately I did not subscribe to this particular one before, so i > need to connect to embarcadero to geth the update and now it seems > like they have shut down the site (maybe it is the scheduled server > maintenance on Nov 19, 7PM Pacific that has kicked in early?). > > The post references the link above and it is dead at the moment... > Just have to wait, I guess. --- Following reply has been hanging in my out-box for a few days --- I continued my search and lo-and-behold! I found this link: http://www.gnostice.com/nl_article.asp?id=168&t=Copy_File_Path_and_Name_using_Windows_Explorer_Context_Menu_Extensions or as tiny: http://tinyurl.com/33yu62g There was explained what position in the registry to use in order to integrate your command to the Explorer context menu. And it works! I have now added UltraEdit and one of my own utilities to the pop-up menu in Explorer. :-D Now I only want to know how to expand this into having a multi-line menu to the right of the pop-up menu. But it looks like there is some hope also here, because there is an example delivered with Delphi7 (and probably also in later versions) in the Demos folder: $DELPHI\Demos\ActiveX\ShellExt This has an example, which I have as yet not opened, on how to make a plug-in dll probably with menus. Of course once embarcadero wakes up I can look at that link too for the FPC compatible code.

Do you donwloaded the zip at url I posted herre yesterday ? You have the complete thread as well as the source project.

Thierrybo

Reply by email

Bo Berglund
to Thierry B.
"Thierry B." wrote 9 lines
>>> >>> At http://cc.embarcadero.com/Item/27554 you can find the source code for >>> a shell extension which can be compiled to a 64bit library using Free >>> Pascal / Lazarus. The source code is compatible with Delphi 7 and >>> better, too. Do you donwloaded the zip at url I posted herre yesterday ? You have the complete thread as well as the source project.

Yes, thanks!
I also pointed my newsreader to the thirdpartytools.general newsgroup at emarcadero and retrieved all available 27000+ messages incl. bodies...
I found the discussion from early 2010 already.

I also downloaded the Delphi/Fpc project in the zipfile, so it is now sitting in my PC.
Next step is to read up on how I can tell Lazarus to compile for Windows X64 to get the 64 bit version of the DLL... (I'm new to Lazarus)

Bo Berglund Developer in Sweden

Reply by email

Paul Breneman
to Bo Berglund
Bo Berglund wrote 23 lines
On Tue, 23 Nov 2010 13:07:39 +0100, "Thierry B." wrote: >>>> At http://cc.embarcadero.com/Item/27554 you can find the source code for >>>> a shell extension which can be compiled to a 64bit library using Free >>>> Pascal / Lazarus. The source code is compatible with Delphi 7 and >>>> better, too. > Do you donwloaded the zip at url I posted herre yesterday ? You have the > complete thread as well as the source project. > Yes, thanks! I also pointed my newsreader to the thirdpartytools.general newsgroup at emarcadero and retrieved all available 27000+ messages incl. bodies... I found the discussion from early 2010 already. I also downloaded the Delphi/Fpc project in the zipfile, so it is now sitting in my PC. Next step is to read up on how I can tell Lazarus to compile for Windows X64 to get the 64 bit version of the DLL... (I'm new to Lazarus)

Just a thought, but I don't think you need to go to all that bother. The example code on the embarcadero site doesn't seem to require Lazarus. It just uses a Windows MessageBox for the dialog in the example. I could be wrong but I think a 64 bit FPC compiler is all you need.

Would you be interested in maybe helping me just a little to make a 64-bit FPC minimal distro that would compile that example code? I've been using more Linux and less Windows the past few years so right now I don't have a 64 bit Windows to test with.

Reply by email