我有一台运行 Windows CE 5.0 的计算机。
我需要从另一台计算机(Windows XP 或 Windows 7 下)获取文件并将它们复制到这台 Windows CE 计算机上。
我的 WinCE 具有以下 IP 地址:192.168.50.11 我的 Win7 具有以下 IP 地址:192.168.50.200
我在 Windows 7 计算机上创建了一个文件夹共享,每个人都有读取/正确访问权限。它位于:“\WRKS-NTB-01\Share”
从我的 WinCE,我可以 ping 我的 Win7,但只有在选择它的 IP 时才可以。
当我使用 Explorer 时,我无法访问共享,并收到错误“无法在 192.168.50.200 上找到文件......”。
我尝试将我的 Win7 IP 地址设置为我的 WinCE 网卡的 DNS 服务器、WINS 服务器和网关服务器。但没有成功...
答案1
据我所知,在 WinCE 中无法以这种方式访问网络。
您可以使用:1. ActiveSync 2. KITL 3. USB/SD 卡/UART(取决于 BSP 支持)
用于文件传输。
答案2
您可以从此内容中获取信息 =>http://www.hpcfactor.com/support/cesd/c/0006.asp
“Windows CE 没有本机网络邻居/我的网络位置资源管理器区域。为了访问网络共享,您必须使用远程计算机通用命名约定 (UNC) 路径。”
答案3
您是否考虑过 SMB 文件共享?Visuality Systems 已为 Windows CE 开发了 SMB2 和 SMB3 解决方案。使用 SMB3,您可以访问 Windows、Mac、Linux 甚至 Azure 上的任何共享。查找 YNQ SMB 库。
答案4
这是 TB-10201 答案的扩展,如果您赞同此答案,请也赞同该答案。以下是一些可能有帮助的提示。
确实,Windows CE(至少到版本 7)不支持通过 \\ipaddress\share_name 连接到共享文件夹,它必须使用 \\pc_name\share_name,我找不到解释这一点的微软官方文档,但请阅读本手册的第 26 页:https://www.eaton.com/content/dam/eaton/products/industrialcontrols-drives-automation-sensors/xc-compact-programmable-logic-controllers-(plcs)/windows-ce-mn05010007z-en.pdf
使用 WINS 名称解析
我拿了一台装有 Windows 10 的笔记本电脑,并使用直接以太网交叉电缆连接到 Windows CE 设备
在该笔记本电脑上启用了 SMB1 协议(我不确定必须启用这 3 个选项中的哪些,我启用了这 3 个,请做更多研究)
为两个设备提供静态 IP 地址
确保两台设备可以使用 IP 互相 ping 通
打开笔记本电脑的 NIC 属性并启用 WINS -> 启用 TCP/IP 上的 NetBIOS
同样在笔记本电脑上,转到服务并确保“计算机浏览器”正在运行并且它自动运行
据我所知,启用 TCP/IP 上的 NetBIOS 和计算机浏览器服务可以以某种方式启用 2 个设备之间的名称解析。我无法安装 Wins 服务器,因为它仅在 Windows Server OS 上可用,而且他们不允许我在域控制器中启用它,而实际上不应该这样做。
在 Windows CE 主机上将笔记本电脑的 IP 地址设置为 WINS 服务器
现在使用该名称从 WinCE 设备 ping 笔记本电脑(对我来说有效)
尝试使用以下命令保存 WinCE 设备中的连接:
net use * \\otherpc\shr [域]\用户名
- WinCe 将要求输入密码
- WinCE 还将提供存储凭据的选项(我认为它将凭据保存在注册表中,请参阅下面的“保留更改”
- 该文件夹应出现在 WinCE 上的“网络”文件夹中
使用 HOST 注册表项
为了让 WinCE 设备使用名称解析笔记本电脑的 IP,我们可以在 HOSTS 或 LMHOSTS 文件中添加一个条目,但 WinCE 没有 HOSTS 或 LMHOSTS 文件,它将这些值保存在系统注册表中。
HKEY_LOCAL_MACHINE\Comm\Tcpip\Hosts\TheOtherPC
其中“TheOtherPC”是您添加的另一台计算机的名称的密钥,然后添加 2 个二进制值
- “ipaddr”(另一台计算机的名称)
- “ExpireTime”(很长一段时间,所以它实际上永远不会过期)
互联网上的页面说你必须将这些值添加为二进制和十六进制格式,但我无法让它工作
此外,WinCE 设备可能有也可能没有注册表编辑器程序,就我的情况而言,它有。有远程注册表编辑器,但我没有尝试过。
坚持改变
据我所知,WinCE 不会在配置文件中保存任何内容,而是将所有内容保存在 Windows 注册表中,因此您需要告诉 WinCE 设备保存注册表中的更改,否则下次设备重新启动时这些更改将消失。此选项可能取决于供应商,就我而言,我在控制面板中找到了一个选项,其中只有一个按钮“保存注册表”。在这种情况下它使用每次设备启动时运行的 Autoexec.reg,在此 reg 文件中添加类似
[HKEY_LOCAL_MACHINE\Comm\Tcpip\Hosts\pc]
"ipaddr"=hex:0a,0a,0a,01
其中“ipaddr”是 IP 的十六进制数。此外,您可能还需要添加“ExpireTime”值
链接
- https://www.eaton.com/content/dam/eaton/products/industrialcontrols-drives-automation-sensors/xc-compact-programmable-logic-controllers-(plcs)/windows-ce-mn05010007z-en.pdf
- https://embeddedtechwire.wordpress.com/2010/09/27/lmhosts-file-missing-on-windows-ce-but-%E2%80%93-no-need-to-worry%E2%80%A6/
- http://dotfret.blogspot.com/2012/11/host-files-in-windows-ce.html
- https://www.hpcfactor.com/scl/328/Marc_Zimmermann/Pocket_Hosts/version_1.5?page=download
- http://windowsmobilepro.blogspot.com/2006/04/etchosts-file-equivalent-in-windows.html
- https://www.pcreview.co.uk/threads/changing-a-binary-value-in-the-registry.431781/
- https://support.eurotech-inc.com/forums/topic.asp%3FTOPIC_ID=1166.html
- https://mskb.pkisolutions.com/kb/199370