Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

How get current path of exe in windows services

Posted on 2010-11-10
5
Medium Priority
?
744 Views
Last Modified: 2012-05-10
Hi,
 I am using windows serives. I have one windows application. Now i call the exe of this application in windows service using System.Diagnostic.Process.Start(exepath). It is working fine. But i have the problem that in windows application i get the values from ini file using current directory path that Application.startupPath(exename).

I can get the values from ini file when run windows app alone. But i put the exe to services i can't get the value. Because the current directory path shows in services that C://Windows/System32. So i put the ini file in the path. It is working fine when run the services and get the values.

But i dont want to do that every time put the file in the system32 path. I put the file in windows service path when create setup. so i want to get the values from the services directory path. How can we achieve this scenario? I believe that you catch my point that what i am telling here. Hope expecting your reply.

Thanks
0
Comment
Question by:Rajkumar Gs
  • 3
5 Comments
 
LVL 9

Accepted Solution

by:
s_chilkury earned 1000 total points
ID: 34109374
Is this what you are looking for:

System.Reflection.Assembly.GetEntryAssembly().Location
0
 

Assisted Solution

by:rajeshrolen
rajeshrolen earned 1000 total points
ID: 34109390
There are various way to get it like:

Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location)
----------------------------------------------------
System.Reflection.Assembly.GetEntryAssembly().Location
----------------------------------------------------
string path = Assembly.GetExecutingAssembly().Location;
FileInfo fileInfo = new FileInfo(path);
string dir = fileInfo.DirectoryName;
-----------------------------------------------------
string cmdLine = Environment.CommandLine.Remove(Environment.CommandLine.Length - 2, 2).Remove(0, 1);
string workDir = Path.GetDirectoryName(cmdLine);
-----------------------------------------------------
0
 
LVL 23

Author Comment

by:Rajkumar Gs
ID: 34109397
Hi Reajesh

 Thanks for your reply. I will try to execute the above one in my code and let you know.

Thanks
0
 
LVL 23

Author Comment

by:Rajkumar Gs
ID: 34487719
Thanks.
I got similar solution from here as well.
http://stackoverflow.com/questions/199961/getting-full-path-for-windows-service

Raj
0
 
LVL 23

Author Closing Comment

by:Rajkumar Gs
ID: 34487724
Thank you
Raj
0

Featured Post

NFR key for Veeam Agent for Linux

Veeam is happy to provide a free NFR license for one year.  It allows for the non‑production use and valid for five workstations and two servers. Veeam Agent for Linux is a simple backup tool for your Linux installations, both on‑premises and in the public cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Many of us here at EE write code. Many of us write exceptional code; just as many of us write exception-prone code. As we all should know, exceptions are a mechanism for handling errors which are typically out of our control. From database errors, t…
It was really hard time for me to get the understanding of Delegates in C#. I went through many websites and articles but I found them very clumsy. After going through those sites, I noted down the points in a easy way so here I am sharing that unde…
Integration Management Part 2
Despite its rising prevalence in the business world, "the cloud" is still misunderstood. Some companies still believe common misconceptions about lack of security in cloud solutions and many misuses of cloud storage options still occur every day. …
Suggested Courses

971 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question