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?

[Webinar] Streamline your web hosting managementRegister Today

x
 
renjitkumarConnect With a Mentor Author 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
 
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
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

 
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
 
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
All Courses

From novice to tech pro — start learning today.