问题标签 [windows-7-embedded]
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.
visual-c++ - 使用 vc++ 降低 Windows Embedded Standard 7 中的“BACKLIGHT”亮度
是否可以使用 vc++ 以编程方式降低 Windows Embedded 标准 7、Monitor:Samsung DE40A 中的“背光亮度” ?可以使用显示器的遥控器降低显示器背光亮度。
我已经能够使用相应的 API 等来降低亮度、对比度、伽玛和 RGB 值SetMonitorBrightness
。SetMonitorContrast
尝试使用DeviceIoControl
函数 withIOCTL_VIDEO_QUERY_SUPPORTED_BRIGHTNESS
但函数调用不成功,它给出了一个非零值,并且根据 msdn 函数失败了。
我最终得到“不支持背光”,但我可以从三星显示器的遥控器更改背光亮度。
c# - 如何获得启用 EWF 的硬盘或卷的一致 SHA1(嵌入 Win 7)
问题: 即使在 Win 7 Embedded 上启用 EWF 并使用 Win32 API 的 CreateFile/ReadFile 方法,我也无法获得可重现的文件、卷甚至物理驱动器哈希(例如 SHA1)。看起来(对我来说)ReadFile 正在从 EWF 的 RAM 覆盖中读取,但我需要它来从磁盘中获取字节。
背景: 我们正在将受监管的硬件+软件产品从 Windows XP Embedded (FAT32) 更新到 Windows 7 Embedded (NTFS)。应用程序代码是用 C#.Net 和 VC++ 编写的。
监管要求是能够验证硬盘上存在的所有文件(包括操作系统文件)是提供给监管机构的参考文件的精确副本。监管机构需要能够在硬件设备正常运行(生产中)时执行此验证,而无需停止设备上运行的应用程序。
在 XP Embedded 时代,通过解析 FAT32 文件系统并通过 ReadFile(Win 32 API,kernel32.dll)读取磁盘簇,我们能够在启用 EWF 并在设备运行的情况下获得一致的文件哈希。如果我们将文件作为 FileStream 读取,则哈希值不一致。
我们的操作系统和应用程序部署为不可变的主磁盘映像。我们使用逐字节驱动器克隆硬件从主设备克隆硬盘驱动器。我们还在 Linux 上通过 OSFClone (dd) 进行了克隆。
我们正在尝试在 Windows 7 Embedded (x64) 中重现此(即可验证的文件哈希),这需要操作系统的 NTFS 分区。
测试环境:
- 操作系统是 Windows Embedded Standard 7 EWF 在我们的卷(C:, D:) 上以 RAM 模式启用
- NTFSLastAccessUpdate 已在 SYSTEM\Control\ 下的注册表中设置为“1”
- 在启用 EWF 和通过 ewfmgr 提交的更改之前,从驱动器中删除了所有 Bootstat.dat 文件
以前,为了测试驱动器是否不可变,我做了以下操作:
- 使用 Win 7e 驱动器启动设备并在进行更改后关机(启用 EWF)
- 将 Win7e 硬盘插入 Kali Linux 系统并使用 dd | sha1sum 获取整个驱动器的哈希值
- 插回设备中的 Win7e 驱动器并启动,进行更改(启用 EWF)并重复 dd | sha1sum 再次进入 Kali Linux(例如 dd if=/dev/sda1 | sha1sum),其中 /dev/sda1 是受 EWF 保护的 Windows 分区。
该测试中不同靴子之间的签名匹配。我再次运行上面的测试,但需要一段时间。[编辑:我现在再次运行测试:EWF 正在工作,Linux 在 Win7e 驱动器重新启动之间为 /dev/sda1 返回完全相同的哈希]。NTFSLib 和下面粘贴的测试代码不会重现受 EWF 保护的驱动器的相同签名。
问题: 我们已经尝试使用 CreateFile / ReadFile 方法以及“NtfsLib”(https://github.com/LordMike/NtfsLib)来读取单个文件、卷和 \.\PhysicalDriveN 但我们没有得到可重现的哈希值重启设备。也就是说,我们每次都会为 Windows 文件 (C:\windows\windowsupdate.log) 获得不同的 SHA1 哈希值;我们每次都会为 \.\C: 获得不同的哈希值,并且每次都会为 \.\PhysicalDrive0 获得不同的哈希值。
我正在粘贴下面用于计算签名的 C# 代码。我不介意用另一种语言重写,比如 C 或 C++,只要我能从硬盘中获取原始字节。如果我在读取原始字节时做错了什么,请告诉我。我不需要读取和散列单个文件本身。只要哈希在设备重新启动之间匹配,我就可以读取整个磁盘或整个卷并对其进行哈希处理。散列整个驱动器或卷将满足监管要求。对我来说,我从 ReadFile 获得的字节似乎显示了 EWF 对文件系统的看法。
我将不胜感激任何人可以给我的任何提示。我一直在阅读有关 ReadFile 的各种帖子,但没有找到任何有关 EWF 行为的线索。
我在 Windows 上以管理员身份运行下面的代码,并且我的 app.manifest 设置了 requireAdmin 东西。
c# - vs2017如何构建目标Windows 7
我有一个在 windows 7 机器上运行的项目,嵌入了 windows 7,但仍然使用 win7 SDK。它是 Windows C# 和 C++ 的组合
在 vs2017 下我不再有构建到 windows 7 目标平台(C++ 和 c#)的选项,我拥有的最低的是 windows 8.1
尝试安装 7 sdk 会导致各种鸡鸡蛋问题,我花了 2 天时间用工作的 c++ crt 安装 vs2017,所以我希望有一种方法可以为 vs2017 重新添加 win 7 sdk。
或者我想知道是否有构建 8.1 但不使用太先进的期货的选项,因为除了闪光图形之外,8.1 和 7 并没有那么大的变化(大多数 win 7 应用程序在 8.1 上运行良好,而且我从未见过认真的程序谁仅适用于 8.1)也许甚至 8.1 SDK 也内置了一些向后兼容性?
python - 在嵌入式 Windows 7 上运行简单的 python 应用程序会出现“找不到入口点错误”和“加载 dll 时出错”
我正在尝试在运行 Windows 7 Embedded(2GB RAM,Intel Atom)的设备上运行我用 python 制作的一个简单的小应用程序。我正在使用pyinstaller(开发版,用于支持 Python 3.6)创建一个 exe
当我运行 exe 时,出现以下错误:
随后出现此错误:
我使用pyinstaller如下:pyinstaller -w -F
任何帮助将不胜感激。
谢谢你。
如果您需要查看脚本,请告诉我,这是一个简单的脚本。
编辑:从 Microsoft 安装KB2999226确实使错误消失了,但现在脚本将静默不执行。
有任何想法吗?
最终编辑:安装上述更新解决了它。不执行的问题是我在 32 位操作系统上使用了 64 位 FFMPEG。以解决方案结束
powershell - 在 Win 7 上使用 powershell 脚本将 IP 更改为用户
在我的 Windows 7 Embedded 机器上,我想以用户身份通过 Powershell 脚本更改 IP 地址。
为此,我将我的用户添加到“网络配置操作员”组并编写了以下脚本。
该脚本以管理员身份运行良好,但不能以用户身份运行。我是否忘记为脚本或用户添加一些权限?
编辑: 当我单击“以管理员身份运行”并使用黑色时,它第一次起作用。将其更改为rf(有效)后,黑网只更改了网关和 DNS,但不更改 IP 和网络掩码,这让我感到困惑。
docker - Docker on windows 7: hello-world runs on Docker Quickstart Terminal but not on command prompt. why?
I haven't been able to run hello-world on command prompt but on quickstart terminal it works. Why is that? Error message on command prompt:
https://drive.google.com/file/d/0B0rw5s9roTIiWnpOM1JhVUNDZVU/view?usp=sharing
In a broader context, I am trying to run Docker compose to set up a network but unsuccessful. So I figure understanding more about Docker would be helpful. Appreciate any pointer. Thanks!
.net - 无法将证书链构建到受信任的根颁发机构
在安装 .NET Framework 4.6.2 期间,出现错误:
.NET Framework 安装失败:-2146762486。无法将证书链构建到受信任的根颁发机构
此MSDN 博客链接中给出了上述错误的解决方案,该链接说执行以下步骤:
1. 在本地下载证书http://www.microsoft.com/pki/certs/MicRooCerAut2011_2011_03_22.crt (例如:C:\Temp)
2.您可以使用 certmgr.exe 实用程序通过命令行添加证书。有关详细信息,请参阅 MSDN 上的 Certmgr.exe(证书管理器工具)主题。
3.打开管理员命令提示符并运行以下命令:certmgr.exe /add C:\Temp\MicRooCerAut2011_2011_03_22.cer /s /r localMachine root
4.接下来,尝试安装补丁KB3135996或KB3136000
我的问题:
.NET framework 4.6.2 的安装必须在多个生产系统上完成,所以上述步骤是否标准?我的意思是,在多个系统上安装相同的证书会产生问题吗?当系统在某个时候连接到互联网时,会产生冲突吗?
PS:通过将系统连接到互联网来解决这个问题(管理证书)对我来说不是一个选项,因为整个过程必须离线。
c# - 在 Windows 7 Embedded 中运行 .NET 应用程序的 exe 文件已停止
我在 Windows 8.1 操作系统中使用 .Net Framework 4.0 在 Visual Studio 2010 中创建了一个 Windows 应用程序。
我正在尝试在嵌入了 .Net Framework 4.0 其他应用程序的 Windows 7 中执行我的应用程序的 .exe 文件(我有所有的 dll,所有环境设置)。
但它不工作它说
问题导致程序停止工作将关闭程序。
在事件日志中写入以下内容:
“c:\program files\remote utility - host\Printer\x64\VPDAgent_x64.exe”的激活上下文生成失败。相关程序集 Microsoft.VC80.CRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50608.0" 找不到。请使用 sxstrace.exe 进行详细诊断。
.net - .NET 2.0 ThreadPool 线程堆栈增加导致内存不足异常(已达到提交限制)
操作系统:Windows 7 嵌入式
内存:1 GB
分页文件大小:500 MB
剩余磁盘空间:~1 GB
.NET:2.0
我正在开发一个在 Windows 7 Embedded 上运行的用 C# 编写的 .NET 2.0 Winforms 应用程序,其中系统只有 1 GB 的 RAM,并且可用磁盘空间相当有限(~1 GB)。我们正在从 Windows XP Embedded 迁移到 Windows 7 Embedded,虽然我们的程序在 Windows XP 上运行良好,但由于 Windows 7 上的内存不足异常,它已经失败了好几次。我们添加了一个 500 MB 的页面文件,因为失败( Windows 7 Embedded 的默认值似乎是 0MB 的页面文件大小)。但是,由于我们已将由程序提交的内存增加引起的内存不足异常缩小,因此系统提交限制可能会在足够长的时间内达到,即使是分页文件也是如此。我们无法快速将硬件迁移到更合适的位置,
使用 SysInternals VMMap 工具,我们可以看到程序的虚拟内存中线程堆栈的数量随着时间的推移缓慢增加,最终在程序提交的内存导致系统超出其提交限制时导致失败。线程堆栈增加的原因已与 .NET 2.0 ThreadPool 隔离,由于某种原因,它会随着时间的推移创建净正数的线程。我们认为这是因为在我们的代码中过度使用了 System.Timers.Timer 类,每个实例都在 ThreadPool 上运行其计时器已过事件处理程序,尽管仍然不清楚为什么 ThreadPool 会保留这么多线程,即使在假设它们并不总是被计时器回调使用。其中一些事件处理程序处理信息的时间超过了 ThreadPool 线程的理想时间,
我们已经为这个问题想出了几种可能的解决方案,包括限制 ThreadPool 工作线程的数量,将运行时间较长的计时器回调换成线程,以及迁移到更高版本的 .NET。最后一个解决方案假定 ThreadPool 管理器的优化已经在 .NET 的迭代中进行,这可能有助于缓解问题。是否还有其他我们遗漏的明显(或不明显)解决方案?
编辑:在进一步检查中,生成并保留的 ThreadPool 线程具有以下调用堆栈:
c# - WPF 应用程序无法在 Windows 7 Embedded 上启动 - 如何跟踪原因
我从 Visual Studio 项目模板(VS 2015)创建了一个简单的 WPF 应用程序。我只将目标框架更改为 .Net 3.5 Client Profile。然后我不得不删除以下程序集引用 Microsoft.CSharp 和 System.Xaml。这些不存在于 .Net 3.5 客户端配置文件中,并且显然不需要运行应用程序。
那个迷你 WPF 应用程序只是打开一个窗口。它在普通 Windows 上正常执行(我测试了 Windows 10 Enterprise 和 Windows 7 Enterprise)。
但它不会在 Windows 7 Embedded 上执行。没有窗户。该过程立即关闭。没有错误信息。没有什么。
我在目标系统上试过:
- Windows 事件日志 - 没有条目
- FUSLOGVW.EXE - 没有错误
- SXSTRACE.EXE - 没有错误
- 带有调试版本的 DebugView.exe (Sysinternals) - 没有调试日志消息
这适用于目标系统:
- .Net 控制台应用程序(运行 CLR2 和 CLR4)
- Windows 窗体应用程序(也具有两个 CLR)
- DirectX 已安装 - dxdiag.exe:没有问题
我可以做什么/运行以找出缺少的内容或出了什么问题?
注意:视频驱动程序是“vga”(标准 Windows 视频驱动程序)。WPF 是否适用于“vga”?图形是来自 Atom D2250 的 CPU 图形。但英特尔的驱动程序不适用于 Windows 7 Embedded。