Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8113959
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 6, 20262026-06-06T02:59:54+00:00 2026-06-06T02:59:54+00:00

The Situation: I created a DLL in C# that uses COM to run Process.Start

  • 0

The Situation:

I created a DLL in C# that uses COM to run Process.Startto run a program via web browser. I created an MSI using VS2010’s built-in Deployment project. I specify Guid properties for the objects in this DLL, but I never specify a location. When I run the MSI and choose to install for “Just Me”, registry keys are created in HKCU (current_user), as expected. I need it to run for all users, so when I run the MSI and choose to install for “Everyone”, registry keys are created in HKLM (local_machine), also as expected. Either way, once the MSI installs the DLL, the intranet web app using the DLL works just fine for me as admin (current_user), and for all users (local_machine), respectively.

Inside the main IT branch of my company, however, we can’t create our own MSIs. We have to send a request and our DLL/TLB files to somebody whose sole function is to create MSIs for vendors/in-house developers. When I run his MSI manually, and choose to install for “Everyone”, it again works as expected.

The Problem:

The MSI, however, needs to be run automatically as deployed software, and when this happens, the registry keys are only created in HKEY_CURRENT_USER, so they are not found when test users try to use the functionality. He said that the ALLUSERS property is set to 1, so this should work. Furthermore, when I asked him to make them install to the proper location (local_machine), he insisted that I need to make those changes inside my DLL, since “the MSI file does not create the registry keys, it is coming from the DLL during the install”. From what I read on various articles online, the MSI typically specifies where in the registry these keys are created.

The Question (also for TL;DR):

Is there any truth to his assertion that I need to specify registry location in my DLL? If so, how can I programatically specify these keys to go to HKLM by default? Right now, all I do is specify ComVisible, ClassInterface, Guid, ProgId, and ComDefaultInterface…I’ve never specified a location, with the exception being “Everyone/Just Me” in the MSI. I’m relatively new to COM objects and messing with my own creations in the registry, so I don’t want to jump down his throat saying I can’t do something he should be doing.

Thanks!

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-06T02:59:56+00:00Added an answer on June 6, 2026 at 2:59 am

    If I understand your question properly, you mean:

    • You cannot use your own MSI to deploy your DLL inside your network,
    • You have no control over the way your IT department is packaging and deploying your DLL in the MSI they provide,
    • You want IT’s way of registering the DLL to work exactly the same as yours.

    In this situation, I would suggest creating a merge module (MSM) instead of an installation package (MSI). Put all your setup logic (files, registry keys, custom actions, etc.) in the merge module.

    Then write a simple MSI shell around that merge module for your own usage, and provide the merge module to your IT department, asking them to integrate it into their own installation package build process.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

The Situation (Ignore this it is boring): I have reports that I created using
Here is the situation : Some process writes lines into a fifo file (created
I have created several small applications that use my own DLL. The problem is,
I have a win32 dll that I inject into a running process in order
In my situation, I have a C# DLL I wrote myself that has been
Here's the situation. I created a view that has all the following information CREATE
this is my situation: I have two org.w3c.dom.Document created from two xml files. What
I have a situation in BIRT reporting. A report I created is insisting on
Okay, here's the situation: We have a table of about 50 columns (created by
I have created a new VS2008 ASP.Net Web service project, with the default name

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.