• Introduction
  • BoxedApp SDK
  • BoxedApp Packer
  • BoxedApp Packer API
Show / Hide Table of Contents
  • Introduction
  • Which Product to Choose
  • System Requirements
  • Basics
    • Virtual Environment
      • Virtual Environment
      • Attached Processes
      • How Attachment Works
      • Virtual Process
      • Shared Memory
    • Virtual File System
    • Virtual Registry
  • BoxedApp SDK
    • Introduction
    • Virtual Files
      • Creating Virtual Files
    • API
      • Functions
        • BoxedAppSDK_Init
        • BoxedAppSDK_EnableDebugLog
        • BoxedAppSDK_SetLogFile
        • BoxedAppSDK_WriteLog
        • BoxedAppSDK_EnableOption
        • BoxedAppSDK_IsOptionEnabled
        • BoxedAppSDK_RemoteProcess_EnableOption
        • BoxedAppSDK_RemoteProcess_IsOptionEnabled
        • BoxedAppSDK_CreateVirtualFile
        • BoxedAppSDK_CreateVirtualFileBasedOnIStream
        • BoxedAppSDK_CreateVirtualFileBasedOnBuffer
        • BoxedAppSDK_CreateVirtualDirectory
        • BoxedAppSDK_DeleteFileFromVirtualFileSystem
        • BoxedAppSDK_CreateVirtualRegKey
        • BoxedAppSDK_EnumVirtualRegKeys
        • BoxedAppSDK_RegisterCOMLibraryInVirtualRegistry
        • BoxedAppSDK_RegisterCOMServerInVirtualRegistry
        • BoxedAppSDK_AttachToProcess
        • BoxedAppSDK_DetachFromProcess
        • BoxedAppSDK_HookFunction
        • BoxedAppSDK_GetOriginalFunction
        • BoxedAppSDK_EnableHook
        • BoxedAppSDK_UnhookFunction
        • BoxedAppSDK_RemoteProcess_LoadLibrary
        • BoxedAppSDK_SharedMem_Alloc
        • BoxedAppSDK_SharedMem_Free
        • BoxedAppSDK_SharedMem_Lock
        • BoxedAppSDK_SharedMem_Unlock
        • BoxedAppSDK_SharedMem_CreateStreamOnSharedMem
      • Options
    • Use Cases
      • Using COM / ActiveX Object without Registering It in the Registry
      • Loading DLL from Memory
      • Starting Application Directly from Memory
      • Intercepting Functions
    • License
  • BoxedApp Packer
    • Introduction
    • Plugins
    • Virtual Files
    • Virtual Registry
    • Command Line Overriding
    • License
  • BoxedApp Packer API
    • Introduction
    • API
      • Functions
        • BxPackerApi_CreateProject
      • Interfaces
        • IBxProject
          • Methods
            • put_InputPath
            • get_InputPath
            • put_OutputPath
            • get_OutputPath
            • put_ShareVirtualEnvironmentWithChildProcesses
            • get_ShareVirtualEnvironmentWithChildProcesses
            • put_EnableDebugLog
            • get_EnableDebugLog
            • put_EnableVirtualRegistry
            • get_EnableVirtualRegistry
            • put_HideVirtualFileFromFileDialog
            • get_HideVirtualFileFromFileDialog
            • put_AllChangesAreVirtual
            • get_AllChangesAreVirtual
            • put_SetIcon
            • get_SetIcon
            • put_IconPath
            • get_IconPath
            • put_EnableSplashScreen
            • get_EnableSplashScreen
            • put_SplashScreenPath
            • get_SplashScreenPath
    • License

BoxedAppSDK_CreateVirtualFile

Description

The function creates a virtual file with the contents located in the memory, shared among all the attached processes. The arguments of BoxedAppSDK_CreateVirtualFile are similar to the arguments of the winapi function CreateFile.

Syntax

C++


  HANDLE __stdcall BoxedAppSDK_CreateVirtualFile(
      LPCTSTR szPath,
      DWORD dwDesiredAccess,
      DWORD dwShareMode,
      LPSECURITY_ATTRIBUTES lpSecurityAttributes,
      DWORD dwCreationDisposition,
      DWORD dwFlagsAndAttributes,
      HANDLE hTemplateFile);

Delphi


  function BoxedAppSDK_CreateVirtualFile(
      lpFileName: PAnsiChar;
      dwDesiredAccess, dwShareMode: Integer;
      lpSecurityAttributes: PSecurityAttributes;
      dwCreationDisposition, dwFlagsAndAttributes: DWORD;
      hTemplateFile: THandle): THandle; stdcall;
  
 function BoxedAppSDK_CreateVirtualFileA(
      lpFileName: PAnsiChar;
      dwDesiredAccess, dwShareMode: Integer;
      lpSecurityAttributes: PSecurityAttributes;
      dwCreationDisposition, dwFlagsAndAttributes: DWORD;
      hTemplateFile: THandle): THandle; stdcall;

  function BoxedAppSDK_CreateVirtualFileW(
      lpFileName: PWideChar;
      dwDesiredAccess, dwShareMode: Integer;
      lpSecurityAttributes: PSecurityAttributes;
      dwCreationDisposition, dwFlagsAndAttributes: DWORD;
      hTemplateFile: THandle): THandle; stdcall;

Parameters

lpFileName

The name, relative or full path of the virtual file to be created.

dwDesiredAccess

The requested access.

dwShareMode

The sharing mode.

lpSecurityAttributes

A pointer to a SECURITY_ATTRIBUTES structure that optionally specifies security descriptor, and whether the file handle can be inherited by child processes. It's ignored by BoxedApp currently.

dwCreationDisposition

An action to take on a virtual file that exists or doesn't exist.

dwFlagsAndAttributes

Combination of FILE_FLAG_* and FILE_ATTRIBUTE_*. You can pass 0.

See Also

  • Virtual File System
Back to top BoxedApp SDK | BoxedApp Packer | BoxedApp Packer API | Download | Buy | Contact us | Copyright © Softanics | Generated by DocFX