
There is no GetComputerName API on Windows CE and I could not find any Compact Framework class to obtain this functionality.
On these devices you can find the computer (pda) name in the registry at HKEY_LOCAL_MACHINE\Ident\Name
If you want to take a look at the registry on your devices/emulators, you can use the free PHM registry editor:
http://www.pocketpcfreeware.com/files/regedit.Mrln_ARM.CAB
The C++ code to obtain the name of the device is the following:
#include <iostream>
#include <string>using namespace std;
wstring GetComputerName()
{HKEY hKey;
if(RegOpenKeyEx(HKEY_LOCAL_MACHINE, L"Ident", 0, NULL, &hKey) != ERROR_SUCCESS)
return wstring();DWORD dwLen = MAX_PATH;
wchar_t Buffer[MAX_PATH];
if(RegQueryValueEx(hKey, L"Name", NULL, NULL, (LPBYTE)Buffer, &dwLen) != ERROR_SUCCESS)
{RegCloseKey(hKey);
return wstring();}
Buffer[dwLen] = NULL;
RegCloseKey(hKey);
return wstring(Buffer);}
The wstring class comes from the STL (Standard Template Library). To show the PDA name in a MessageBox, you can use this code:
wstring name = GetComputerName();
MessageBox(NULL, name.c_str(), L"PDA Name is ...", MB_OK);If you need to get it using C#, just use the Microsoft.Win32.Registry class.
Copyright (c) Raffaele Rialdi 2009, Senior Software Developer, Consultant, p.iva IT01741850992, hosted by Vevy Europe Advanced Technologies Division. Site created by Raffaele Rialdi, 2009 - 2011