c# get assembly executable directory












0















I have 2 application. Example App1 and App2
When run nomal App1 will show assembly executable location.
But when i call App1 from App2, it return App2 start up location.



So, how to get App1 start up path when call App1 from App2?










share|improve this question




















  • 2





    Welcome to StackOverflow! Please show what you've tried and clarify what exactly you want: "startup path" or "assembly location"?

    – René Vogt
    Jun 28 '16 at 9:04











  • i get start up path = Application.StartupPath. When i run App1 nomal up path return true location. But when i call App1 from App2, it return App2 location. So how to get App1 start up path when i call App1 from App2?

    – TrungNV
    Jun 28 '16 at 9:15













  • So of course it is the same. the StartupPath is not the path of the assembly, but the working directory from which the app got started. So if your App2 does not change it's working directory, App1 has the same startuppath.

    – René Vogt
    Jun 28 '16 at 9:17
















0















I have 2 application. Example App1 and App2
When run nomal App1 will show assembly executable location.
But when i call App1 from App2, it return App2 start up location.



So, how to get App1 start up path when call App1 from App2?










share|improve this question




















  • 2





    Welcome to StackOverflow! Please show what you've tried and clarify what exactly you want: "startup path" or "assembly location"?

    – René Vogt
    Jun 28 '16 at 9:04











  • i get start up path = Application.StartupPath. When i run App1 nomal up path return true location. But when i call App1 from App2, it return App2 location. So how to get App1 start up path when i call App1 from App2?

    – TrungNV
    Jun 28 '16 at 9:15













  • So of course it is the same. the StartupPath is not the path of the assembly, but the working directory from which the app got started. So if your App2 does not change it's working directory, App1 has the same startuppath.

    – René Vogt
    Jun 28 '16 at 9:17














0












0








0








I have 2 application. Example App1 and App2
When run nomal App1 will show assembly executable location.
But when i call App1 from App2, it return App2 start up location.



So, how to get App1 start up path when call App1 from App2?










share|improve this question
















I have 2 application. Example App1 and App2
When run nomal App1 will show assembly executable location.
But when i call App1 from App2, it return App2 start up location.



So, how to get App1 start up path when call App1 from App2?







c# .net-assembly executable






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jun 28 '16 at 10:07









Jester

46.4k34581




46.4k34581










asked Jun 28 '16 at 9:01









TrungNVTrungNV

114




114








  • 2





    Welcome to StackOverflow! Please show what you've tried and clarify what exactly you want: "startup path" or "assembly location"?

    – René Vogt
    Jun 28 '16 at 9:04











  • i get start up path = Application.StartupPath. When i run App1 nomal up path return true location. But when i call App1 from App2, it return App2 location. So how to get App1 start up path when i call App1 from App2?

    – TrungNV
    Jun 28 '16 at 9:15













  • So of course it is the same. the StartupPath is not the path of the assembly, but the working directory from which the app got started. So if your App2 does not change it's working directory, App1 has the same startuppath.

    – René Vogt
    Jun 28 '16 at 9:17














  • 2





    Welcome to StackOverflow! Please show what you've tried and clarify what exactly you want: "startup path" or "assembly location"?

    – René Vogt
    Jun 28 '16 at 9:04











  • i get start up path = Application.StartupPath. When i run App1 nomal up path return true location. But when i call App1 from App2, it return App2 location. So how to get App1 start up path when i call App1 from App2?

    – TrungNV
    Jun 28 '16 at 9:15













  • So of course it is the same. the StartupPath is not the path of the assembly, but the working directory from which the app got started. So if your App2 does not change it's working directory, App1 has the same startuppath.

    – René Vogt
    Jun 28 '16 at 9:17








2




2





Welcome to StackOverflow! Please show what you've tried and clarify what exactly you want: "startup path" or "assembly location"?

– René Vogt
Jun 28 '16 at 9:04





Welcome to StackOverflow! Please show what you've tried and clarify what exactly you want: "startup path" or "assembly location"?

– René Vogt
Jun 28 '16 at 9:04













i get start up path = Application.StartupPath. When i run App1 nomal up path return true location. But when i call App1 from App2, it return App2 location. So how to get App1 start up path when i call App1 from App2?

