2009-09-10 7 views
5

C# (또는 일반적으로 .NET)에서 현재 실행중인 프로세스의 이름을 변경할 수 있습니까? 나는 그것이 불가능하다고 믿지만, 동료는 그것이 가정하에 문제를 해결하려고 노력하고 있습니다.C#에서 프로세스 이름을 변경 하시겠습니까?

+2

을 새 이름으로 임시 폴더에 EXE를 복사 한 다음 거기에서 그것을 실행할 수 있습니다 친구 개그에 대한 충고 라구? – JoshJordan

+0

무슨 뜻인지 모르겠지만 동료는 실제 문제를 해결하려고합니다. 나는 이것으로 멀웨어 프로그램을 만들려고하지 않고있다. 실제로, 이것이 보안 취약점이라고 생각하기 때문에 가능하지 않다고 생각하는 이유 중 하나입니다. –

답변

11

아니요 현재 실행중인 프로세스의 이름을 변경할 수 없습니다. 프로세스 이름은 실행이 시작될 때 실행을 위해 운영 체제에로드 된 이름 파일로 정의됩니다. 나중에 변경할 수 없습니다. 이것은 C#, 관리되는 코드 및 네이티브 코드에 해당합니다.

0

예 ... 적어도 Linux에서는 가능합니다. 이 사용 :

[System.Runtime.InteropServices.DllImport("libc")] 
// Linux 
private static extern int prctl (int option, byte[] arg2, IntPtr arg3, IntPtr arg4, IntPtr arg5); 

은 내가 DLL이 EXE 파일을 실행하는 데 사용에서 :-) Windows의

+0

사용 예제를 제공해 주시겠습니까? –

0

프로세스 이름이 유래 같은 방식으로 작동 창 아래에있는 가정합니다. 이 프로세스의 경우 등이이 같은 컨텍스트에서 실행 될 거라고 가정

...

관련 문제