CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  硬件/嵌入开发 >  嵌入开发(WinCE)

[-急-] WinCE访问PC的共享文件问题!

楼主ablewindy(我是【风子】我怕谁)2006-12-08 10:01:50 在 硬件/嵌入开发 / 嵌入开发(WinCE) 提问

在一个局域网内有几十台WinCE的终端,他们去访问作为服务器(Windows2003   Server)的共享文件夹,发现有几对的计算机会访问互斥。  
  比如A、B是互斥的,A访问正常,B去访问,则A就会访问失败,A再去访问,B又会访问失败。  
   
  此时在服务器端(Windows2003   Server)“计算机管理-->系统工具-->共享文件夹-->会话”中查看当前访问的“计算机”,发现互斥的两台终端的名字都是一致的,形如:_CEDRD74EBF78。  
   
  每次重启终端后此名字都不同,所以,每次重启后互斥的终端都不同。  
   
  不知WinCE的访问的这个名字是怎么产生的(由于终端的CE都是烧录进去的,所以所有CE的设备名都是WindowsCE)?  
  有什么方法能避免这个问题?  
   
  多谢。 问题点数:100、回复次数:25Top

1 楼zaodt(至尊宝宝:我就在你身旁,关心永远不打烊!)回复于 2006-12-08 10:18:02 得分 5

只有改名字了!Top

2 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-08 10:22:11 得分 0

zaodt(至尊宝宝):  
  我们重新改设备名后试验,发现访问时看到的名字还是随机产生的,形如:_CEDRD74EBF78,而不是像XP访问时的那样,看到的计算机名。  
   
  Top

3 楼szy41(maybei)回复于 2006-12-08 10:49:08 得分 5

upTop

4 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-08 10:59:45 得分 0

我们终端的WinCE是烧录进去的,我们生产的量很大,一个网内可能有上百个这样的终端,如果每个终端都烧不同的系统,这个不太现实,而且当前的问题是即使使用不同的设备名,共享访问的名字还是随机的。  
   
  各位有什么其它思路吗?Top

5 楼zaodt(至尊宝宝:我就在你身旁,关心永远不打烊!)回复于 2006-12-08 11:03:37 得分 10

IP是动态分配的吗?  
   
  网卡地址有冲突吗?Top

6 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-08 11:29:02 得分 0

IP是DHCP动态分配的,MAC地址也是唯一的。Top

7 楼walk_stop_walk()回复于 2006-12-08 16:13:59 得分 5

通过CE如何访问WINXP   中的共享文件夹?能在CE上直接看到吗Top

8 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-08 18:58:54 得分 0

能访问的,不能用IP地址访问,只能用网络名访问。  
  如:\\Server   而不能用   \\192.168.1.1  
   
  谁还能给我点指点?  
  访问共享文件名的那个名称到底是怎么产生的?Top

9 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-08 20:06:13 得分 0

求教各位大侠:  
   
  CE访问服务器端(Windows2003   Server),在服务器端的“计算机管理-->系统工具-->共享文件夹-->会话”中查看当前访问的“计算机”,CE设备访问的名字形如:_CEDRD74EBF78,这个是怎么产生的?  
  Top

10 楼nhczp(陈)回复于 2006-12-09 15:14:57 得分 10

采用固定的IP地址,网关.  
  然后检查一下MAC.  
   
  如果还不行,只得一个一个的试找出出问题的机器啦.Top

11 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-10 11:02:18 得分 0

现已知道_CEDRD74EBF78类型的名字是NetBIOS名字。  
   
  由于每次启动每台终端产生的NetBIOS名字都不一致,所以每次冲突的终端都会变,不知谁知道怎么解决这种产生的NetBIOS名字的冲突问题?  
   
  我们试着做了一个WINS服用器,但这个WINS服务器只能检测到终端的设备名冲突,而似乎CE的NetBIOS名字与设备名没什么关系,还是有冲突的现象。Top

12 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-11 11:09:16 得分 0

继续求救!Top

13 楼hwndhwnd(何宗键)回复于 2006-12-11 15:10:53 得分 10

