Edanmo Shell Extension: How to Install it?

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Pieter

    #1

    Edanmo Shell Extension: How to Install it?

    Hi,

    I'm trying to use the Edanmo Shell Extension Library
    (http://www.mvps.org/emorcillo/en/cod...tensions.shtml) to make
    a Context Menu in the Windows Explorer with VB.NET 2005. It seems realy easy
    to use this library:
    - I inherited from ContextMenuHand lerBase
    - I made the assembly COM-visible
    - Registered for COM interop

    But I don't always get what I want:
    - When I debug it, it nicely opens a Windows Explorer, and I can use my
    Shell Extension in that window. But when I debug again, I can't because the
    files in the bin-directory are write enabled!
    - I added a Setup project to it, installed it, and soemtimes it works,
    sometimes it doesn't. When I des-installed it, and isntalled it again, it
    didn't work anymore...

    I searched for it the whole day yesterday, and it really drives me crazy :-/
    What am I missing? Should I add something to the isntaller? Custom Actions
    after isntalling? Add and remove some registry-keys myself?

    Any help would be really apreciated!!!

    Thanks a lot in advance,

    Pieter


  • Mattias Sjögren

    #2
    Re: Edanmo Shell Extension: How to Install it?

    [color=blue]
    >I'm trying to use the Edanmo Shell Extension Library
    >(http://www.mvps.org/emorcillo/en/cod...tensions.shtml) to make
    >a Context Menu in the Windows Explorer with VB.NET 2005.[/color]

    Before you spend more time on this, you should think twice if you
    really want to do this in VB.NET. There are good reasons not to write
    shell extensions in managed code. See

    http://blogs.msdn.com/junfeng/archiv...18/494572.aspx

    [color=blue]
    >- When I debug it, it nicely opens a Windows Explorer, and I can use my
    >Shell Extension in that window. But when I debug again, I can't because the
    >files in the bin-directory are write enabled![/color]

    You should configure Explorer to launce each window in a separate
    process so you can simply close the window to release any loaded
    libraries.


    Mattias

    --
    Mattias Sjögren [C# MVP] mattias @ mvps.org
    http://www.msjogren.net/dotnet/ | http://www.dotnetinterop.com
    Please reply only to the newsgroup.

    Comment

    • Pieter

      #3
      Re: Edanmo Shell Extension: How to Install it?

      Hi,

      Thanks for the answer.
      It's alreaddy the second time that you warn me not to use VB.NET for a shell
      extension. This time with a reason why I shouldn't do it.
      I understand the problem, but what are the other options? 'm not a C++
      expert, so actually, the only solution you give me is not developing a shell
      extension...

      Is there somewhere out there an easy (and free!) shell extension library
      that can be easily adapted to my needs?
      And can I call in my shell extension a .NET class library once the users
      clicks the option without running the mentioned risk?

      Thanks,

      Pieter

      "Mattias Sjögren" <mattias.dont.w ant.spam@mvps.o rg> wrote in message
      news:Ol8W10zMGH A.1832@TK2MSFTN GP11.phx.gbl...[color=blue]
      >[color=green]
      >>I'm trying to use the Edanmo Shell Extension Library
      >>(http://www.mvps.org/emorcillo/en/cod...tensions.shtml) to
      >>make
      >>a Context Menu in the Windows Explorer with VB.NET 2005.[/color]
      >
      > Before you spend more time on this, you should think twice if you
      > really want to do this in VB.NET. There are good reasons not to write
      > shell extensions in managed code. See
      >
      > http://blogs.msdn.com/junfeng/archiv...18/494572.aspx
      >
      >[color=green]
      >>- When I debug it, it nicely opens a Windows Explorer, and I can use my
      >>Shell Extension in that window. But when I debug again, I can't because
      >>the
      >>files in the bin-directory are write enabled![/color]
      >
      > You should configure Explorer to launce each window in a separate
      > process so you can simply close the window to release any loaded
      > libraries.
      >
      >
      > Mattias
      >
      > --
      > Mattias Sjögren [C# MVP] mattias @ mvps.org
      > http://www.msjogren.net/dotnet/ | http://www.dotnetinterop.com
      > Please reply only to the newsgroup.[/color]


      Comment

      • Cor Ligthert [MVP]

        #4
        Re: Edanmo Shell Extension: How to Install it?

        Pieter,

        I am not sure of this, however Net is a from Win32 and WinFX independend OS
        layer.
        (Before the discussion starts, it uses parts of that, however know itself
        what parts).

        Using yourself expliciet parts of one of those which does maybe not exist in
        a version, makes it in my idea less easy to move in future.

        Just my thought,

        Cor


        Comment

        • Jim Barry

          #5
          Re: Edanmo Shell Extension: How to Install it?

          Pieter wrote:[color=blue]
          > I understand the problem, but what are the other options? 'm not a C++
          > expert, so actually, the only solution you give me is not developing
          > a shell extension...[/color]

          I think you will have to learn some C++ or get somebody else to write it for you.
          [color=blue]
          > Is there somewhere out there an easy (and free!) shell extension
          > library that can be easily adapted to my needs?[/color]

          I'm sure you will find some useful articles on CodeProject.
          [color=blue]
          > And can I call in my shell extension a .NET class library once the
          > users clicks the option without running the mentioned risk?[/color]

          No, all you can really do is launch a new .NET application.

          --
          Jim Barry, MVP (Windows SDK)

          Comment

          • Mattias Sjögren

            #6
            Re: Edanmo Shell Extension: How to Install it?

            >It's alreaddy the second time that you warn me not to use VB.NET for a shell[color=blue]
            >extension.[/color]

            Sorry, didn't mean to nag about it. It's just a recommendation I post
            whenever I see people attempting this, hopefully to prevent them to
            shoot themselves in the foot.

            I think Jim answered your other questions.


            Mattias

            --
            Mattias Sjögren [C# MVP] mattias @ mvps.org
            http://www.msjogren.net/dotnet/ | http://www.dotnetinterop.com
            Please reply only to the newsgroup.

            Comment

            • Pieter

              #7
              Re: Edanmo Shell Extension: How to Install it?

              No problems. Sorry myelf too, I was just getting a little bit frustrated not
              finding any solutions, hehe.

              Although, do you think that it could be a problem in my situation:
              - only for inside the company
              - only 2.0 .NET framework-applications

              "Mattias Sjögren" <mattias.dont.w ant.spam@mvps.o rg> wrote in message
              news:%23S6yNGON GHA.2828@TK2MSF TNGP12.phx.gbl. ..[color=blue][color=green]
              > >It's alreaddy the second time that you warn me not to use VB.NET for a
              > >shell
              >>extension.[/color]
              >
              > Sorry, didn't mean to nag about it. It's just a recommendation I post
              > whenever I see people attempting this, hopefully to prevent them to
              > shoot themselves in the foot.
              >
              > I think Jim answered your other questions.
              >
              >
              > Mattias
              >
              > --
              > Mattias Sjögren [C# MVP] mattias @ mvps.org
              > http://www.msjogren.net/dotnet/ | http://www.dotnetinterop.com
              > Please reply only to the newsgroup.[/color]


              Comment

              Working...