Pastebin
API
tools
faq
paste
Login
Sign up
Please fix the following errors:
New Paste
Syntax Highlighting
// Copyright (c) Softanics // // BoxedApp SDK // // Ask your questions here: http://boxedapp.com/support.html // Our forum: http://boxedapp.com/forum/ // License SDK: http://boxedapp.com/boxedappsdk/order.html // Online help: http://boxedapp.com/boxedappsdk/help/ // #ifndef __BOXEDAPPSDK_H__ #define __BOXEDAPPSDK_H__ #define BOXEDAPPSDKAPI __stdcall #include <pshpack4.h> // IStream* declaration #include <objidl.h> #ifndef DEF_BOXEDAPPSDK_INTERFACES_NOT_REQUIRED #include "BoxedAppSDK_Interfaces.h" #endif // !DEF_BOXEDAPPSDK_INTERFACES_NOT_REQUIRED #ifdef __cplusplus extern "C" { #endif // Options #define DEF_BOXEDAPPSDK_OPTION__ALL_CHANGES_ARE_VIRTUAL (1) // default: 0 (FALSE) #define DEF_BOXEDAPPSDK_OPTION__EMBED_BOXEDAPP_IN_CHILD_PROCESSES (2) // default: 0 (FALSE, don't enable BoxedApp to a new process by default) #define DEF_BOXEDAPPSDK_OPTION__ENABLE_VIRTUAL_FILE_SYSTEM (3) // default: 1 (TRUE) #define DEF_BOXEDAPPSDK_OPTION__RECREATE_VIRTUAL_FILE_AS_VIRTUAL (4) // default: 1 (TRUE) #define DEF_BOXEDAPPSDK_OPTION__ENABLE_VIRTUAL_REGISTRY (5) // default: 1 (TRUE) #define DEF_BOXEDAPPSDK_OPTION__HIDE_VIRTUAL_FILES_FROM_FILE_DIALOG (6) // default: 0 (FALSE) #define DEF_BOXEDAPPSDK_OPTION__EMULATE_OUT_OF_PROC_COM_SERVERS (7) // default: 0 (FALSE) #define DEF_BOXEDAPPSDK_OPTION__INHERIT_OPTIONS (8) // default: 1 (FALSE) #define DEF_BOXEDAPPSDK_OPTION__ENABLE_REGISTRY_RMSC_REDIRECTOR (9) // default: 0 (FALSE) #define DEF_BOXEDAPPSDK_OPTION__ENABLE_ALL_HOOKS (10) // default: 1 (TRUE) #define DEF_BOXEDAPPSDK_OPTION__NTACCESSCHECK_ALWAYS_RETURNS_SUCCESS (11) // default: 0 (FALSE) #define DEF_BOXEDAPPSDK_OPTION__ENABLE_EXPERIMENTAL_IMPORT_PROCESSING (12) // default: 0 (FALSE) // Startup flags #define DEF_BOXEDAPPSDK_STARTUP_OPTION__HOOK_ENGINE (1) // default: 0 (FALSE) /// Isolation mode enumeration typedef enum _BX_ISOLATION_MODE { // No isolation specified BxIsolationMode_None, // File system: // // When enumerating, process views files from the destination directory only // Modifications of files in the destination directory are saved in the destination directory // Files from the source directory are not reading or writing // New files are created in the destination directory // // Registry: // // Process works with virtual registry only, reading and writing are passed // virtual registry only; real registry is not asked at all BxIsolationMode_Full, // When enumerating, process views files from source // directory plus files from destination directory, // but if the same files are in both, then file in // the destination directory gets priority // // Modifications of files in the destination directory // are saved in the destination directory // // Modifications of files in the source directory are // saved to this files // // New files are created in the destination directory // // Registry: // // Process views subkeys / values of virtual registry and real registry; if keys are present // in both registries, the key of virtual registry is included // // New keys are created in virtual registry BxIsolationMode_Merged, // When enumerating, process views files from source // directory plus files from destination directory, // but if the same files are in both, then file in // the destination directory gets priority // // Modifications of files in the destination directory // are saved in the destination directory // // Modifications of files in the source directory are // saved to the destination directory // // New files are created in the destination directory // // Registry: // // Process views subkeys / values of virtual registry and real registry; if keys are present // in both registries, the key of virtual registry is included // // New keys are created in virtual registry // // If real real is opened and one writes to the key, the virtual key is created; so real // registry is not changed BxIsolationMode_WriteCopy } BX_ISOLATION_MODE; void WINAPI BoxedAppSDK_PackerStubEntryPoint(HMODULE, PVOID, DWORD); // Initialization BOOL BOXEDAPPSDKAPI BoxedAppSDK_Init(); // Internal: initialization by environment id BOOL BOXEDAPPSDKAPI BoxedAppSDK_InitById(ULONGLONG nEnvId); // Finalization void BOXEDAPPSDKAPI BoxedAppSDK_Exit(); /// A structure that is used for EnumBoxedAppSDK_RequestId__RedirectFilePath struct SBoxedAppSDK__RedirectFilePath { // in LPCWSTR m_szPath; // out BOOL m_bHandled; LPWSTR m_szRedirectToPath; }; // Internal: this function is called by rundll32.exe when this is used as a helper process void CALLBACK BoxedAppSDK_RunDll32_Callback(); // Enable / disable logging void BOXEDAPPSDKAPI BoxedAppSDK_EnableDebugLog(BOOL bEnable); // Log file void BOXEDAPPSDKAPI BoxedAppSDK_SetLogFileA(LPCSTR szLogFilePath); void BOXEDAPPSDKAPI BoxedAppSDK_SetLogFileW(LPCWSTR szLogFilePath); #ifdef UNICODE #define BoxedAppSDK_SetLogFile BoxedAppSDK_SetLogFileW #else #define BoxedAppSDK_SetLogFile BoxedAppSDK_SetLogFileA #endif // UNICODE void WINAPI BoxedAppSDK_WriteLogA(LPCSTR szMessage); void WINAPI BoxedAppSDK_WriteLogW(LPCWSTR szMessage); #ifdef UNICODE #define BoxedAppSDK_WriteLog BoxedAppSDK_WriteLogW #else #define BoxedAppSDK_WriteLog BoxedAppSDK_WriteLogA #endif // UNICODE // Virtual file system #ifdef UNICODE #define BoxedAppSDK_CreateVirtualFile BoxedAppSDK_CreateVirtualFileW #else #define BoxedAppSDK_CreateVirtualFile BoxedAppSDK_CreateVirtualFileA #endif // UNICODE // Create new virtual file HANDLE BOXEDAPPSDKAPI BoxedAppSDK_CreateVirtualFileA( LPCSTR szPath, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile ); HANDLE BOXEDAPPSDKAPI BoxedAppSDK_CreateVirtualFileW( LPCWSTR szPath, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile ); #ifdef UNICODE #define BoxedAppSDK_CreateVirtualDirectory BoxedAppSDK_CreateVirtualDirectoryW #else #define BoxedAppSDK_CreateVirtualDirectory BoxedAppSDK_CreateVirtualDirectoryA #endif // UNICODE // Create new virtual directory BOOL BOXEDAPPSDKAPI BoxedAppSDK_CreateVirtualDirectoryA( LPCSTR lpPathName, LPSECURITY_ATTRIBUTES lpSecurityAttributes ); BOOL BOXEDAPPSDKAPI BoxedAppSDK_CreateVirtualDirectoryW( LPCWSTR lpPathName, LPSECURITY_ATTRIBUTES lpSecurityAttributes ); #ifdef UNICODE #define BoxedAppSDK_IsVirtualFile BoxedAppSDK_IsVirtualFileW #else #define BoxedAppSDK_IsVirtualFile BoxedAppSDK_IsVirtualFileA #endif // UNICODE // Create new virtual directory BOOL BOXEDAPPSDKAPI BoxedAppSDK_IsVirtualFileA( LPCSTR szPath ); BOOL BOXEDAPPSDKAPI BoxedAppSDK_IsVirtualFileW( LPCWSTR szPath ); // Virtual registry #ifdef UNICODE #define BoxedAppSDK_CreateVirtualRegKey BoxedAppSDK_CreateVirtualRegKeyW #else #define BoxedAppSDK_CreateVirtualRegKey BoxedAppSDK_CreateVirtualRegKeyA #endif // UNICODE LONG BOXEDAPPSDKAPI BoxedAppSDK_CreateVirtualRegKeyA( HKEY hKey, LPCSTR lpSubKey, DWORD Reserved, LPCSTR lpClass, DWORD dwOptions, REGSAM samDesired, LPSECURITY_ATTRIBUTES lpSecurityAttributes, PHKEY phkResult, LPDWORD lpdwDisposition ); LONG BOXEDAPPSDKAPI BoxedAppSDK_CreateVirtualRegKeyW( HKEY hKey, LPCWSTR lpSubKey, DWORD Reserved, LPCWSTR lpClass, DWORD dwOptions, REGSAM samDesired, LPSECURITY_ATTRIBUTES lpSecurityAttributes, PHKEY phkResult, LPDWORD lpdwDisposition ); // Isolation mode for registry keys #ifdef UNICODE #define BoxedAppSDK_SetRegKeyIsolationMode BoxedAppSDK_SetRegKeyIsolationModeW #else #define BoxedAppSDK_SetRegKeyIsolationMode BoxedAppSDK_SetRegKeyIsolationModeA #endif // UNICODE /// Sets isolation mode for the key /// To specify registry view use samDesired (pass KEY_WOW64_32KEY or KEY_WOW64_64KEY), pass zero to don't specify registry view BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetRegKeyIsolationModeW(HKEY hKey, LPCWSTR lpSubKey, REGSAM samDesired, BX_ISOLATION_MODE IsolationMode); /// Sets isolation mode for the key /// To specify registry view use samDesired (pass KEY_WOW64_32KEY or KEY_WOW64_64KEY), pass zero to don't specify registry view BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetRegKeyIsolationModeA(HKEY hKey, LPCSTR lpSubKey, REGSAM samDesired, BX_ISOLATION_MODE IsolationMode); #ifdef UNICODE #define BoxedAppSDK_GetRegKeyIsolationMode BoxedAppSDK_GetRegKeyIsolationModeW #else #define BoxedAppSDK_GetRegKeyIsolationMode BoxedAppSDK_GetRegKeyIsolationModeA #endif // UNICODE /// Gets isolation mode for the key /// To specify registry view use samDesired (pass KEY_WOW64_32KEY or KEY_WOW64_64KEY), pass zero to don't specify registry view BX_ISOLATION_MODE BOXEDAPPSDKAPI BoxedAppSDK_GetRegKeyIsolationModeW(HKEY hKey, LPCWSTR lpSubKey, REGSAM samDesired); /// Gets isolation mode for the key /// To specify registry view use samDesired (pass KEY_WOW64_32KEY or KEY_WOW64_64KEY), pass zero to don't specify registry view BX_ISOLATION_MODE BOXEDAPPSDKAPI BoxedAppSDK_GetRegKeyIsolationModeA(HKEY hKey, LPCSTR lpSubKey, REGSAM samDesired); // Adding virtual registry key from the virtual environment #ifdef UNICODE #define BoxedAppSDK_AddVirtualRegKey BoxedAppSDK_AddVirtualRegKeyW #else #define BoxedAppSDK_AddVirtualRegKey BoxedAppSDK_AddVirtualRegKeyA #endif // UNICODE LONG BOXEDAPPSDKAPI BoxedAppSDK_AddVirtualRegKeyA(HKEY hKey, LPCSTR lpSubKey); LONG BOXEDAPPSDKAPI BoxedAppSDK_AddVirtualRegKeyW(HKEY hKey, LPCWSTR lpSubKey); // Removing virtual registry key from the virtual environment #ifdef UNICODE #define BoxedAppSDK_DeleteVirtualRegKey BoxedAppSDK_DeleteVirtualRegKeyW #else #define BoxedAppSDK_DeleteVirtualRegKey BoxedAppSDK_DeleteVirtualRegKeyA #endif // UNICODE LONG BOXEDAPPSDKAPI BoxedAppSDK_DeleteVirtualRegKeyA(HKEY hKey, LPCSTR lpSubKey); LONG BOXEDAPPSDKAPI BoxedAppSDK_DeleteVirtualRegKeyW(HKEY hKey, LPCWSTR lpSubKey); LONG BOXEDAPPSDKAPI BoxedAppSDK_DeleteVirtualRegKeyByHandle(HKEY hKey); void BOXEDAPPSDKAPI BoxedAppSDK_SetContext(LPCSTR szContext); HRESULT BOXEDAPPSDKAPI BoxedAppSDK_RegisterCOMLibraryInVirtualRegistryA(LPCSTR szPath); HRESULT BOXEDAPPSDKAPI BoxedAppSDK_RegisterCOMLibraryInVirtualRegistryW(LPCWSTR szPath); #ifdef UNICODE #define BoxedAppSDK_RegisterCOMLibraryInVirtualRegistry BoxedAppSDK_RegisterCOMLibraryInVirtualRegistryW #else #define BoxedAppSDK_RegisterCOMLibraryInVirtualRegistry BoxedAppSDK_RegisterCOMLibraryInVirtualRegistryA #endif // UNICODE void BOXEDAPPSDKAPI BoxedAppSDK_EnableOption(DWORD dwOptionIndex, BOOL bEnable); BOOL BOXEDAPPSDKAPI BoxedAppSDK_IsOptionEnabled(DWORD dwOptionIndex); void BOXEDAPPSDKAPI BoxedAppSDK_RemoteProcess_EnableOption(DWORD dwProcessId, DWORD dwOptionIndex, BOOL bEnable); BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoteProcess_IsOptionEnabled(DWORD dwProcessId, DWORD dwOptionIndex); // Set startup flags void BOXEDAPPSDKAPI BoxedAppSDK_SetStartupFlags(DWORD dwFlags); typedef enum _ENUM_BOXEDAPPSDK_REQUEST_ID { EnumBoxedAppSDK_RequestId__RegQueryValue = 1, EnumBoxedAppSDK_RequestId__RedirectFilePath = 2 } ENUM_BOXEDAPPSDK_REQUEST_ID; typedef DWORD (BOXEDAPPSDKAPI *PBOXEDAPPHANDLER)(PVOID Param, ENUM_BOXEDAPPSDK_REQUEST_ID RequestId, PVOID pAdditionalInfo); DWORD BOXEDAPPSDKAPI BoxedAppSDK_AddHandler(PBOXEDAPPHANDLER pHandler, PVOID Param); BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoveHandler(DWORD dwHandlerId); /// A structure that is used for EnumBoxedAppSDK_RequestId__RegQueryValue struct SBoxedAppSDK__RegQueryValue { // in HKEY m_Root; LPCWSTR m_szPath; LPCWSTR m_szValue; // out BOOL m_bHandled; DWORD m_dwType; PVOID m_pData; DWORD m_dwSize; }; PVOID BOXEDAPPSDKAPI BoxedAppSDK_Alloc(DWORD dwSize); BOOL BOXEDAPPSDKAPI BoxedAppSDK_Free(PVOID pData); DWORD BOXEDAPPSDKAPI BoxedAppSDK_DeleteFileFromVirtualFileSystemW(LPCWSTR szPath); DWORD BOXEDAPPSDKAPI BoxedAppSDK_DeleteFileFromVirtualFileSystemA(LPCSTR szPath); #ifdef UNICODE #define BoxedAppSDK_DeleteFileFromVirtualFileSystem BoxedAppSDK_DeleteFileFromVirtualFileSystemW #else #define BoxedAppSDK_DeleteFileFromVirtualFileSystem BoxedAppSDK_DeleteFileFromVirtualFileSystemA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_CreateProcessFromMemoryA( LPCVOID pBuffer, DWORD dwSize, LPCSTR lpApplicationName, LPSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, BOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCSTR lpCurrentDirectory, LPSTARTUPINFOA lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation ); BOOL BOXEDAPPSDKAPI BoxedAppSDK_CreateProcessFromMemoryW( LPCVOID pBuffer, DWORD dwSize, LPCWSTR lpApplicationName, LPWSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, BOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCWSTR lpCurrentDirectory, LPSTARTUPINFOW lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation ); #ifdef UNICODE #define BoxedAppSDK_CreateProcessFromMemory BoxedAppSDK_CreateProcessFromMemoryW #else #define BoxedAppSDK_CreateProcessFromMemory BoxedAppSDK_CreateProcessFromMemoryA #endif // UNICODE // Set param #0 void BOXEDAPPSDKAPI BoxedAppSDK_SetParam0(LPCWSTR param); // Create a virtual file based on IStream HANDLE BOXEDAPPSDKAPI BoxedAppSDK_CreateVirtualFileBasedOnIStreamA( LPCSTR szPath, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile, LPSTREAM pStream ); HANDLE BOXEDAPPSDKAPI BoxedAppSDK_CreateVirtualFileBasedOnIStreamW( LPCWSTR szPath, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile, LPSTREAM pStream ); #ifdef UNICODE #define BoxedAppSDK_CreateVirtualFileBasedOnIStream BoxedAppSDK_CreateVirtualFileBasedOnIStreamW #else #define BoxedAppSDK_CreateVirtualFileBasedOnIStream BoxedAppSDK_CreateVirtualFileBasedOnIStreamA #endif // UNICODE HANDLE BOXEDAPPSDKAPI BoxedAppSDK_CreateVirtualFileBasedOnBufferA( LPCSTR szPath, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile, PVOID pData, DWORD dwSize ); HANDLE BOXEDAPPSDKAPI BoxedAppSDK_CreateVirtualFileBasedOnBufferW( LPCWSTR szPath, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile, PVOID pData, DWORD dwSize ); #ifdef UNICODE #define BoxedAppSDK_CreateVirtualFileBasedOnBuffer BoxedAppSDK_CreateVirtualFileBasedOnBufferW #else #define BoxedAppSDK_CreateVirtualFileBasedOnBuffer BoxedAppSDK_CreateVirtualFileBasedOnBufferA #endif // UNICODE HANDLE BOXEDAPPSDKAPI BoxedAppSDK_CreateVirtualFileOnFilePartW( LPCWSTR szPath, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile, LPCWSTR szSourcePath, DWORD dwOffsetLow, DWORD dwOffsetHigh, DWORD dwSizeLow, DWORD dwSizeHigh); HANDLE BOXEDAPPSDKAPI BoxedAppSDK_CreateVirtualFileOnFilePartA( LPCSTR szPath, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile, LPCSTR szSourcePath, DWORD dwOffsetLow, DWORD dwOffsetHigh, DWORD dwSizeLow, DWORD dwSizeHigh); #ifdef UNICODE #define BoxedAppSDK_CreateVirtualFileOnFilePart BoxedAppSDK_CreateVirtualFileOnFilePartW #else #define BoxedAppSDK_CreateVirtualFileOnFilePart BoxedAppSDK_CreateVirtualFileOnFilePartA #endif // UNICODE // Get parameter for hooked function LPVOID BOXEDAPPSDKAPI BoxedAppSDK_GetHookParam(); // Attach BoxedApp SDK to another process BOOL BOXEDAPPSDKAPI BoxedAppSDK_AttachToProcess(HANDLE hProcess); // Detach BoxedApp SDK from a process BOOL BOXEDAPPSDKAPI BoxedAppSDK_DetachFromProcess(HANDLE hProcess); // BOOL BOXEDAPPSDKAPI BoxedAppSDK_AddStartupDLLW(LPCWSTR szPath); // BOOL BOXEDAPPSDKAPI BoxedAppSDK_AddStartupDLLA(LPCSTR szPath); #ifdef UNICODE #define BoxedAppSDK_AddStartupDLL BoxedAppSDK_AddStartupDLLW #else #define BoxedAppSDK_AddStartupDLL BoxedAppSDK_AddStartupDLLA #endif // UNICODE #ifdef UNICODE #define BoxedAppSDK_RemoveStartupDLL BoxedAppSDK_RemoveStartupDLLW #else #define BoxedAppSDK_RemoveStartupDLL BoxedAppSDK_RemoveStartupDLLA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoveStartupDLLW(LPCWSTR szPath); BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoveStartupDLLA(LPCSTR szPath); BOOL BOXEDAPPSDKAPI BoxedAppSDK_AddExeToAttachableChildProcExclusionListA(LPCSTR szExeName); BOOL BOXEDAPPSDKAPI BoxedAppSDK_AddExeToAttachableChildProcExclusionListW(LPCWSTR szExeName); #ifdef UNICODE #define BoxedAppSDK_AddExeToAttachableChildProcExclusionList BoxedAppSDK_AddExeToAttachableChildProcExclusionListW #else #define BoxedAppSDK_AddExeToAttachableChildProcExclusionList BoxedAppSDK_AddExeToAttachableChildProcExclusionListA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoveExeFromAttachableChildProcExclusionListA(LPCSTR szExeName); BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoveExeFromAttachableChildProcExclusionListW(LPCWSTR szExeName); #ifdef UNICODE #define BoxedAppSDK_RemoveExeFromAttachableChildProcExclusionList BoxedAppSDK_RemoveExeFromAttachableChildProcExclusionListW #else #define BoxedAppSDK_RemoveExeFromAttachableChildProcExclusionList BoxedAppSDK_RemoveExeFromAttachableChildProcExclusionListA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_AddExeToAttachableChildProcListA(LPCSTR szExeName); BOOL BOXEDAPPSDKAPI BoxedAppSDK_AddExeToAttachableChildProcListW(LPCWSTR szExeName); #ifdef UNICODE #define BoxedAppSDK_AddExeToAttachableChildProcList BoxedAppSDK_AddExeToAttachableChildProcListW #else #define BoxedAppSDK_AddExeToAttachableChildProcList BoxedAppSDK_AddExeToAttachableChildProcListA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoveExeFromAttachableChildProcListA(LPCSTR szExeName); BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoveExeFromAttachableChildProcListW(LPCWSTR szExeName); #ifdef UNICODE #define BoxedAppSDK_RemoveExeFromAttachableChildProcList BoxedAppSDK_RemoveExeFromAttachableChildProcListW #else #define BoxedAppSDK_RemoveExeFromAttachableChildProcList BoxedAppSDK_RemoveExeFromAttachableChildProcListA #endif // UNICODE // Execute .net application DWORD BOXEDAPPSDKAPI BoxedAppSDK_ExecuteDotNetApplicationW(LPCWSTR szPath, LPCWSTR szArgs); DWORD BOXEDAPPSDKAPI BoxedAppSDK_ExecuteDotNetApplicationA(LPCSTR szPath, LPCSTR szArgs); #ifdef UNICODE #define BoxedAppSDK_ExecuteDotNetApplication BoxedAppSDK_ExecuteDotNetApplicationW #else #define BoxedAppSDK_ExecuteDotNetApplication BoxedAppSDK_ExecuteDotNetApplicationA #endif // UNICODE // Execute .net application, with or without calling AppDomain.Unload() // AppDomain.Unload() may hang the process for some time DWORD BOXEDAPPSDKAPI BoxedAppSDK_ExecuteDotNetApplicationExW(LPCWSTR szPath, LPCWSTR szArgs, BOOL bCallAppDomainUnload); DWORD BOXEDAPPSDKAPI BoxedAppSDK_ExecuteDotNetApplicationExA(LPCSTR szPath, LPCSTR szArgs, BOOL bCallAppDomainUnload); #ifdef UNICODE #define BoxedAppSDK_ExecuteDotNetApplicationEx BoxedAppSDK_ExecuteDotNetApplicationExW #else #define BoxedAppSDK_ExecuteDotNetApplicationEx BoxedAppSDK_ExecuteDotNetApplicationExA #endif // UNICODE // Internal; don't use DWORD BOXEDAPPSDKAPI BoxedAppSDK_GetInternalValue(DWORD nValueId, LPVOID buf, DWORD dwSize); // Function hooking HANDLE BOXEDAPPSDKAPI BoxedAppSDK_HookFunctionWithParam(PVOID pFunction, PVOID pHook, LPVOID pParam, BOOL bEnable); HANDLE BOXEDAPPSDKAPI BoxedAppSDK_HookFunction(PVOID pFunction, PVOID pHook, BOOL bEnable); BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetHookParam(HANDLE pHook, LPVOID pParam); PVOID BOXEDAPPSDKAPI BoxedAppSDK_GetOriginalFunction(HANDLE hHook); BOOL BOXEDAPPSDKAPI BoxedAppSDK_EnableHook(HANDLE hHook, BOOL bEnable); BOOL BOXEDAPPSDKAPI BoxedAppSDK_UnhookFunction(HANDLE hHook); #ifndef DWORD_PTR #define DWORD_PTR SIZE_T #endif // !DWORD_PTR BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoteProcess_ReadStringW(DWORD dwProcessId, const VOID* pAddress, LPWSTR* pString); BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoteProcess_ReadStringA(DWORD dwProcessId, const VOID* pAddress, LPSTR* pString); #ifdef UNICODE #define BoxedAppSDK_RemoteProcess_ReadString BoxedAppSDK_RemoteProcess_ReadStringW #else #define BoxedAppSDK_RemoteProcess_ReadString BoxedAppSDK_RemoteProcess_ReadStringA #endif // UNICODE PVOID BOXEDAPPSDKAPI BoxedAppSDK_RemoteProcess_Alloc(DWORD dwProcessId, DWORD dwSize); BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoteProcess_Free(DWORD dwProcessId, PVOID pMemory); PVOID BOXEDAPPSDKAPI BoxedAppSDK_RemoteProcess_AllocStringW(DWORD dwProcessId, LPCWSTR szSource); PVOID BOXEDAPPSDKAPI BoxedAppSDK_RemoteProcess_AllocStringA(DWORD dwProcessId, LPCSTR szSource); #ifdef UNICODE #define BoxedAppSDK_RemoteProcess_AllocString BoxedAppSDK_RemoteProcess_AllocStringW #else #define BoxedAppSDK_RemoteProcess_AllocString BoxedAppSDK_RemoteProcess_AllocStringA #endif // UNICODE HMODULE BOXEDAPPSDKAPI BoxedAppSDK_RemoteProcess_LoadLibraryA(DWORD dwProcessId, LPCSTR szPath); HMODULE BOXEDAPPSDKAPI BoxedAppSDK_RemoteProcess_LoadLibraryW(DWORD dwProcessId, LPCWSTR szPath); #ifdef UNICODE #define BoxedAppSDK_RemoteProcess_LoadLibrary BoxedAppSDK_RemoteProcess_LoadLibraryW #else #define BoxedAppSDK_RemoteProcess_LoadLibrary BoxedAppSDK_RemoteProcess_LoadLibraryA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoteProcess_FreeLibrary(DWORD dwProcessId, HMODULE hModule); DWORD BOXEDAPPSDKAPI BoxedAppSDK_RegisterCOMServerInVirtualRegistryA(LPCSTR szCommandLine); DWORD BOXEDAPPSDKAPI BoxedAppSDK_RegisterCOMServerInVirtualRegistryW(LPCWSTR szCommandLine); #ifdef UNICODE #define BoxedAppSDK_RegisterCOMServerInVirtualRegistry BoxedAppSDK_RegisterCOMServerInVirtualRegistryW #else #define BoxedAppSDK_RegisterCOMServerInVirtualRegistry BoxedAppSDK_RegisterCOMServerInVirtualRegistryA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_IsMainProcess(); BOOL BOXEDAPPSDKAPI BoxedAppSDK_IsVirtualProcessId(DWORD dwProcessId); BOOL BOXEDAPPSDKAPI BoxedAppSDK_IsAttachedProcessId(DWORD dwProcessId); typedef BOOL (WINAPI *P_BoxedAppSDK_EnumVirtualRegKeysCallbackA)(HKEY hRootKey, LPCSTR szSubKey, LPARAM lParam); typedef BOOL (WINAPI *P_BoxedAppSDK_EnumVirtualRegKeysCallbackW)(HKEY hRootKey, LPCWSTR szSubKey, LPARAM lParam); BOOL BOXEDAPPSDKAPI BoxedAppSDK_EnumVirtualRegKeysA(P_BoxedAppSDK_EnumVirtualRegKeysCallbackA pEnumFunc, LPARAM lParam); BOOL BOXEDAPPSDKAPI BoxedAppSDK_EnumVirtualRegKeysW(P_BoxedAppSDK_EnumVirtualRegKeysCallbackW pEnumFunc, LPARAM lParam); #ifdef UNICODE #define BoxedAppSDK_EnumVirtualRegKeys BoxedAppSDK_EnumVirtualRegKeysW #define P_BoxedAppSDK_EnumVirtualRegKeysCallback P_BoxedAppSDK_EnumVirtualRegKeysCallbackW #else #define BoxedAppSDK_EnumVirtualRegKeys BoxedAppSDK_EnumVirtualRegKeysA #define P_BoxedAppSDK_EnumVirtualRegKeysCallback P_BoxedAppSDK_EnumVirtualRegKeysCallbackA #endif // UNICODE #ifndef DEF_BOXEDAPPSDK_INTERFACES_NOT_REQUIRED BOOL BOXEDAPPSDKAPI BoxedAppSDK_CreateCustomVirtualDirectoryA( LPCSTR lpPathName, IBxFile* pFile, LPSECURITY_ATTRIBUTES lpSecurityAttributes); BOOL BOXEDAPPSDKAPI BoxedAppSDK_CreateCustomVirtualDirectoryW( LPCWSTR lpPathName, IBxFile* pFile, LPSECURITY_ATTRIBUTES lpSecurityAttributes); #ifdef UNICODE #define BoxedAppSDK_CreateCustomVirtualDirectory BoxedAppSDK_CreateCustomVirtualDirectoryW #else #define BoxedAppSDK_CreateCustomVirtualDirectory BoxedAppSDK_CreateCustomVirtualDirectoryA #endif // UNICODE #endif // !DEF_BOXEDAPPSDK_INTERFACES_NOT_REQUIRED /// Retrieves global file isolation mode BX_ISOLATION_MODE BOXEDAPPSDKAPI BoxedAppSDK_GetGlobalFileIsolationMode(); /// Sets global file isolation mode /// Some file requests (depending on isolation mode) are passed to szDestinationPath BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetGlobalFileIsolationModeA(BX_ISOLATION_MODE IsolationMode, LPCSTR szDestinationPath); /// Sets global file isolation mode /// Some file requests (depending on isolation mode) are passed to szDestinationPath BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetGlobalFileIsolationModeW(BX_ISOLATION_MODE IsolationMode, LPCWSTR szDestinationPath); #ifdef UNICODE #define BoxedAppSDK_SetGlobalFileIsolationMode BoxedAppSDK_SetGlobalFileIsolationModeW #else #define BoxedAppSDK_SetGlobalFileIsolationMode BoxedAppSDK_SetGlobalFileIsolationModeA #endif // UNICODE /// Sets isolation mode for directory / file /// Some file requests (depending on isolation mode) are passed from szRedirectedPath to szDestinationPath BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetFileIsolationModeW(BX_ISOLATION_MODE IsolationMode, LPCWSTR szRedirectedPath, LPCWSTR szDestinationPath); /// Sets isolation mode for directory / file /// Some file requests (depending on isolation mode) are passed from szRedirectedPath to szDestinationPath BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetFileIsolationModeA(BX_ISOLATION_MODE IsolationMode, LPCSTR szRedirectedPath, LPCSTR szDestinationPath); #ifdef UNICODE #define BoxedAppSDK_SetFileIsolationMode BoxedAppSDK_SetFileIsolationModeW #else #define BoxedAppSDK_SetFileIsolationMode BoxedAppSDK_SetFileIsolationModeA #endif // UNICODE /// Returns whether the handle virtual BOOL BOXEDAPPSDKAPI BoxedAppSDK_IsVirtualHandle(HANDLE Handle); // If bxsdk32.dll / bxsdk64.dll can't be loaded, it creates a virtual bxsdk32.dll / bxsdk64.dll, // all exports points to the correct code // Useful when you link BoxedAppSDK statically, but some code (another DLL) needs bxsdk32.dll / bxsdk64.dll // Also see function BoxedAppSDK_SetVirtualBoxedAppSDKDLLBaseDir void BOXEDAPPSDKAPI BoxedAppSDK_EmulateBoxedAppSDKDLL(); // Specifies a base directory where virtual bxsdk32.dll / bxsdk64.dll will be placed // Actually for each process the virtual bxsdk32.dll / bxsdk64.dll is placed into <base dir>\\proces__int64\\ // Virtual bxsdk32.dll / bxsdk64.dll can be created when BoxedAppSDK_EmulateBoxedAppSDKDLL() // is called, or when new process is begin attached to virtual environment (you know, // it's important to have a virtual bxsdk32.dll / bxsdk64.dll if main process uses // static library of BoxedApp SDK, so real bxsdk32.dll / bxsdk64.dll doesn't exist; but // attached process should be able to call functions of bxsdk32.dll / bxsdk64.dll -- that's // the reason) // It's not required to call this function; boxedapp can use a default value of // the directory // Also see function BoxedAppSDK_EmulateBoxedAppSDKDLL void BOXEDAPPSDKAPI BoxedAppSDK_SetVirtualBoxedAppSDKDLLBaseDirA(LPCSTR szDir); void BOXEDAPPSDKAPI BoxedAppSDK_SetVirtualBoxedAppSDKDLLBaseDirW(LPCWSTR szDir); #ifdef UNICODE #define BoxedAppSDK_SetVirtualBoxedAppSDKDLLBaseDir BoxedAppSDK_SetVirtualBoxedAppSDKDLLBaseDirW #else #define BoxedAppSDK_SetVirtualBoxedAppSDKDLLBaseDir BoxedAppSDK_SetVirtualBoxedAppSDKDLLBaseDirA #endif // UNICODE // // Shared memory API // typedef LONGLONG BOXEDAPP_SHARED_PTR; BOXEDAPP_SHARED_PTR BOXEDAPPSDKAPI BoxedAppSDK_SharedMem_Alloc(int nSize); void BOXEDAPPSDKAPI BoxedAppSDK_SharedMem_Free(BOXEDAPP_SHARED_PTR shared_ptr); PVOID BOXEDAPPSDKAPI BoxedAppSDK_SharedMem_Lock(BOXEDAPP_SHARED_PTR shared_ptr); BOOL BOXEDAPPSDKAPI BoxedAppSDK_SharedMem_Unlock(BOXEDAPP_SHARED_PTR shared_ptr); HRESULT BOXEDAPPSDKAPI BoxedAppSDK_SharedMem_CreateStreamOnSharedMem(LPSTREAM* ppStream); BOOL BOXEDAPPSDKAPI BoxedAppSDK_AddStubCandidateA(LPCSTR szStubPath); BOOL BOXEDAPPSDKAPI BoxedAppSDK_AddStubCandidateW(LPCWSTR szStubPath); #ifdef UNICODE #define BoxedAppSDK_AddStubCandidate BoxedAppSDK_AddStubCandidateW #else #define BoxedAppSDK_AddStubCandidate BoxedAppSDK_AddStubCandidateA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoveStubCandidateA(LPCSTR szStubPath); BOOL BOXEDAPPSDKAPI BoxedAppSDK_RemoveStubCandidateW(LPCWSTR szStubPath); #ifdef UNICODE #define BoxedAppSDK_RemoveStubCandidate BoxedAppSDK_RemoveStubCandidateW #else #define BoxedAppSDK_RemoveStubCandidate BoxedAppSDK_RemoveStubCandidateA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_IsVirtualRegValueW(HKEY hKey, LPCWSTR szValueName); BOOL BOXEDAPPSDKAPI BoxedAppSDK_IsVirtualRegValueA(HKEY hKey, LPCSTR szValueName); #ifdef UNICODE #define BoxedAppSDK_IsVirtualRegValue BoxedAppSDK_IsVirtualRegValueW #else #define BoxedAppSDK_IsVirtualRegValue BoxedAppSDK_IsVirtualRegValueA #endif // UNICODE // Virtual installing of assembly BOOL BoxedAppSDK_InstallAssemblyA(LPCSTR szManifestPath, LPCSTR szPolicyPath); BOOL BoxedAppSDK_InstallAssemblyW(LPCWSTR szManifestPath, LPCWSTR szPolicyPath); #ifdef UNICODE #define BoxedAppSDK_InstallAssembly BoxedAppSDK_InstallAssemblyW #else #define BoxedAppSDK_InstallAssembly BoxedAppSDK_InstallAssemblyA #endif // UNICODE // Specify path to bxsdk32.dll / bxsdk64.dll // It's useful in the following case: // your application statically linked with BoxedApp SDK, so it doesn't require the DLL to work // if a process that has another bitness should be attached to the virtual environment, BoxedApp SDK // will try to use bxsdk32.dll (to attach 32 bit process) or bxsdk64.dll (to attach 64 bit process) // But your application doesn't need the DLLs. To help BoxedApp SDK you could place // bxsdk32.dll / bxsdk64.dll somewhere and make BoxedApp SDK uses these paths // If you just put bxsdk32.dll and bxsdk64.dll to the exe's directory - you don't need to call // these functions: BoxedApp SDK will find these dlls automatically BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetBxSdk32DllPathW(LPCWSTR szPath); BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetBxSdk32DllPathA(LPCSTR szPath); #ifdef UNICODE #define BoxedAppSDK_SetBxSdk32DllPath BoxedAppSDK_SetBxSdk32DllPathW #else #define BoxedAppSDK_SetBxSdk32DllPath BoxedAppSDK_SetBxSdk32DllPathA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetBxSdk64DllPathW(LPCWSTR szPath); BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetBxSdk64DllPathA(LPCSTR szPath); #ifdef UNICODE #define BoxedAppSDK_SetBxSdk64DllPath BoxedAppSDK_SetBxSdk64DllPathW #else #define BoxedAppSDK_SetBxSdk64DllPath BoxedAppSDK_SetBxSdk64DllPathA #endif // UNICODE // Specify path to a DLL that redirects call to BoxedApp // It's useful in the following case: // your application statically linked with BoxedApp SDK, so it doesn't require the DLL to work // if a virtual process must be created with CreateProcessWithLogonW, a special helper process // based on rundll32.exe is started, and rundll32.exe needs a DLL // Be default, path to boxedapp sdk dll passed, but you can specify your own dll ("shim") // that will redirect calls to boxedapp sdk code (statically linked into your dll) BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetBxSdk32ShimDllPathW(LPCWSTR szPath); BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetBxSdk32ShimDllPathA(LPCSTR szPath); #ifdef UNICODE #define BoxedAppSDK_SetBxSdk32ShimDllPath BoxedAppSDK_SetBxSdk32ShimDllPathW #else #define BoxedAppSDK_SetBxSdk32ShimDllPath BoxedAppSDK_SetBxSdk32ShimDllPathA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetBxSdk64ShimDllPathW(LPCWSTR szPath); BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetBxSdk64ShimDllPathA(LPCSTR szPath); #ifdef UNICODE #define BoxedAppSDK_SetBxSdk64ShimDllPath BoxedAppSDK_SetBxSdk64ShimDllPathW #else #define BoxedAppSDK_SetBxSdk64ShimDllPath BoxedAppSDK_SetBxSdk64ShimDllPathA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetVirtualVolumeSerialW(LPCWSTR szPath, DWORD nVolumeSerial); BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetVirtualVolumeSerialA(LPCSTR szPath, DWORD nVolumeSerial); #ifdef UNICODE #define BoxedAppSDK_SetVirtualVolumeSerial BoxedAppSDK_SetVirtualVolumeSerialW #else #define BoxedAppSDK_SetVirtualVolumeSerial BoxedAppSDK_SetVirtualVolumeSerialA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetVirtualVolumeCreationTimeW(LPCWSTR szPath, FILETIME nVolumeCreationTime); BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetVirtualVolumeCreationTimeA(LPCSTR szPath, FILETIME nVolumeCreationTime); #ifdef UNICODE #define BoxedAppSDK_SetVirtualVolumeCreationTime BoxedAppSDK_SetVirtualVolumeCreationTimeW #else #define BoxedAppSDK_SetVirtualVolumeCreationTime BoxedAppSDK_SetVirtualVolumeCreationTimeA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetVirtualVolumeNameW(LPCWSTR szPath, LPCWSTR szVolumeName); BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetVirtualVolumeNameA(LPCSTR szPath, LPCSTR szVolumeName); #ifdef UNICODE #define BoxedAppSDK_SetVirtualVolumeName BoxedAppSDK_SetVirtualVolumeNameW #else #define BoxedAppSDK_SetVirtualVolumeName BoxedAppSDK_SetVirtualVolumeNameA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_SetBxSdkRawData(PVOID pData, DWORD dwSize); typedef void (WINAPI* P_BoxedAppSDK_IPC_Listener)(PVOID pRequestData, DWORD dwRequestSize); VOID BOXEDAPPSDKAPI BoxedAppSDK_IPC_AddListenerW(P_BoxedAppSDK_IPC_Listener pListener, LPCWSTR szMessageClass); VOID BOXEDAPPSDKAPI BoxedAppSDK_IPC_AddListenerA(P_BoxedAppSDK_IPC_Listener pListener, LPCSTR szMessageClass); #ifdef UNICODE #define BoxedAppSDK_IPC_AddListener BoxedAppSDK_IPC_AddListenerW #else #define BoxedAppSDK_IPC_AddListener BoxedAppSDK_IPC_AddListenerA #endif // UNICODE VOID BOXEDAPPSDKAPI BoxedAppSDK_IPC_RemoveListener(P_BoxedAppSDK_IPC_Listener pListener); BOOL BOXEDAPPSDKAPI BoxedAppSDK_IPC_SendMessageW(LPCWSTR szMessageClass, LPCVOID lpcMessage, DWORD dwMessageSize); BOOL BOXEDAPPSDKAPI BoxedAppSDK_IPC_SendMessageA(LPCSTR szMessageClass, LPCVOID lpcMessage, DWORD dwMessageSize); #ifdef UNICODE #define BoxedAppSDK_IPC_SendMessage BoxedAppSDK_IPC_SendMessageW #else #define BoxedAppSDK_IPC_SendMessage BoxedAppSDK_IPC_SendMessageA #endif // UNICODE BOOL BOXEDAPPSDKAPI BoxedAppSDK_IPC_SendMessageToProcessW(DWORD dwPid, LPCWSTR szMessageClass, LPCVOID lpcMessage, DWORD dwMessageSize); BOOL BOXEDAPPSDKAPI BoxedAppSDK_IPC_SendMessageToProcessA(DWORD dwPid, LPCSTR szMessageClass, LPCVOID lpcMessage, DWORD dwMessageSize); #ifdef UNICODE #define BoxedAppSDK_IPC_SendMessageToProcess BoxedAppSDK_IPC_SendMessageToProcessW #else #define BoxedAppSDK_IPC_SendMessageToProcess BoxedAppSDK_IPC_SendMessageToProcessA #endif // UNICODE void BOXEDAPPSDKAPI BoxedAppSDK_EnableDebugStatistics(BOOL bEnable, DWORD nThreadId); typedef struct _SBxDebugStatistics { ULONGLONG m_nAllocationCount; } SBxDebugStatistics; BOOL BOXEDAPPSDKAPI BoxedAppSDK_GetDebugStatistics(SBxDebugStatistics* pInfo); #ifdef __cplusplus } #endif #include <poppack.h> #endif // !__BOXEDAPPSDK_H__
Optional Paste Settings
Category:
None
Cryptocurrency
Cybersecurity
Fixit
Food
Gaming
Haiku
Help
History
Housing
Jokes
Legal
Money
Movies
Music
Pets
Photo
Science
Software
Source Code
Spirit
Sports
Travel
TV
Writing
Tags:
Syntax Highlighting:
None
Bash
C
C#
C++
CSS
HTML
JSON
Java
JavaScript
Lua
Markdown (PRO members only)
Objective C
PHP
Perl
Python
Ruby
Swift
4CS
6502 ACME Cross Assembler
6502 Kick Assembler
6502 TASM/64TASS
ABAP
AIMMS
ALGOL 68
APT Sources
ARM
ASM (NASM)
ASP
ActionScript
ActionScript 3
Ada
Apache Log
AppleScript
Arduino
Asymptote
AutoIt
Autohotkey
Avisynth
Awk
BASCOM AVR
BNF
BOO
Bash
Basic4GL
Batch
BibTeX
Blitz Basic
Blitz3D
BlitzMax
BrainFuck
C
C (WinAPI)
C Intermediate Language
C for Macs
C#
C++
C++ (WinAPI)
C++ (with Qt extensions)
C: Loadrunner
CAD DCL
CAD Lisp
CFDG
CMake
COBOL
CSS
Ceylon
ChaiScript
Chapel
Clojure
Clone C
Clone C++
CoffeeScript
ColdFusion
Cuesheet
D
DCL
DCPU-16
DCS
DIV
DOT
Dart
Delphi
Delphi Prism (Oxygene)
Diff
E
ECMAScript
EPC
Easytrieve
Eiffel
Email
Erlang
Euphoria
F#
FO Language
Falcon
Filemaker
Formula One
Fortran
FreeBasic
FreeSWITCH
GAMBAS
GDB
GDScript
Game Maker
Genero
Genie
GetText
Go
Godot GLSL
Groovy
GwBasic
HQ9 Plus
HTML
HTML 5
Haskell
Haxe
HicEst
IDL
INI file
INTERCAL
IO
ISPF Panel Definition
Icon
Inno Script
J
JCL
JSON
Java
Java 5
JavaScript
Julia
KSP (Kontakt Script)
KiXtart
Kotlin
LDIF
LLVM
LOL Code
LScript
Latex
Liberty BASIC
Linden Scripting
Lisp
Loco Basic
Logtalk
Lotus Formulas
Lotus Script
Lua
M68000 Assembler
MIX Assembler
MK-61/52
MPASM
MXML
MagikSF
Make
MapBasic
Markdown (PRO members only)
MatLab
Mercury
MetaPost
Modula 2
Modula 3
Motorola 68000 HiSoft Dev
MySQL
Nagios
NetRexx
Nginx
Nim
NullSoft Installer
OCaml
OCaml Brief
Oberon 2
Objeck Programming Langua
Objective C
Octave
Open Object Rexx
OpenBSD PACKET FILTER
OpenGL Shading
Openoffice BASIC
Oracle 11
Oracle 8
Oz
PARI/GP
PCRE
PHP
PHP Brief
PL/I
PL/SQL
POV-Ray
ParaSail
Pascal
Pawn
Per
Perl
Perl 6
Phix
Pic 16
Pike
Pixel Bender
PostScript
PostgreSQL
PowerBuilder
PowerShell
ProFTPd
Progress
Prolog
Properties
ProvideX
Puppet
PureBasic
PyCon
Python
Python for S60
QBasic
QML
R
RBScript
REBOL
REG
RPM Spec
Racket
Rails
Rexx
Robots
Roff Manpage
Ruby
Ruby Gnuplot
Rust
SAS
SCL
SPARK
SPARQL
SQF
SQL
SSH Config
Scala
Scheme
Scilab
SdlBasic
Smalltalk
Smarty
StandardML
StoneScript
SuperCollider
Swift
SystemVerilog
T-SQL
TCL
TeXgraph
Tera Term
TypeScript
TypoScript
UPC
Unicon
UnrealScript
Urbi
VB.NET
VBScript
VHDL
VIM
Vala
Vedit
VeriLog
Visual Pro Log
VisualBasic
VisualFoxPro
WHOIS
WhiteSpace
Winbatch
XBasic
XML
XPP
Xojo
Xorg Config
YAML
YARA
Z80 Assembler
ZXBasic
autoconf
jQuery
mIRC
newLISP
q/kdb+
thinBasic
Paste Expiration:
Never
Burn after read
10 Minutes
1 Hour
1 Day
1 Week
2 Weeks
1 Month
6 Months
1 Year
Paste Exposure:
Public
Unlisted
Private
Folder:
(members only)
Password
NEW
Enabled
Disabled
Burn after read
NEW
Paste Name / Title:
Create New Paste
Hello
Guest
Sign Up
or
Login
Sign in with Facebook
Sign in with Twitter
Sign in with Google
You are currently not logged in, this means you can not edit or delete anything you paste.
Sign Up
or
Login
Public Pastes
Untitled
6 hours ago | 1.88 KB
Untitled
6 hours ago | 0.67 KB
Untitled
6 hours ago | 3.33 KB
Untitled
7 hours ago | 1.00 KB
Untitled
7 hours ago | 0.33 KB
Untitled
7 hours ago | 1.55 KB
my software
10 hours ago | 0.03 KB
disable countdown timer in cart for drop pric...
PHP | 15 hours ago | 0.23 KB
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the
Cookies Policy
.
OK, I Understand
Not a member of Pastebin yet?
Sign Up
, it unlocks many cool features!