c:\Program Files\My Service
디렉토리에 설치된 Windows 서비스를 만들었습니다. 실행 파일과 함께, 나는 동일한 디렉토리에 설치되는 XML 파일을 가지고있다. 이 XML 파일은 서비스에서 사용자 정의 정보를 얻는 데 사용됩니다. 그것을 실행 .. 예를 들어 로컬 인 것처럼 내가 파일을 읽을 서비스의 코드에서 Windows 서비스에서 텍스트 파일을 읽는 방법은 무엇입니까?
DataSet ds = new DataSet();
ds.ReadXml("Foo.xml");
는 서비스가 말하는 예외가 발생합니다
파일을 찾을 수 없습니다 'C를 : \ WINDOWS를 \ system32를 Foo.xml \'
c:\Program Files\My Service
에서 실행 생활 때문에 나는 윈도우 빼앗아 예상
vice는 c:\Program Files\My Service\Foo.xml
에있는 XML 파일을 찾습니다. 분명히 그렇지 않습니다.
서비스 실행 파일이있는 동일한 위치의 Foo.xml 파일에 대해 서비스가 (상대적으로) 보이게하려면 어떻게해야합니까? Windows 서비스 작업 디렉토리로
System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Foo.xml");
가능한 중복을 할 필요가 [나는 C#을 사용, Windows 서비스의 설치 디렉토리를 어떻게 찾을 수 있습니까?] (HTTP ://stackoverflow.com/questions/491735/how-do-i-find-the-install-directory-of-a-windows-service-using-c) –
그냥 고려해 볼 수 있습니다. * 구성 가능한 응용 프로그램 설정을 이 경로를 수정하기위한 액세스 권한으로 프로그램 파일 디렉토리에 권한이 필요합니다. 대신'ApplicationData' /'LocalApplicationData' 사용을 고려하십시오. –
@QuintinRobinson - 알림을 보내 주셔서 감사합니다! +1 – Jed