问题标签 [windows-10-iot-enterprise]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
winforms - 诊断为什么 Windows 10 IoT 上的自定义外壳会出现黑屏
我正在将 Windows 10 企业版 (IoT) 配置为运行自定义 shell,但遇到了“只有光标的黑屏”现象。
我的应用程序 - 一个 .Net4 Winforms 应用程序 - 已安装并在桌面上运行良好。
我可以按照此处的评论通过批处理文件将其作为自定义 shell 启动:如何在 Windows 10 Enterprise 上运行应用程序作为 shell 替换
但是将我的应用程序设置为自定义外壳,我只是得到黑屏。
我注意到上面链接中关于正在签名的应用程序的评论,但我已经尝试了两个迷你测试应用程序(也是 .net winforms),一个签名,一个没有,并且都作为自定义 shell 运行良好。(我的应用程序有几个依赖项,并非所有依赖项都已签名,因此要签署它意味着要通过 ILMerge 工厂或类似的工厂,如果可以的话,我宁愿避免。)
我不希望人们能够告诉我为什么我的应用程序无法运行(尽管那会很好!)但我正在寻找诊断此问题的方法。查看事件日志等不会产生任何信息。我的应用程序保留了自己的事件日志,它没有显示应用程序启动的任何证据。
提前致谢
c# - UWF_Volumes 没有 CurrentSession=False 的条目
一段时间以来,我试图弄清楚如何正确设置这个新的 UWF(统一写入过滤器)。不幸的是,似乎只有 Win 8.1 行业的文档(此处),而不是 Win 10。我希望此后没有相关的变化。
我也在 WindowsDevCenter 上问过这个问题,但到目前为止没有得到任何回应。
这是我的问题:
通过 WMI 提供程序,我现在启用了 UWF ( UWF_Filter.Enable()
),但我无法保护任何卷。
卷列表看起来也很奇怪:有 4 个条目,每个人都用CurrentSession=True
.
- 第一个是没有驱动器号的卷,只有一个卷 ID。
- 第二个是C:
- 然后有 2 个相同的 D: 。
通常每个卷不应该有 2 个条目,一个CurrentSession
是 true,一个是 false,这意味着它是在重新启动后应用的设置?
如果我尝试Protect
在 ManagementObject 上执行但DriveLetter=C:
出现Access denied
异常,我假设它是当前会话的对象。
此外,如果我在控制台上尝试uwfmgr.exe Volume Protect C:
它只是挂起:没有反应,没有错误,只有一个永远闪烁的光标。 编辑:原来这是由另一个安装的软件引起的问题。另见下文。
在保护卷之前,我是否必须启用或禁用或执行其他任何操作?
提前致谢,
塞巴斯蒂安
我的系统:
- Windows 10 物联网企业版 2016 LTSB x64
- 1 个 SSD 250GB,带引导、C: 和 D:
编辑:
在这里,我问了一个后续问题以及其他一些细节和解决方法。uwfmgr.exe volume protect c:
例如,如果我使用它,它可以工作,UWF_Volume 现在突然有(正确的)2 个条目C:
,一个用于当前会话,一个用于下一个会话。
但是我想避免这种情况,因为恕我直言,它应该只能由 WMI 解决。
编辑 2: @sommmen
分区布局如下: 1 个磁盘有 4 个分区。
- 启动,500MB
- C:/ , 45GB
- 未知,500MB(我认为是引导备份)
- D:/ , ~200GB
PS:
请任何人都可以创建标签uwf
和uwfmgr
?会好的 :-)
c# - IoT Enterprise 上的 Iotstartup 应用程序数据未准备就绪
我有一个以前在 Windows IoT Core 上运行的 UWP 后台应用程序,现在我需要在 Windows IoT Enterprise (Windows 10 Enterprise) 上运行它,并且一直在按照本教程尝试在远程计算机上对其进行调试。
不幸的是,每当我运行 iotstartup list 尝试将我的程序设置为启动任务时,我都会收到错误Application data is not ready: 0x80004002
直接在机器上调试时,代码不会遇到初始断点,因为后台任务只会在 IoT Core 上自动启动。
powershell - 安装过程中的“提供程序加载失败”
我在安装过程中从 Windows 10 IoT Enterprise 下的桌面应用程序执行了两个 Powershell 脚本。
但是 Powershell 脚本的执行并不成功。我收到以下错误:
安装过程从管理权限开始。第一个脚本将组合键添加到键盘过滤器(Windows 10 IoT 功能)。
第二个脚本启用并配置 Shell Launcher(也是 Windows 10 IoT 功能)。
键盘过滤器.ps1:
如果我在批处理文件或 Powershell 控制台上执行 Powershell 脚本,一切正常。我还尝试在安装过程中使用 Powershell x86 和 x64 执行 Powershell 脚本,这两种情况下的错误都是相同的。
此问题的任何提示、提示或解决方案?
c# - RS-232 无法在 Windows 10 物联网上运行
目前,我有一个在嵌入式 Windows 7 上运行的简单工作 Windows 窗体应用程序,它与扫描仪进行串行通信。我希望切换到 Windows 10 物联网平台并能够在 Windows 10 物联网企业版(内部版本 14393)上运行相同的应用程序。当我尝试在 Windows 10 ioT 上运行相同的应用程序时,只要我尝试打开串行端口开始通信,电脑就会挂断。但是,我可以使用 USB 到 RS-232 电缆建立串行通信,而不是使用 PC 上的 COM 端口使用相同的 win 表单应用程序。
此外,尝试在此处运行示例 UWP 串行应用程序,它仍然没有检测到任何通过 RS-232 连接的扫描仪,但能够将 USB 连接到 RS-232 设备。
Windows 10 iot 不支持 RS-232 通信吗?有什么我想念的吗?
这是用于打开端口的代码片段(注意:COM 端口的串行参数从 xml 文件填充到结构中):
.net - Windows 10 物联网企业点网版
我有一个非常古老.NET 2.0
的应用程序,它使用符合 HID 的 USB 设备将数据获取到我的应用程序中。
硬件升级到基于Windows 10 IoT Enterprise的系统。我没有找到操作系统附带的 .NET 版本。
使用较旧的 .NET 版本是个好主意,4.5
还是应该针对较新的版本?
uwp - 处于分配访问模式的 UWP 应用不断被发送回 Windows 登录屏幕
我在分配的访问模式下运行 UWP 应用程序,我注意到,尽管更改了电源设置以使屏幕保护程序永远不会打开,但通常会出现通用的 Windows 10 登录屏幕,而应用程序应该始终是跑步。设置已设置,因此屏幕和电脑永远不会关闭,电池或插入电源时。我能做些什么来解决这个问题?
c++ - 在 64 位机器上注册 C++ DLL
我有一个我编写的 C++ DLL 无法在 64 位机器上注册。请注意 32 位机器上 DLL 寄存器的 32 位版本。
我们在发布模式下使用 Visual Studio 2010 在 64 位 Windows 7 计算机上构建 DLL,并以 x64 平台为目标。我想在 64 位 Windows 10 计算机(目标)上安装 DLL。目标计算机安装了 64 位的 VS 2010 redist。当我尝试使用以下方法注册程序时:
C:\windows\system32\regsvr32.exe
它失败并说程序“可能与您正在运行的此版本的 Windows 不兼容。检查该模块是否与 regsvr32.exe 的 x86(32 位)或 x64(64 位)版本兼容” .
我使用名为 Dependencies 的程序试图找出 DLL 需要哪些依赖项。依赖项说我的 DLL 需要 ATL100.dll。但是,这是由 VS 2010 redist 安装的,并且确实位于 C:\windows\system32 中。DLL 本身不依赖于任何第三方程序。
有没有人知道接下来要寻找什么来注册这个文件?
c# - 尝试使用 C# 创建系统还原点时出现 System.Runtime.InteropServices.COMException
我正在使用此 stackoverflow 帖子中的以下 C# 代码。
错误来自声明的行oOutParams
。
我已将此行包装在 try catch 中,并打印出错误代码 -2147023838,我在此处列出的任何 COM 错误代码列表中都找不到该代码(假设打印的错误代码应转换为十六进制 2 的补码 -> 0x80070422 )。
在没有捕获异常的情况下(所以基本上是上面的确切代码),堆栈跟踪是:
将 try/catch 包裹在声明 oOutParams 的行上,我打印堆栈跟踪,即:
第二个堆栈跟踪没有消息。