2014-09-25 3 views
0

요즘에는 여러 개의 다른 도메인 계정을 저글링하고 있으며 특정 프로그램 아래에서 실행해야하는 12 개 정도의 프로그램이 있습니다. 그 중 일부는 "this"에 액세스하려면 하나의 도메인 계정으로, "그"에 액세스하려면 다른 계정으로 실행해야합니다. 내 솔루션은 runas를/user 스위치와 함께 사용하는 단축키를 사용하여 잘 작동했습니다.runas를 사용하여 프로그램을 실행하고 창 제목을 변경하십시오.

그러나 나는 한 걸음 더 나아가고 싶습니다. 여는 프로그램의 창 제목을 변경하는 방법이 있습니까? , SSMS 예를 들어

C:\Windows\System32\runas.exe /savecred /user:DOMAINA\username "C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\Ssms.exe" 

나는 "제목 myTitle이라는"와 이것 저것을 추가하는 몇 가지 변화를 시도했지만, 아직 작동 아무것도 발견하지 않았습니다.

아마도 Powershell을 사용하는 것이 가능합니까?

답변

1

/savecred을 사용하면 계정 소유자가 모든 명령을 실행할 수 있습니다. 당신의 경우에는 중요하지 않지만 그것을 명심하십시오. 호환성 문제는 Windows에서만 발생합니다. 그것은 미래에 사라질 것입니다.

명령 프롬프트 인 경우 cmd를 시작하고 title 명령을 사용하여 프로그램을 시작하십시오.

C:\Users\User>title /? 
Sets the window title for the command prompt window. 

TITLE [string] 

    string  Specifies the title for the command prompt window. 

GUI 프로그램 인 경우이 VB6 코드 샘플은 제목을 변경합니다. vb.net을 사용하여 프로그램을 만들 수 있습니다. 윈 7 이상 센드 메일에 이렇게 예약 된 이름입니다

Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long 

Public Declare Function SetWindowText Lib "user32" Alias "SetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String) As Long 

Sub Main() 
    On Error Resume Next 
    hwindows = FindWindow(vbNullString, "Microsoft Works Calendar") 
    Ret = SetWindowText(hwindows, "Calandar") 
End Sub 

이것은 vb.net 프로그램을하고 http://social.msdn.microsoft.com/Forums/en-US/adcae113-4758-481a-a367-60d5d14d97d6/this-is-how-to-turn-vbs-and-js-files-into-exe-files-from-the-command-line-without-third-party-tools?forum=scripting

이 비슷하지만 윈도우 appactivate between multiple internet explorer instances 조작에 관한이 (PS는 VBS가/VB6로 변환하는 방법을 보여줍니다 변경해야 함).

.NET Framework (PowerShell 사용)에는 Windows 명령이 없으므로 다른 프로그램의 창을 조작하면 .NET 철학에 포함되지 않습니다. 아마도 .NET이 Window의 API를 반영하지 않는 유일한 영역 일 것입니다. .NET 프로그램은 폼 객체를 통해 자신의 윈도우를 조작 할 수 있습니다.

0

powershell에 대해 언급 한 이래로 ps1 스크립트의 맨 위에이 명령을 올리면 제목을 제어하기가 매우 쉽습니다. 실행되면 변경된 제목이 표시됩니다.

$host.ui.RawUI.WindowTitle = "Changed Title" 

또는 여기서 다시 사용할 수있는 powershell 함수입니다.

Function Change_Console_Title ($title) {$host.ui.RawUI.WindowTitle = "$title"} 

사용

Change_Console_Title -title "Woot" 
관련 문제