Re: C++/CLI COM component deployment

Tech-Archive recommends: Fix windows errors by optimizing your registry




"Volker Hetzer" <firstname.lastname@xxxxxxxx> wrote in message
news:epahpe$eji$1@xxxxxxxxxxxxxxxxxxxxxxxxxxx
Hi!
I've done my first little COM component (using the clr) and after signing,
regasm and gacutil I can call it from vbscript.
set X = createobject("ComComponent.Class1")
msgBox X.Testfunktion(2)


Well, you haven't really created a COM object. What you have done is create
a .NET object and wrapped it inside a COM interop. (Maybe I'm nitpicking).

But the problem we're facing is that for a real development of several
components (currently existing as scripting components) we need to be able
to call them by their path names. The situation is this:
We want to use those components to extend a PCB CAD tool.
At any time several users work with several projects, each CAD-Tool
session
works with one project only. We typically release our components first for
one project/user combination only and after this "beta" test for all
projects.
So, we have the following directory structure:
...\BETA.ComponentName.PCBName.Username
...\FINAL.ComponentName.ALL.ALL
Those directories sit in a shared network drive and we really can't afford
to register and "install" each component on each client PC. We will
release
very often, on average daily.

I'm looking for a way that lets me instantiate a component in VBScript
like this:
Dirname = figurOutDirName(ComponentName, PCBName,Username)
set X = createobject(Dirname&"\whatever.something")
X.myMethod(...)


Why not do it this way. Create two "COM objects", one that is beta and one
that is final. Each have different ProgID's and different GUID's

Then...

ProgId = figureOutProgId(ComponentName, PCBName, Username)
Set X = CreateObject (ProgId)




.



Relevant Pages

  • Re: C++/CLI COM component deployment
    ... I've done my first little COM component and after signing, regasm and gacutil I can call it from vbscript. ... ProgId = figureOutProgId ... And in the directory structure I find a description file with the correct ProgID? ... And can then the "figureOutProgId" function or component somehow browse the available shared assemblies? ...
    (microsoft.public.dotnet.languages.vc)
  • Re: Cannot instantiate .NET Class Library
    ... The ProgId was set to MyOrg.web.publications.Test and not testInterop.Test! ... > Have a look in the registry and find out what the InprocServer32 key looks ... ASP and vbscript are creating the object via its progid - is ... > problem is mscoree doesn't know where your class is so it tries to load ...
    (microsoft.public.dotnet.framework)
  • Re: CreateObject Failing
    ... The name used in the VB source sample isn't the progid; it just happens to look a lot like one. ... Open regedit and navigate to HKCR\CLSID ... Do a search for the dll name as data. ... sources in VC++ 7 and VB, but nothing in VBScript, so I tried to adapt ...
    (microsoft.public.scripting.vbscript)
  • Re: C++/CLI COM component deployment
    ... I've done my first little COM component and after signing, regasm and gacutil I can call it from vbscript. ... we have the following directory structure: ... to register and "install" each component on each client PC. ... Create a factory class in .NET which is exposed via COM, and contains a CreateComponentmethod. ...
    (microsoft.public.dotnet.languages.vc)
  • Re: C++/CLI COM component deployment
    ... we have the following directory structure: ... to register and "install" each component on each client PC. ... I'm looking for a way that lets me instantiate a component in VBScript ... Create a factory class in .NET which is exposed via COM, ...
    (microsoft.public.dotnet.languages.vc)