【Windows10 IoT开发系列】PowerShell的相关配置
原文:【Windows10 IoT开发系列】PowerShell的相关配置
可使用 Windows PowerShell 远程配置和管理任何 Windows 10 IoT
核心版设备。PowerShell 是基于任务的命令行 Shell 和脚本语言,专为进行系统管理而设计。
1.启动 PowerShell (PS)
会话
注:若要使用装有Windows10 IoT
Core设备启动PS会话,首先需要在主机电脑与设备之间创建信任关系。
启动 Windows IoT
核心版设备后,与该设备相连的屏幕上将显示一个 IP 地址:
(![Windows 10 IoT 核心版上的
)
CoreDefaultApp](/content/images/DefaultApp.png) 可在Windows10 IoT
Core Watcher实用工具中找到相同信息。
IoT Core启动界面
在本地电脑上启动管理员 PS
控制台。
(在 Windows“开始”菜单旁的“搜索 Web 和
Windows”文本框中键入“powershell”)
以管理员身份启动 PS,请右键单击“Windows
PowerShell”项并选择“以管理员身份运行”:
Powershell控制台:
主界面
注:需要在桌面上启动 WinRM 服务以启用远程连接,在 Powershell 控制台中,输入:
net start WinRM
在 Powershell
控制台中,键入以下命令,从而使用相应的值替代 :
Set-Item
WSMan:\localhost\Client\TrustedHosts -Value
输入 Y 以确认更改。
现在,使用 Windows IoT 核心版设备启动会话,在管理员身份 PS 控制台中,键入:
Enter-PSSession
-ComputerName -Credential \Administrator
在凭据对话框中,输入以下默认密码:p@ssw0rd
更改账户密码:在 PowerShell 连接中发出以下命令
net
user Administrator [new password]
完成操作后,需要使用具有新凭据的 Exit-PSSession 和 Enable-PSSession 来建立新的
PowerShell 会话。
Exit-PSSession Enter-PSSession -ComputerName -Credential
\Administrator
2.Visual Studio 远程调试程序疑难解答
为了能够从 Visual Studio 2015 部署应用程序,需确保 Visual Studio 远程调试程序正在
Windows IoT 核心版设备上运行。远程调试器应在计算机启动时自动启动,若要检查启动情况,请使用 tlist 命令列出 powershell 中所有正在运行的进程,应有两个
msvsmon.exe 的实例正在设备上运行。
在长时间都处于非活动状态后,Visual Studio 远程调试器可能会出现超时。若Visual Studio 无法连接到
Windows IoT 核心版设备,请尝试重新启动设备。
3.配置 Windows IoT 核心版设备
更改“计算机名”,请使用 setcomputername 实用工具:
setcomputername
重新启动设备使更改生效,使用
shutdown 命令:
shutdown /r /t 0
重新启动后,由于计算机名称已更改,需要重新运行此命令,以便连接到设备:
Set-Item
WSMan:\localhost\Client\TrustedHosts -Value
4.已知问题与解决方法
问题:PowerShell 安全策略中的一个已知 Bug
会导致远程会话内的清单出现以下问题:
① Get-Help 返回异常匹配项。
② 指定模块上的 Get-Command 将返回空命令列表。
③ 从以下任意模块运行 cmdlet 将引发
CommandNotFoundException:
Appx、NetAdapter、NetSecurity、NetTCPIP、PnpDevice。
④ 上述任意模块上的 Import-Module 将引发
PSSecurityException 异常(包含 UnauthorizedAccess)。模块自动加载似乎也不起作用。
解决方法: 将远程 PowerShell
会话内的执行策略修改为“RemoteSigned”。
有关其他执行策略的更多详细信息,请参考https://technet.microsoft.com/zh-cn/library/ee176961.aspx
问题:有时,某些模块中的
cmdlet(如 NetAdapter)不可见。例如,Get-Module NetAdapter 将返回一个空列表。
解决方法:
将“-Force”参数与
Import-Module 结合使用。例如,Import-Module
NetAdapter -Force。
问题:
将执行策略设置为“AllSigned”时会中断 PS
远程控制。创建远程会话的后续尝试均失败,并且 SecurityException 正在加载
Typesv3.ps1xml。
解决方法:
使用 winrs.exe 还原 Powershell 执行策略:
①
更改控制台代码页 Chcp
65001
②
登录到远程 cmd.exe shell Winrs.exe
-r: -u: -p: cmd.exe
③ 在远程
cmd.exe 内,修改相应的注册表项 reg
add
HKLM\Software\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell
/v ExecutionPolicy /d RemoteSigned /f
④ 退出远程
cmd.exe 会话 exit
本文主要资源来自Windows
开发中心。
【Windows10 IoT开发系列】PowerShell的相关配置的更多相关文章
- 【Windows10 IoT开发系列】Powershell命令行实用程序
原文:[Windows10 IoT开发系列]Powershell命令行实用程序 更新帐户密码: 强烈建议你更新默认的管理员帐户密码.若要更新帐户密码,你可以发出以下命令: net user Admin ...
- 【Windows10 IoT开发系列】配置篇
原文:[Windows10 IoT开发系列]配置篇 Windows10 For IoT是Windows 10家族的一个新星,其针对不同平台拥有不同的版本.而其最重要的一个版本是运行在Raspberry ...
- 【Windows10 IoT开发系列】“Hello,World!”指导
原文:[Windows10 IoT开发系列]"Hello,World!"指导 本文主要是介绍使用C#来开发一个可以运行在Raspberry Pi2上的一个基本项目. 1.在启动V ...
- 【Windows10 IoT开发系列】API 移植工具
原文:[Windows10 IoT开发系列]API 移植工具 Windows 10 IoT Core 中是否提供你的当前 Win32 应用程序或库所依赖的 API? 如果不提供,是否存在可使用的等效 ...
- 【Windows10 IoT开发系列】开发人员模式设置
原文:[Windows10 IoT开发系列]开发人员模式设置 声明:本文转自微软Windows 开发人员中心(https://msdn.microsoft.com/library/windows/ ...
- ABP开发框架前后端开发系列---(12)配置模块的管理
一般来说,一个系统或多或少都会涉及到一些系统参数或者用户信息的配置,而ABP框架也提供了一套配置信息的管理模块,ABP框架的配置信息,必须提前定义好配置的各项内容,然后才能在系统中初始化或者通过接口查 ...
- Dapr微服务应用开发系列1:环境配置
题记:上篇Dapr系列文章简要介绍了Dapr,这篇来谈一下开发和运行环境配置 本机开发环境配置 安装Docker 为了方便进行Dapr开发,最好(其实不一定必须)首先在本机(开发机器)上安装Docke ...
- iOS开发系列-iOS布局相关
LayoutSubViews 需要在某个View调整子视图的位置时,可以重写. 以下情况会出发LayoutSubViews方法的调用 init初始化不会触发layoutSubviews,但是是用ini ...
- ABP开发框架前后端开发系列---(14)基于Winform的ABP快速开发框架
前面介绍了很多ABP系列的文章,一步一步的把我们日常开发中涉及到的Web API服务构建.登录日志和操作审计日志.字典管理模块.省份城市的信息维护.权限管理模块中的组织机构.用户.角色.权限.菜单等内 ...
随机推荐
- 【网络】无法解析服务器的DNS地址?;能登陆QQ,无法打开网页
1. 无法解析服务器的DNS地址 手动设置 DNS(域名解析服务器) 8.8.8.8 114.114.114.114 清除浏览器缓存: 重启主机: 无法解析服务器的DNS地址?DNS解析错误怎么办? ...
- ios获取iphone手机设备型号
iPhone6plus和iPhone6在放大模式下也可以获取: 导入: #import "sys/utsname.h" 调用: - (NSString*)deviceString ...
- 【BZOJ 1027】[JSOI2007]合金
[题目链接]:http://www.lydsy.com/JudgeOnline/problem.php?id=1027 [题意] [题解] 因为和为1; 所以只要知道两个属性第三个属性就能用1减出来了 ...
- Centos root权限的变化
方法一:更改 /etc/sudoers 文件, 找到以下一行,把前面的凝视(#)去掉 ## Allows people in group wheel to run all commands %whee ...
- CentOS虚拟机克隆后IP设置
1.网卡设置 vim /etc/udev/rules.d/70-persistent-net.rules 将新生成的eth1改名为eth0,并将原来的eth0注释或删除,同时复制mac地址 2.IP设 ...
- Java、JVM、JRE、JDK等组件的理解
.java ⇒(javac) .classs ⇒ (类加载器)转换后的 .class 文件 ⇒ (解释器)可执行代码 ⇒ (JIT 编译器)⇒ 机器码 0. 虚拟机 Java 有它的虚拟机:Java ...
- C# keybd_event用法 模拟键盘输入
最近有业务需求,需要模拟键盘输入,所以了解了一下C#中keybd_event函数的用法.该函数能够产生WM_KEYUP或WM_KEYDOWN消息,即可以触发键盘事件. 函数引用如下: [DllImpo ...
- Windows下MinGW跨平台编译和使用log4cpp
Log4cpp 是C++开源日志库,为 C++ 应用程序开发中提供了日志的追踪和调试功能,基于 LGPL 开源协议,移植自 java 的日志项目 log4j, 并在 api 上保持了一致性. 1. 环 ...
- Real-time storage area network
A cluster of computing systems is provided with guaranteed real-time access to data storage in a sto ...
- AlertDialog通过反射机制阻止Dialog关闭
在开发Android应用程序时,我们可能会用到需要用户输入的Dialog,如登录对话框等.这时候,如果用户没有输入登录信息而点击<确定>按钮时,我们并不希望登录Dialog消失,而是采用一 ...