3

I have a computer that runs Windows CE 5.0.

I need to get files from another computer (Under Windows XP or Windows 7) and copy them on this Windows CE computer.

My WinCE has the following Ip address : 192.168.50.11 My Win7 has the following Ip address : 192.168.50.200

I created a folder share on my Windows 7 machine, with everyone having the read/right access. It is found under : "\WRKS-NTB-01\Share"

From my WinCE, I'm able to ping my Win7 but only when choosing its IP.

I cannot access the share when using the Explorer, I get the error "Cannot find the file on 192.168.50.200 .......".

I tried to set my Win7 Ip address as DNS Server, WINS Server and Gateway server of my WinCE network card. Without success...

Andy M
  • 145

5 Answers5

4

You can get information from this contents => http://www.hpcfactor.com/support/cesd/c/0006.asp

"Windows CE has no native Network Neighbourhood / My Network Places explorer area. In order to access Network Shares you must use the remote computers Universal Naming Convention (UNC) path."

guest
  • 41
1

AFAIK, accessing network in this way is not possible in WinCE.

You can use: 1. ActiveSync 2. KITL 3. USB/SD card/UART (Depending on BSP support)

for file transfer.

0

I searched in the Internet how to access a shared folder from Windows CE 5.0 and other version for weeks. I didn't find anything that was able to help me to solve my problem.

We have many Windows CE 5.0 devices in our company and to replacement them will cost a lot of money.

Units that we have right now it a system that control tank of oil. I contacted the company GE and spoke with their engineer. They said that it will take months to upgrade the firmware and even that not sure that will work. They also said to change the unit with newer version that can accept USB so we will be able to upload the file manually. That will cost us a fortune just for ONE Single problem.

In the past, when we had to update the system, we must plug it directly using a serial DB25 cable to DB9. That cable is broken, and newer Laptop doesn’t have that kind of port.

Like I said, I searched for many weeks on how to be able to access shared folder from Windows CE and no one can really give me the right answer as example: try DNS, try \ip\shared , try \name\shared, change Windows Firewall, change security, change this and that on the Windows Server and still nothing… some people said it’s problem of DNS and Security.

I was frustrated but I didn’t give up… I took some old book of Windows 95, XP and even millennium and I found the solution. Older Windows does not work with DNS, as you many people talk about this. They mostly use NETBIOS and what work with NETBIOS is WINS server. You could probably ping the server name but when you try to access the shared folder \server\shared there will be an error.

The solution was easy:

  1. access registry if possible and add LMHOST (Shared server name and IP or
  2. Install WINS server.

For me since I cannot access the unit registry, so I installed WINS Server on my DNS server. Once that is done, everything works.

BUT please ready this condition:

  1. You cannot have more than 15 characters for folder, shared server, username, password and domain
  2. Enter UserName, Password and Domain (computer name instead) on Owner. This is the security that will allow you to access the server. Make sure this account easiest on the shared server.
  3. Enter the WINS Server IP. Make sure like DNS enter the Shared Server and IP. You could do this manually or enter the WINS server on the shared server that you want to access. My suggestion is to go with manually entry.
  4. You can also map the drive by using this command: net use Net1 \shared server name\shared folder
  • Important: You cannot use \IP\Shared folder. You must use \server name\shared folder (reminder max 15 characters but to be safe 14 max sometime 15 not work well)

Once that is done, I was able to access any Windows 10 workstation, Windows server 2003, Windows server 2008, Windows server 2012 and Windows server 2016.

That was simple and not complicate… Just going back in the past to get our answer …

I hope with this solution that you could solve your problem.

The One
  • 115
0

Did you consider SMB file sharing? Visuality Systems has developed SMB2 and SMB3 solutions for Windows CE. With SMB3 you can access any share on a Windows, Mac, Linux and even Azure. Look for YNQ SMB library.

0

This is an extension of TB-10201 answer, if you upvote this, please upvote that answer as well. Here are some more tips that might help.

Indeed, Windows CE (up to version 7 at least) does not support connecting to shared folder via \\ipaddress\share_name, it must use \\pc_name\share_name, I could't find official Microsoft documentation explaining this, but read page 26 of this manual: https://www.eaton.com/content/dam/eaton/products/industrialcontrols-drives-automation-sensors/xc-compact-programmable-logic-controllers-(plcs)/windows-ce-mn05010007z-en.pdf

Using WINS Name Resolution

  1. I grabbed a laptop with Windows 10 and connected to the Windows CE device using a direct ethernet crossover cable

  2. Enabled SMB1 protocol on that laptop (I'm not sure which options of the 3 must be enabled, I enabled the 3, please do more research)

    enter image description here

  3. Give static IP addresses to both devices

  4. Make sure both devices can ping each other using the IP

  5. Open the Laptop's NIC properties and enable WINS -> Enable NetBIOS over TCP/IP

    enter image description here

  6. Also on the laptop, go to services and make sure "Computer Browser" is running and that it runs automatically

    enter image description here

    to my understanding, enabling NetBIOS over TCP/IP and Computer Browser service some how enables name resolution between the 2 devices. I could not install a Wins server since it's only available on Windows Server OS, and they were not going to allow me enabling it in my domain controller, and it really shouldn't be.

  7. Set the Laptop's IP address as WINS Server on the Windows CE Host

  8. Now ping the laptop from the WinCE device using the name (it worked for me)

  9. Create a folder in the laptop and share it (try using very short names, there's a limit of 15 characters) enter image description here

  10. Try saving the connection in the WinCE device using:

net use * \\otherpc\shr [domain]\username

  1. WinCe will ask for a password
  2. WinCE will also give an option to store the credentials (I think it saves it in the registry, see "Persist the Changes" below
  3. The folder should appear on the "Network" folder on WinCE

Using an Entry an HOSTs registry

In order to have the WinCE device resolve the IP of the laptop using the name, we could add an entry into the HOSTS or LMHOSTS file, but WinCE does not have a HOSTS or LMHOSTS file, it saves these values on the system registry.

HKEY_LOCAL_MACHINE\Comm\Tcpip\Hosts\TheOtherPC

Where "TheOtherPC" is a key you add with the name of the other computer Then you add 2 Binary values

  • "ipaddr" (the other computer's name)
  • "ExpireTime" (A long time so it really never expires)

The pages in the internet say that you must add these values as binary and hex formats, but I couldn't make it work

Also the WinCE device might or might not have a registry editor program, in my case it did had. There are remote Registry Editors, but I didn't try them.

Persist the Changes

It's my understanding that WinCE does not save anything in configuration files, it saves everything in the windows registry, so you will need to tell the WinCE device to save the changes on the registry or they will be gone the next time the device restarts. This option might depend on the vendor, in my case I found an option in the Control Panel with a single button "Save Registry". In this case it uses an Autoexec.reg that runs every time the device starts, in this reg file you add something like

[HKEY_LOCAL_MACHINE\Comm\Tcpip\Hosts\pc]
"ipaddr"=hex:0a,0a,0a,01

Where "ipaddr" is the hex for the IP. Also you might need to add the "ExpireTime" value

Links

The One
  • 115