배치 파일을 실행하기 만하면 컴퓨터가 Wi-Fi 또는 유선 인터넷을 통해 연결되도록하는 스크립트를 작성했습니다. 매번 사용자 이름과 암호를 입력 할 필요가 없기 때문에이 두 사람 사이를 전환하기 때문에이 글을 썼습니다.비밀번호를 입력하지 않고 PowerShell 스크립트를 관리자로 실행
참고 : UAC를 사용하도록 설정해야하므로 불행히도 해제하는 것은 옵션이 아닙니다.
무선 어댑터의 상태를 확인합니다. 현재 활성화되어 있으면 무선 어댑터가 꺼지고 유선 어댑터가 활성화됩니다. 무선이 활성화되어 있지 않으면 유선이 활성화되거나 비활성화됩니다. 이것은 코드입니다.
$adapter = Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=TRUE -ComputerName . | Where-Object {$_.ServiceName -ne "hamachi"}
function wirelessOn
{
$wireless = Get-WmiObject -Class Win32_NetworkAdapter | Where-Object {$_.Name -like "*Wireless*"}
$wireless.Disable()
$wired = Get-WmiObject -Class Win32_NetworkAdapter | Where-Object {$_.Name -like "*gigabit*"}
$wired.Enable()
}
function wirelessOff
{
$wired = Get-WmiObject -Class Win32_NetworkAdapter | Where-Object {$_.Name -like "*gigabit*"}
$wired.Disable()
$wireless = Get-WmiObject -Class Win32_NetworkAdapter | Where-Object {$_.Name -like "*Wireless*"}
$wireless.Enable()
}
switch -wildcard ($adapter.description){
"*wireless*" {
wirelessOn
}
"*gigabit*" {
wirelessOff
}
}
불행히도이 스크립트는 관리자 권한으로 실행되는 경우에만 올바르게 작동하므로 내가 작성한 전체 이유는 확실하지 않습니다. 아무 것도하지 않고도 관리자 권한으로 승격시킬 수있는 방법이 있습니까?
, 당신은 UAC를 처리 할 필요없이 상승하는 스크립트를 실행하는 방법을 요구하고 있습니다. 이것은 UAC의 요점을 완전히 부정합니다. 그렇게 할 수 있다면 UAC에 심각한 구멍이 될 것입니다. 그렇지 않습니까? – x0n
나는 그렇게 믿지 않는다. 왜냐하면 나는 텍스트 파일이나 하드 코딩 된 UAC로 전달할 자격 증명을 얻을 수 있다는 것을 알고 있기 때문에 나는 이것이 가능하다는 것을 알고 있습니다. 특정 서버가 sys 관리자가 로그인하여 "예"를 클릭하기를 기다리고 있기 때문입니다. – mhopkins321