2013-08-11 3 views
1

내 프로세스에서는 새 파일을 만들지 만 내 프로세스 컨텍스트에서는 만들지 않고 다른 프로세스 (예 : exploer.exe/cmd.exe)의 컨텍스트 아래에서 새 파일을 만들고 싶습니다. 나는 "cmd.exe/c create_file_command"와 함께 CreateProcess를 사용할 수 있지만, 그 작업에 대해서만 새로운 프로세스를 생성하기에는 너무 무겁다. 저에게 명령을 실행하기 위해 현재 사용자 세션에서 explorer.exe를 요청할 수있는 방법이 있습니까?다른 프로세스 컨텍스트에서 명령 실행 중

+0

시도해보십시오. – jrd1

+3

파일을 생성 한 프로세스가 왜 신경 써야합니까? 우리에게 상황을 알려 주면 우리가 당신을 더 잘 도울 수 있습니다. – avakar

+0

@user, 기다려주십시오. 프로세스에 새로운 파일을 만들지 만 프로세스 컨텍스트 아래에 새 파일을 만들지 않겠습니까? 또는'현재 사용자 세션에서 explorer.exe에게 명령을 실행하도록 요청합니까? ' 이들은 상호 배타적입니다. (Downvote는 내 것이 아닙니다.이 코멘트는 성실하게 게시되었습니다.) –

답변

0

확실히. 충분한 권한이있는 경우 CreateProcessAsUser을 사용할 수 있습니다. 당신이 그 때 거의 동일하게 작동하는 CreateProcessWithLogonW 기능을 사용하지 않는 경우에.

+0

왜 일반적으로'CreateProcessWithLogon'을 사용하는 것을 선호하지 않습니까? –

+0

@CodyGray 재미 있긴하지만 MSDN에서는 그렇게합니다. 글쎄, CreateProcessWithLogon (ASCII 버전 인 CreateProcessWithLogonA와 같이)도 문서화되지 않았습니다. – user2422869

+0

예, MSDN은 CreateProcessWithLogon을 선호한다고 말합니다. 왜 그렇지 않으면 추천하고 있습니까? –

1

과정이 일 때 그다지 중요하지 않으며, 주로 사용자 계정과 관련하여 문제가 될 수 있습니다. 그 때문에 만약

, 당신은 아마 당신의 프로세스는 다음 RevertToSelf, 파일을, ImpersonateLoggedOnuser으로 올바른 사용자를 가장 생성 갖고 싶어.

관련 문제