WIN10设置自启动脚本

刚想设置一个笔记本热点开机自启的操作 上网查询后发现需先把脚本文件放在C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup 目录下

1)而在我的WIN10系统中开始时并为找到该目录 所以我选择了使用WIN+R运行窗口调用命令来打开系统启动文件夹

命令为: shell:Common Startup

//注意:此处还有另外一个命令 : shell:startup  为打开用户启动文件夹 前者为系统启动文件夹,两者起到的作用不一样,如果系统有admin和guest两个系统用户,用户启动文件夹添加开机启动项,那么只有使用admin登录系统时,开机启动项才会起作用,guest用户登录系统不会自动启动;而系统启动文件夹设置的开机启动项,在admin和guest登录系统时都会启动
 

系统启动文件夹路径为 C:\ProgramData\Microsoftianjiat\Windows\Start Menu\Programs\StartUp 然后将脚本文件添加进去实现开机热点自启

引用资料链接:https://www.jianshu.com/p/2424f78b78e4

2)若把脚本文件放在C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup 目录下,还需进行指派,在运行命令框中输入“gpedit.msc”,打开“组策略”窗口,依次展开“计算机配置→Windows设置→脚本(启动/关机)”节点,双击右侧详细资料窗格中的“启动”(或者“关机”)项目,在弹出的“启动属性”(“关机属性”)对话框中单击“添加”按钮,添加脚本文件即可

引用资料链接:windows自启动脚本 - poisson_notes - 博客园

3)自启动脚本:

经试验,以下方法不适用于win10:新建一个记事本,然后将netsh wlan start hostednetwork 输入到记事本,另存为.bat后缀的文件,文件名可以自定义

 有效方法:新建一个记事本,将以下内容复制进去

Add-Type -AssemblyName System.Runtime.WindowsRuntime
$asTaskGeneric = ([System.WindowsRuntimeSystemExtensions].GetMethods() | ? { $_.Name -eq 'AsTask' -and $_.GetParameters().Count -eq 1 -and $_.GetParameters()[0].ParameterType.Name -eq 'IAsyncOperation`1' })[0]
Function Await($WinRtTask, $ResultType) {
    $asTask = $asTaskGeneric.MakeGenericMethod($ResultType)
    $netTask = $asTask.Invoke($null, @($WinRtTask))
    $netTask.Wait(-1) | Out-Null
    $netTask.Result
}
Function AwaitAction($WinRtAction) {
    $asTask = ([System.WindowsRuntimeSystemExtensions].GetMethods() | ? { $_.Name -eq 'AsTask' -and $_.GetParameters().Count -eq 1 -and !$_.IsGenericMethod })[0]
    $netTask = $asTask.Invoke($null, @($WinRtAction))
    $netTask.Wait(-1) | Out-Null
}

$connectionProfile = [Windows.Networking.Connectivity.NetworkInformation,Windows.Networking.Connectivity,ContentType=WindowsRuntime]::GetInternetConnectionProfile()
$tetheringManager = [Windows.Networking.NetworkOperators.NetworkOperatorTetheringManager,Windows.Networking.NetworkOperators,ContentType=WindowsRuntime]::CreateFromConnectionProfile($connectionProfile)
if ($tetheringManager.TetheringOperationalState -eq 1) 
{
    "Hotspot is already On!"
}
else{
    "Hotspot is off! Turning it on"
    Await ($tetheringManager.StartTetheringAsync()) ([Windows.Networking.NetworkOperators.NetworkOperatorTetheringOperationResult])
}


另存为 autoWifi.ps1 的ps1后缀文件,将文件打开方式设置为PowerShell,再以管理员身份打开PowerShell,执行set-executionpolicy remotesigned 来进行策略更改



引用原文链接:https://blog.csdn.net/lpwmm/article/details/106036513

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值