Как получить Server.MapPath (), отформатированный с короткими именами (формат 8,3 MS-DOS)? - PullRequest
2 голосов
/ 12 сентября 2011

Я использую Process.Start для запуска консольного приложения на сервере ASP.NET, а параметрам программы требуется путь, отформатированный в старом формате MS-DOS 8.3.

Например, в консоли имя папки в этом формате можно получить, набрав «dir / X»:

Как я могу получить Server.MapPath (), отформатированный с версией коротких имен (формат 8.3 MS-DOS) имен папок?

1 Ответ

3 голосов
/ 12 сентября 2011

Это недоступно в качестве управляемого API ...

Вам нужно будет использовать P / Invoke и вызвать GetShortPathName для результата Server.MapPath(), и оно будет успешно выполнено только в случае результата Server.MapPath() действительно существует ... см. http://pinvoke.net/default.aspx/kernel32.GetShortPathName и http://msdn.microsoft.com/en-us/library/aa364989%28v=vs.85%29.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...