Registering DLL in COM Services

Hi ppl,

I got strucked up,when registering the dll in Component services.

Let me brief  the scenario,I have various dll's that are created when i make a new build of my project source code.The latest created dll has to be registered in the component services.

In COM Services we mapped many folders to attain the exact path ( Refer the Screen Shot )
it is mapped as this way
 Components Services ->Computers ->My Computer ->COM+Applications ->YourISS - > Components

Inside the components directory all the dll are registered.

The question is how to locate the inner components directory with the help of code regsvr32 some bla bla bla..????

Timely Solution will be much appreciated.
Inside.jpeg
Com-.jpeg
renjitkumarAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

johnb6767Commented:
I would expect that your code be creating the DLL's in the System32 directory.

I might not understand, but are you trying to locate where the Dlls are stored for a specific app, so you can register them?
0
renjitkumarAuthor Commented:
Hi johnb6767,

Let me say you clearly,i don want to register the dll through regsv32 utility that might store the dll in the System32 folder of the windows,i just want to register the dll's for the application purpose.

I usually register the dll created by building the application ,these server dll's are registered in the Component services of the specified directory as indicated above.

The objective is that our application has the three tier architecture the client dll  will call the server dll code residing in the component services.I just need the code to register the particular dll in the COM services in the particular directory.
I am sure that all the dll placed in the component services places a key in the Registry,Need a brief idea whether is that possible to manually create the registry entry so that it can register the dll in the component services?????

Thx in advance.
0
johnb6767Commented:
Id have to suggest using Procmon to capture the activity of the installer, and go from there....

Im sorry, Im not a programmer.....
0
Cloud Class® Course: Python 3 Fundamentals

This course will teach participants about installing and configuring Python, syntax, importing, statements, types, strings, booleans, files, lists, tuples, comprehensions, functions, and classes.

renjitkumarAuthor Commented:
Hi johnb6767,

I am not satisfied,could u please help with another expert or get idea from another expert.

Please let me know asap.
0
renjitkumarAuthor Commented:
Hi ,
Some we have done it, and the question is closed.
0
renjitkumarAuthor Commented:
Solution as follows,

procedure TForm1.Button1Click(Sender: TObject);
var
  intFileAge: LongInt;
  FileName : String;
  openDialog : TOpenDialog;
  datecurrfile : TDateTime;
  TodayDate : TDateTime;
  GetCurrentDir : String;
  MainCatalog : TCOMAdminCatalog;
begin
    openDialog := TOpenDialog.Create(self); //Creating the opendialog functionality
    MainCatalog := TCOMAdminCatalog.Create(nil);
    GetCurrentDir := 'XXX Path';
    openDialog.InitialDir := GetCurrentDir; //To set the current directory as the working directory
    openDialog.Options := [ofFileMustExist];
    openDialog.Execute ; //To execute the opendialog
    openDialog.Filter :=  'Dynamic Link Libraries|*.dll'; //Seraching or displaying only the *.dll extension files
  if (openDialog.FileName ='') then
  begin
    showmessage('Open Dialog was Cancelled');
    exit;
 end;
    FileName := openDialog.FileName; //Assign the selected file to the filename
    intFileAge := FileAge(FileName);
    datecurrfile := DateOf(FileDateToDateTime(intFileAge));
    TodayDate := DateOf(now);
      if(datecurrfile = TodayDate ) then
      begin
         MainCatalog.InstallComponent('XXX',FileName,'','');
         ShowMessage('DLL Built Newly and it is Registerd');
      end
      else
      begin
         ShowMessage('DLL is Old One');
      end;
    openDialog.Free; //Freeing out the object
    FreeAndNil(MainCatalog);
    Exit;
end;
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Programming Languages-Other

From novice to tech pro — start learning today.