创建了一个powershell脚本
while ($true) {
$ipv4 = (Test-Connection -ComputerName $env:computername -count 1).ipv4address.IPAddressToString
$num = $ipv4.split(".")[-1]
$ie = Invoke-WebRequest -Uri "http://www.******/indata.php?nt=$num" -Method POST -ContentType "text/plain; charset=utf-8"
Wait-Event -Timeout 3
}

该脚本不是可执行文件。你应该把它作为一个可执行文件
powershell.exe,并将脚本作为参数传递给它:但这也行不通,因为 Windows 服务需要一个特殊的协议来与服务控制器交互,而在 powershell 上是不可能实现的。你需要找到一个现成的包装程序来让你的脚本成为一个服务(或者你可以用C#编写你自己的服务),谷歌搜索关键字“windows service wrapper”。
但最简单的方法是使用任务调度程序而不是服务。