locked
FAQs:如何将一个长的路径转换成一个短的路径? RRS feed

  • 问题

  • 为了帮助大家更好地学习 .Net Framework 技术,微软论坛技术支持团队编辑了一些列的 ".Net Framework 常见问题及解答" 精华帖。

    本帖的主题是:如何将一个长的路径转换成一个短的路径?

    如果您觉得这个帖子对您的学习、工作有所帮助,请再把这个帖子分享给你的同学、同事和朋友。

    如果您想阅读更多的 ".Net Framework 常见问题及解答",请打开索引页面:
    http://social.msdn.microsoft.com/Forums/zh-CN/2212/thread/b8c520b0-3ae8-4129-88a6-6221863a09c4


    如果您对我们的论坛在线支持服务有任何的意见或建议,请通过邮件告诉我们。
    2011年2月28日 2:31

答案

  • 类库(Framework)没有直接支持这种实现。但是你可以使用P/invoke来调用GetShortPathName函数。

    这是这个函数的签名:

    [DllImport(“kernel32.dll”, SetLastError=true,  CharSet=CharSet.Auto)]

    Public static extern int GetShortPathName(string  longPath,

    [MarshalAs(UnmanagedType.LPTStr)]stringBuilder  ShortPath,

    [MarshalAs(UnmanagedType.U4)]int  bufferSize);

     


    如果您对我们的论坛在线支持服务有任何的意见或建议,请通过邮件告诉我们。
    2011年2月28日 2:32