gpt4 book ai didi

c# - 共享文件夹API

转载 作者:行者123 更新时间:2023-11-30 15:25:41 25 4
gpt4 key购买 nike

我有一个 C# WinForm 应用程序,它需要为某个文件夹设置共享权限,并指定哪些用户有权读取/写入/删除。我想知道是否有任何 api 或方法可以调用类似于当您右键单击文件夹选择属性/共享/高级共享并打开窗口时调用的东西。

Advanced Sharing Window

如果您知道无论如何从 C# 调用此窗口,如果您分享您的知识,我将不胜感激。我想调用这个窗口。

最佳答案

您可以通过 Win32 API 来完成:

private static void QshareFolder(string FolderPath, string ShareName, string Description)
{
try
{
// Create a ManagementClass object
ManagementClass managementClass = new ManagementClass("Win32_Share");

// Create ManagementBaseObjects for in and out parameters
ManagementBaseObject inParams = managementClass.GetMethodParameters("Create");
ManagementBaseObject outParams;

// Set the input parameters
inParams["Description"] = Description;
inParams["Name"] = ShareName;
inParams["Path"] = FolderPath;
inParams["Type"] = 0x0; // Disk Drive

// Invoke the method on the ManagementClass object
outParams = managementClass.InvokeMethod("Create", inParams, null);
if ((uint)(outParams.Properties["ReturnValue"].Value) != 0)
{
throw new Exception("Unable to share directory.");
}
}
catch (Exception ex)
{
//MessageBox.Show(ex.Message, "error!");
}
}

用法: QshareFolder("c:\TestShare", "测试分享", "这是一个测试分享");

来源:http://www.codeproject.com/Articles/18624/How-to-Share-Windows-Folders-Using-C

关于c# - 共享文件夹API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30601125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com