那个名字似乎是在注册表里面写的,看看Windows   CE注册表下面的两个值是什么?  
   
  [HKEY_LOCAL_MACHINE\Ident]  
          "Name"=LOC_DEFAULTDEVICENAME  
          "Desc"=LOC_DEFAULTDEVICEDESC  
   
  尝试修改一下这个值。  
  Top

14 楼msregister()回复于 2006-12-11 16:34:42 得分 5

有意思,markTop

15 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-12 09:20:21 得分 0

WindowsCE的设备名和设备描述是可以改的(设备名就如同计算机的计算机名,WindowsCE的默认设备名都是WindowsCE),我们也改过这个试了,但在访问共享文件时,在服务器端得到还是那一串_CEDRD74EBF78名称。  
   
  郁闷中,向高手求教。Top

16 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-12 19:19:09 得分 0

继续求教!高手帮忙。Top

17 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-12 19:31:18 得分 0

经过大量枯燥而细致的实验,发现这个名称和设备名、IP、MAC地址都没关系。  
  还试验了WINS服务器,也没结果。  
   
  要崩溃了!!!!!  
  再不行就要跳楼了……  
   
  救命啊!  
   
  难道WinCE就有这问题?Top

18 楼jiess(刘伟庭)回复于 2006-12-12 19:54:01 得分 50

你试一下我提出的两种方法:  
  1.将IP设成固定IP,重启wince.  
  2.用这个函数应当可以NETBIOS名字.  
  int   sethostname(  
      char*   pName,  
      int   cName  
  );  
  Top

19 楼jiess(刘伟庭)回复于 2006-12-12 20:03:50 得分 0

楼主还没告诉我们,你的wince的注册表信息掉电能保存吗?  
  如果不能的话,你只能用第二种方法试试看了.Top

20 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-13 10:04:43 得分 0

多谢   jiess(刘伟庭):  
  掉电是不能保存的!  
  第二种方法也试过,我们修改后设备名是变了,但访问服务器的文件夹时还是那个形如_CEDRD74EBF78的串。  
   
  我们用NetBIOS的命令nbtstat查询过终端的NetBIOS名字,如果终端没有改设备名,使用默认的WindowsCE作为设备名,则nbtstat查询不到终端的NetBIOS名字,如果更改了设备名,则查到的是设备名。  
   
  但就是得不到那个串,难道CE里有多个不同的NetBIOS名?还是那个串根本就不是NetBIOS名?谁知道这个名是怎么产生的?和什么有关?为什么会在同一网络内重复?怎么样避免他们在访问服务器时避免冲突的问题?  
   
  我们也查了一下访问时传输的会话包,发现用的的NBNS/NBSS协议。  
   
  继续求救!Top

21 楼jiess(刘伟庭)回复于 2006-12-13 16:51:08 得分 0

_CEDRD74EBF78,我感觉与IP是有一定关系的.  
  你有空可以看看NetBIOS协议.Top

22 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-14 16:08:27 得分 0

多谢   jiess(刘伟庭):  
  我们也在想是和什么有关系,但我们使用固定IP,固定设备名等方法试验过无效。  
  不论怎么样,每次设备启动后都会产生这个串,每次启动产生的都不同,但重复率很高!  
   
  崩溃了!!Top

23 楼jiess(刘伟庭)回复于 2006-12-14 18:32:21 得分 0

实在不行,就自己写代码来实现.Top

24 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-16 11:36:03 得分 0

经过多方查资料,发现那一串形如_CERAR的字符正是微软为了防止CE的设备名重复而产生的一个名,就是不知道它是怎么产生的,为什么重复的概率那么高。问微软的技术支持也不知其解。  
   
  研究了好久的CE内核代码也找到产生它的地方!  
   
  郁闷了。  
  继续求救!!!Top

25 楼ablewindy(我是【风子】我怕谁)回复于 2006-12-20 09:15:19 得分 0

未解决,看样子太麻烦了,结帖!Top

相关问题

关键词

得分解答快速导航

  • 帖主:ablewindy
  • zaodt
  • szy41
  • zaodt
  • walk_stop_walk
  • nhczp
  • hwndhwnd
  • msregister
  • jiess

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo