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 7515333
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 30, 20262026-05-30T00:46:27+00:00 2026-05-30T00:46:27+00:00

I have a Visual Studio package that does some of its work by starting

  • 0

I have a Visual Studio package that does some of its work by starting an external process (using System.Diagnostics.Process) and communicating with it over standard input/output. Currently, I have the path to the .exe hard-coded which is obviously not workable for actually deploying the extension. What is the right way to package and distribute the .exe with the extension? (And, related, once I have done so, how do I programmatically discover the path to the installed .exe file.) Preferably I would like to put it into the .vsix file so installation is easy.

EDIT: I have placed the relevant part of my code on BitBucket (it may be useful to someone else using Roslyn): roslyn_process in order to give a better idea of what I am trying to do. This code sets up communication between a Visual Studio extension using an implementation of AbstractProcessHandler and a separate process using RoslynProcess. The latter is kept informed of modifications to the code files in Visual Studio and which code file is being viewed, so it is able to do analysis with up-to-date information despite not running as a Visual Studio extension which would impose the limitations of Roslyn on all code being edited.

EDIT 2: Using this answer, I can get the directory of the extension. I can include another package in source.extension.vsixmanifest by adding it to the content list as type “Custom Extension Type”. Then the .exe appears in the extension’s directory. This seems like it’s probably the right solution although the way of getting the directory is labeled in MSDN as something I shouldn’t be using.

It seems like this might be the best way to do this even though it seems hackish, in which case I’ll post this as an answer once I get everything working.

  • 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-05-30T00:46:28+00:00Added an answer on May 30, 2026 at 12:46 am

    One of the simplest approaches to this is have your package DLL have a project reference to the EXE and make your entry point class (or some class within the EXE) be public. Then you can just write:

    typeof(ExternalProcess).Assembly.Location
    

    which gives you the path to the EXE inside your extension path.

    The other nice part about this is the VSIX packager should include the EXE into the VSIX automatically since it’s a project reference. You don’t have to put anything at all in your .vsixmanifest for the EXE.

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

Sidebar

Related Questions

I have a Visual Studio (2010) package that combines multiple text operations, e.g. it
I wanted to have a Visual Studio package that is loadable in VS2008. To
In a VS Package (Visual Studio Extensibility), I have a custom extension registered (for
I developped a package to extend Visual Studio. As part of it, I have
I have Visual Studio 2005 Professional ENU installed and want to create GUIDs using
I am using Visual Studio 2010 Beta 2, I want to package and deploy
During uninstallation of the Visual Studio Integration Package that I am writing, I need
Good afternoon, I've created a visual studio package that registers the Verilog language as
1. Assuming that you don't have Visual Studio installed and you want to use
I have a Visual Studio setup and deployment project that runs a couple executables

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.