2011-03-07 5 views
2

코드 샘플을 stackoverflow에서 how to get under which username a process running에 사용자 이름을 얻는 코드 샘플이 발견되었고 콘솔 앱에서는 작동하지만 Windows 서비스에서는 작동하지 않습니다. returnVal은 2이고 사용자 이름과 도메인을 표시하지 않습니다. 누구든지 Windows 서비스의 설정을 변경해야한다고 말할 수 있습니까?어떤 사용자 이름 프로세스에서 실행중인 사용자 이름을 얻는 방법

+0

무엇이 오류입니까? – Aliostad

+0

"NO OWNER"가 반환됩니다 –

+0

반환 할 값 (로컬 시스템, 네트워크 서비스, 특정 계정 등)을 알고 있습니까? – RQDQ

답변

1

GetOwner()를 호출 할 수있는 권한이있는 계정으로 서비스를 실행 해보십시오.

+0

"LocalSystem"계정에서 실행 중이며 높은 권한을 가진 계정이라고 생각합니다. –

+0

귀하의 계정에서 실행하여 수정했는지 확인하십시오. – RQDQ

+0

안녕하세요 @RQDQ : 지금 새 문제에 직면하고 있습니다. 사용자 계정으로 실행하도록 서비스를 구성했지만 설치 프로젝트를 사용하여 서비스를 설치할 때 계정 이름과 보안 ID 사이에 매핑이 수행되지 않았습니다 ** 설치 중에 오류가 발생했습니다. 설치 롤백. 사용자 이름과 암호는 유효하며 동일한 것을 사용하여 로그인합니다. –

0

내가 무엇을 찾고 계신 것은 단순히이라고 생각 :

string user = Environment.UserName; 

자체가 일부 시스템 계정을 사용하여 실행중인 서비스하지만 당신은 당신이 사용자 계정에 로그인 의미, 자신의 계정 이름을 찾고 말했다 .

+0

나는 그것을 downvote하지 않았다. 그러나 당신이 질문을 읽지 않은 것은 분명하다. – RQDQ

+0

@RQDQ 예. 그가했던 말을 듣고 나는 그가 자신이 무엇을 알고 있는지 간단히 알지 못한다고 생각했습니다. 그는 "LocalSystem"으로 서비스를 실행 중이지만 코드 결과로 자신의 계정 이름 인 "raj"를 기대합니다. 질문에서이 갈등을 어떻게 설명 할 수 있습니까? –

+0

그가 참조한 샘플 코드를 보았습니까? 나는 말로 된 질문이 모호하지 않다는 것에 동의하지만, 그 연계가 그것을 분명히하는 것처럼 보인다. – RQDQ

관련 문제