The program
class Program
{
static void Main(string[] args)
{
foreach (System.Environment.SpecialFolder value in Enum.GetValues(typeof(System.Environment.SpecialFolder)))
{
Console.WriteLine(Enum.GetName(typeof(System.Environment.SpecialFolder), value) + " = " + System.Environment.GetFolderPath(value));
}
}
}
The output on Windows XP
Desktop = C:\Documents and Settings\Neno\Desktop
Programs = C:\Documents and Settings\Neno\Start Menu\Programs
Personal = D:\My Documents
Personal = D:\My Documents
Favorites = C:\Documents and Settings\Neno\Favorites
Startup = C:\Documents and Settings\Neno\Start Menu\Programs\Startup
Recent = C:\Documents and Settings\Neno\Recent
SendTo = C:\Documents and Settings\Neno\SendTo
StartMenu = C:\Documents and Settings\Neno\Start Menu
MyMusic = D:\My Documents\My Music
DesktopDirectory = C:\Documents and Settings\Neno\Desktop
MyComputer =
Templates = C:\Documents and Settings\Neno\Templates
ApplicationData = C:\Documents and Settings\Neno\Application Data
LocalApplicationData = C:\Documents and Settings\Neno\Local Settings\Application Data
InternetCache = C:\Documents and Settings\Neno\Local Settings\Temporary Internet Files
Cookies = C:\Documents and Settings\Neno\Cookies
History = C:\Documents and Settings\Neno\Local Settings\History
CommonApplicationData = C:\Documents and Settings\All Users\Application Data
System = C:\WINDOWS\system32
ProgramFiles = C:\Program Files
MyPictures = D:\My Documents\My Pictures
CommonProgramFiles = C:\Program Files\Common Files
The output on Windows Vista
Desktop = C:\Users\Neno\Desktop
Programs = C:\Users\Neno\AppData\Roaming\Microsoft\Windows\Start Menu\Programs
Personal = C:\Users\Neno\Documents
Personal = C:\Users\Neno\Documents
Favorites = C:\Users\Neno\Favorites
Startup = C:\Users\Neno\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
Recent = C:\Users\Neno\AppData\Roaming\Microsoft\Windows\Recent
SendTo = C:\Users\Neno\AppData\Roaming\Microsoft\Windows\SendTo
StartMenu = C:\Users\Neno\AppData\Roaming\Microsoft\Windows\Start Menu
MyMusic = C:\Users\Neno\Music
DesktopDirectory = C:\Users\Neno\Desktop
MyComputer =
Templates = C:\Users\Neno\AppData\Roaming\Microsoft\Windows\Templates
ApplicationData = C:\Users\Neno\AppData\Roaming
LocalApplicationData = C:\Users\Neno\AppData\Local
InternetCache = C:\Users\Neno\AppData\Local\Microsoft\Windows\Temporary Internet Files
Cookies = C:\Users\Neno\AppData\Roaming\Microsoft\Windows\Cookies
History = C:\Users\Neno\AppData\Local\Microsoft\Windows\History
CommonApplicationData = C:\ProgramData
System = C:\Windows\system32
ProgramFiles = C:\Program Files
MyPictures = C:\Users\Neno\Pictures
CommonProgramFiles = C:\Program Files\Common Files
Note: On the Window XP machine the My Documents folder was moved to drive D.
Larry asked in the MSDN Forums why the following command line:
svcUtil http://localhost/MyService.svc?wsdl /dconly
raises this error:
Error: The input read from 'http://localhost/MyService.svc?wsdl' is inconsistent with other options.
The essential note is stated in the Windows SDK Release Notes (Link):
5.4.11 Service Model Metadata Utility Tool (SvcUtil.exe) Can’t Generate Data Contracts from a Running Service
An example at the end of the svcutil.exe help output indicates that you can use the /dataContractOnly (/dconly) option to generate Data Contracts from a running service:
svcutil /dconly http://service/metadataEndpoint
- Generate Data Contract types from a running service or online metadata documents.
This usage does not work. You can only use the /dconly option to generate Data Contracts from local metadata files.