c# - 将路径转换为其 GUID 形式

标签 c# guid filepath

我需要将路径(例如 C:\)转换为该卷的 GUID 形式(例如 \\\?\Volume{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}\).

C# 中是否有任何函数可以执行类似的操作?

最佳答案

您需要 P/Invoke GetVolumeNameForVolumeMountPoint:

static string GetVolumeGuidPath(string mountPoint)
{
    StringBuilder sb = new StringBuilder(50);
    GetVolumeNameForVolumeMountPoint(mountPoint, sb, 50);
    return sb.ToString();
}

[DllImport("kernel32.dll", SetLastError = true)]
static extern bool GetVolumeNameForVolumeMountPoint(
    string lpszVolumeMountPoint,
    [Out] StringBuilder lpszVolumeName,
    int cchBufferLength);

关于c# - 将路径转换为其 GUID 形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25507996/

相关文章:

go - 如何以特定模式生成 UUID

java - Windows 和 Linux 中用于 Java 代码的路径定界符

cocoa - NSTask:进程的启动路径是否存在

c# - ObjectContext 实例已被释放,不能再用于需要连接的操作

c# - lambda 表达式和事件处理程序?

c# - Guid的验证

ios - 我可以将 CFUUID 转换为 30 个字符或更少吗?

java - 获取 JRuby jar 路径

c# - Foreach 遍历所有 listView 项目

c# - 无法找到 NgModel