Пример #1
0
        public static long GetEntryType(ServiceCtx Context)
        {
            FspSrvIFileSystem FileSystem = Context.GetObject <FspSrvIFileSystem>();

            long Position = Context.Request.PtrBuff[0].Position;

            string Name = AMemoryHelper.ReadAsciiString(Context.Memory, Position);

            string FileName = Context.Ns.VFs.GetFullPath(FileSystem.FilePath, Name);

            if (FileName == null)
            {
                //TODO: Correct error code.
                return(-1);
            }

            bool IsFile = File.Exists(FileName);

            Context.ResponseData.Write(IsFile ? 1 : 0);

            return(0);
        }
Пример #2
0
        public static long OpenFile(ServiceCtx Context)
        {
            FspSrvIFileSystem FileSystem = Context.GetObject <FspSrvIFileSystem>();

            long Position = Context.Request.PtrBuff[0].Position;

            int FilterFlags = Context.RequestData.ReadInt32();

            string Name = AMemoryHelper.ReadAsciiString(Context.Memory, Position);

            string FileName = Context.Ns.VFs.GetFullPath(FileSystem.FilePath, Name);

            if (FileName == null)
            {
                //TODO: Correct error code.
                return(-1);
            }

            FileStream Stream = new FileStream(FileName, FileMode.OpenOrCreate);

            MakeObject(Context, new FspSrvIFile(Stream));

            return(0);
        }