Results 1 to 10 of 10

Thread: A solution for registration-free COM libraries

  1. #1

    Thread Starter
    Hyperactive Member Daniel Duta's Avatar
    Join Date
    Feb 2011
    Location
    Bucharest, Romania
    Posts
    396

    A solution for registration-free COM libraries

    Does anyone know a reliable tool that could generate manifest files for COM libraries ? So far I found a tool Make My Manifest made years ago by a guy Bob Riemersma but I am not sure if it is still compatible with Windows 10. I suppose it is the unique method to use ocx files without register them.
    "VB code is practically pseudocode" - Tanner Helland
    "When you do things right, people won't be sure you've done anything at all" - Matt Groening
    "If you wait until you are ready, it is almost certainly too late" - Seth Godin
    "Believe nothing you hear, and only one half that you see" - Edgar Allan Poe

  2. #2
    PowerPoster
    Join Date
    Aug 2010
    Location
    Canada
    Posts
    2,412

    Re: A solution for registration-free COM libraries

    I use wqweto's UMMM.

  3. #3

    Thread Starter
    Hyperactive Member Daniel Duta's Avatar
    Join Date
    Feb 2011
    Location
    Bucharest, Romania
    Posts
    396

    Re: A solution for registration-free COM libraries

    It is not very clear to me how to use it. I see a main module there called mdUmmm.bas but I do not understand how the ini file is created outside. Should I compile that module in my project ? Or should I fill the ini file using the commands Identity, Dependency and File according with my project structure?
    "VB code is practically pseudocode" - Tanner Helland
    "When you do things right, people won't be sure you've done anything at all" - Matt Groening
    "If you wait until you are ready, it is almost certainly too late" - Seth Godin
    "Believe nothing you hear, and only one half that you see" - Edgar Allan Poe

  4. #4
    PowerPoster wqweto's Avatar
    Join Date
    May 2011
    Location
    Sofia, Bulgaria
    Posts
    5,120

    Re: A solution for registration-free COM libraries

    Quote Originally Posted by Daniel Duta View Post
    It is not very clear to me how to use it. I see a main module there called mdUmmm.bas but I do not understand how the ini file is created outside. Should I compile that module in my project ? Or should I fill the ini file using the commands Identity, Dependency and File according with my project structure?
    You can grab latest exe from release tab of the github repository. It's a command line utility so if black terminals are not your favorite this will suck big time.

    Check out the README in repo's root on how to provide an ini file configuration with instructions for final manifest compilation.

    Btw, MMM's author is registered here as dilletante and you might recognize him. He used to be very unhappy than UMMM ripped MMM groaning name/description -- only sounding a bit deeper :-))

    cheers,
    </wqw>

  5. #5

    Thread Starter
    Hyperactive Member Daniel Duta's Avatar
    Join Date
    Feb 2011
    Location
    Bucharest, Romania
    Posts
    396

    Re: A solution for registration-free COM libraries

    Thank you, wqweto. Still I do not understand the steps properly. So, there is a folder somewhere called Work where the exe file is hosted. In the same folder I should have (I suppose) other additional files:
    - myProj.exe
    - myAx.ocx
    - myIniFile.ini
    - UMMM.exe
    The myIniFile.ini contains (does contain ?) 2 commands : Identity C:\Work\myProj.exe and File myAx.ocx
    Now, if I execute the UMMM.exe both myIniFile.ini and myProj.exe remain unchanged and when I deploy the project in other PC (first 3 files) the myProj.exe is screaming that myAx.ocx is not registered. What is wrong?
    "VB code is practically pseudocode" - Tanner Helland
    "When you do things right, people won't be sure you've done anything at all" - Matt Groening
    "If you wait until you are ready, it is almost certainly too late" - Seth Godin
    "Believe nothing you hear, and only one half that you see" - Edgar Allan Poe

  6. #6

    Thread Starter
    Hyperactive Member Daniel Duta's Avatar
    Join Date
    Feb 2011
    Location
    Bucharest, Romania
    Posts
    396

    Re: A solution for registration-free COM libraries

    Update: I have just tried the Bob's MMM tool and it seems that it is still functional even the latest update is from April 2013. It was a pleasant surprise to see that myProj.exe.manifest worked in the target machine without any error. It's a little weird to me that this small and useful tool isn't promoted enough (especially it has a friendly interface and it is well documented). Not even in the author's signature - if it is true that his alias is diletantte. At the moment I do not understand, in terms of results, if there is any difference or advantage between MMM and UMMM but my need was to be able to deploy a COM lib without registration.
    "VB code is practically pseudocode" - Tanner Helland
    "When you do things right, people won't be sure you've done anything at all" - Matt Groening
    "If you wait until you are ready, it is almost certainly too late" - Seth Godin
    "Believe nothing you hear, and only one half that you see" - Edgar Allan Poe

  7. #7
    PowerPoster wqweto's Avatar
    Join Date
    May 2011
    Location
    Sofia, Bulgaria
    Posts
    5,120

    Re: A solution for registration-free COM libraries

    The name of UMMM is Unattended MMM i.e. it's an utility to be used in unattended builds of some large applications.

    Large applications have many inter-dependant VBP and .Net projects. For instance an Std-EXE can reference an ActiveX-DLL and both of these can get compiled as part of the application full build. So the ActiveX-DLL is not static like mshflxgd.ocx binary -- it's compiled in current build too. But when this ActiveX-DLL break binary compatibility it gets new GUIDs for every coclass/interface and that's why the final Std-EXE manifest has to be "recreated" (re-compiled) as part of the build process.

    This is the raison d'ĂȘtre of this utility. It's not user friendly and it's aimed at software engineers that are able to create manifests manually but would like to automate the process as part of large application continuous integration.

    For a GUI based utility you can try Manifest Creator II too.

    cheers,
    </wqw>

  8. #8

    Thread Starter
    Hyperactive Member Daniel Duta's Avatar
    Join Date
    Feb 2011
    Location
    Bucharest, Romania
    Posts
    396

    Re: A solution for registration-free COM libraries

    Well, in my previous post I just asked for a few details to make it work. How is triggered UMMM.exe and how should look like the folder of the exe file? Regarding the Manifest Creator 2 I wasn't able to open it, receiving an error in the pvGetWSnode function (Set tNode = tvItems.Nodes("ws." & sCaption) ...Element not found).
    "VB code is practically pseudocode" - Tanner Helland
    "When you do things right, people won't be sure you've done anything at all" - Matt Groening
    "If you wait until you are ready, it is almost certainly too late" - Seth Godin
    "Believe nothing you hear, and only one half that you see" - Edgar Allan Poe

  9. #9
    PowerPoster wqweto's Avatar
    Join Date
    May 2011
    Location
    Sofia, Bulgaria
    Posts
    5,120

    Re: A solution for registration-free COM libraries

    Quote Originally Posted by Daniel Duta View Post
    Well, in my previous post I just asked for a few details to make it work.
    I doubt I can help any more if you cannot figure out how it works from the project's README and probably this tool is too complicated for your uses anyway.

    cheers,
    </wqw>

  10. #10
    Hyperactive Member
    Join Date
    Jul 2020
    Posts
    370

    Re: A solution for registration-free COM libraries

    I tried using MMM to isolate one of my programs. After selecting .vbp got the message:
    "Library hard-excluded by MMM:

    Library = stdole2
    Description = <type library>
    File location =
    Typelib ID = {00020430-0000-0000-C000-000000000046}
    Version = 0.0
    Source = "VBP""
    Launched the program from the MMMPack folder on another computer. Got message File not found! without specifying the name of the not found file.
    Last edited by Argus19; Jan 22nd, 2021 at 11:14 AM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width