– TrungNV
Jun 28 '16 at 9:15







i get start up path = Application.StartupPath. When i run App1 nomal up path return true location. But when i call App1 from App2, it return App2 location. So how to get App1 start up path when i call App1 from App2?

– TrungNV
Jun 28 '16 at 9:15















So of course it is the same. the StartupPath is not the path of the assembly, but the working directory from which the app got started. So if your App2 does not change it's working directory, App1 has the same startuppath.

– René Vogt
Jun 28 '16 at 9:17





So of course it is the same. the StartupPath is not the path of the assembly, but the working directory from which the app got started. So if your App2 does not change it's working directory, App1 has the same startuppath.

– René Vogt
Jun 28 '16 at 9:17












1 Answer
1






active

oldest

votes


















6














You can get the directory of the currently executing assembly with this:



string assemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);


GetExecutingAssembly() returns the currently executing assembly and Location is the full path or UNC path of that assembly.



Path.GetDirectoryName() returns the directory of a full path.





Note that the assembly's path is not the same as the startup path. The startup path is the working directory from which you started an application. And if your app does not change it's working directory, all apps started by the first app will have the same startup path.






share|improve this answer


























  • Can not get by string assemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); it return App2 startup path.

    – TrungNV
    Jun 28 '16 at 9:25













Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f38071639%2fc-sharp-get-assembly-executable-directory%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









6














You can get the directory of the currently executing assembly with this:



string assemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);


GetExecutingAssembly() returns the currently executing assembly and Location is the full path or UNC path of that assembly.



Path.GetDirectoryName() returns the directory of a full path.





Note that the assembly's path is not the same as the startup path. The startup path is the working directory from which you started an application. And if your app does not change it's working directory, all apps started by the first app will have the same startup path.






share|improve this answer


























  • Can not get by string assemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); it return App2 startup path.

    – TrungNV
    Jun 28 '16 at 9:25


















6














You can get the directory of the currently executing assembly with this:



string assemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);


GetExecutingAssembly() returns the currently executing assembly and Location is the full path or UNC path of that assembly.



Path.GetDirectoryName() returns the directory of a full path.





Note that the assembly's path is not the same as the startup path. The startup path is the working directory from which you started an application. And if your app does not change it's working directory, all apps started by the first app will have the same startup path.






share|improve this answer


























  • Can not get by string assemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); it return App2 startup path.

    – TrungNV
    Jun 28 '16 at 9:25
















6












6








6







You can get the directory of the currently executing assembly with this:



string assemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);


GetExecutingAssembly() returns the currently executing assembly and Location is the full path or UNC path of that assembly.



Path.GetDirectoryName() returns the directory of a full path.





Note that the assembly's path is not the same as the startup path. The startup path is the working directory from which you started an application. And if your app does not change it's working directory, all apps started by the first app will have the same startup path.






share|improve this answer















You can get the directory of the currently executing assembly with this:



string assemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);


GetExecutingAssembly() returns the currently executing assembly and Location is the full path or UNC path of that assembly.



Path.GetDirectoryName() returns the directory of a full path.





Note that the assembly's path is not the same as the startup path. The startup path is the working directory from which you started an application. And if your app does not change it's working directory, all apps started by the first app will have the same startup path.







share|improve this answer














share|improve this answer



share|improve this answer








edited Jun 28 '16 at 9:19

























answered Jun 28 '16 at 9:09









René VogtRené Vogt

32.9k134668




32.9k134668













  • Can not get by string assemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); it return App2 startup path.

    – TrungNV
    Jun 28 '16 at 9:25





















  • Can not get by string assemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); it return App2 startup path.

    – TrungNV
    Jun 28 '16 at 9:25



















Can not get by string assemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); it return App2 startup path.

– TrungNV
Jun 28 '16 at 9:25







Can not get by string assemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); it return App2 startup path.

– TrungNV
Jun 28 '16 at 9:25




















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f38071639%2fc-sharp-get-assembly-executable-directory%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Monofisismo

Angular Downloading a file using contenturl with Basic Authentication

Olmecas