Win10 eles quebraram muitas coisas - VPN reconectar, compartilhamento ICS etc, eu estava tentando agendar um script para consertar esses (VPN reconectar foi um sucesso) - mas o que eu encontrei para ICS - script PowerShell para desligar e voltar no ICS (que corrige o compartilhamento parar de funcionar no Win10 após a reconexão da Internet) trava na linha onde ele permite o compartilhamento para o adaptador público com erro System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt. at IDispatchInvoke
, mesmo que as caixas de seleção no adaptador pareçam ativadas - o compartilhamento de internet não é iniciado trabalhando de volta - não é de admirar, porque o powrshell cai nesse momento.
script:
# Constants
$public = 0
$private = 1
Write-Host "Creating netshare object..."
$netshare = New-Object -ComObject HNetCfg.HNetShare
Write-Host "Getting public adapter..."
$publicadapter = $netshare.EnumEveryConnection | Where-Object {
$netshare.NetConnectionProps($_).Name -eq "MYISP_VPN"
}#foreach
Write-Host "Getting private adapter..."
$privateadapter = $netshare.EnumEveryConnection | Where-Object {
$netshare.NetConnectionProps($_).Name -eq "Home_local"
}#foreach
Write-Host "Disabling sharing for adapters...."
$netshare.INetSharingConfigurationForINetConnection($privateadapter).DisableSharing()
$netshare.INetSharingConfigurationForINetConnection($publicadapter).DisableSharing()
Start-Sleep -s 3
Write-Host "Enabling sharing for private adapter...."
$netshare.INetSharingConfigurationForINetConnection($privateadapter).EnableSharing($private)
Write-Host "Enabling sharing for public adapter...."
$netshare.INetSharingConfigurationForINetConnection($publicadapter).EnableSharing($public)
# Clean up
Remove-Variable netshare
ajuda?