mirror of
https://github.com/claunia/romrepomgr.git
synced 2025-12-16 19:24:51 +00:00
Add mount and umount functions for winfsp implementation.
This commit is contained in:
@@ -1,10 +1,13 @@
|
||||
using System;
|
||||
using Fsp;
|
||||
using Fsp.Interop;
|
||||
|
||||
namespace RomRepoMgr.Core.Filesystem
|
||||
{
|
||||
public class Winfsp : FileSystemBase
|
||||
{
|
||||
FileSystemHost _host;
|
||||
|
||||
public static bool IsAvailable
|
||||
{
|
||||
get
|
||||
@@ -24,5 +27,27 @@ namespace RomRepoMgr.Core.Filesystem
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
internal bool Mount(string mountPoint)
|
||||
{
|
||||
_host = new FileSystemHost(this);
|
||||
int ret = _host.Mount(mountPoint);
|
||||
|
||||
if(ret == STATUS_SUCCESS)
|
||||
return true;
|
||||
|
||||
_host = null;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
internal void Umount() => _host?.Unmount();
|
||||
|
||||
public override int SetVolumeLabel(string VolumeLabel, out VolumeInfo VolumeInfo)
|
||||
{
|
||||
VolumeInfo = default;
|
||||
|
||||
return STATUS_MEDIA_WRITE_PROTECTED;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user