modules/fxpackager/src/main/native/library/common/WindowsPlatform.h
Print this page
@@ -57,26 +57,31 @@
virtual TCHAR* ConvertStringToFileSystemString(TCHAR* Source, bool &release);
virtual TCHAR* ConvertFileSystemStringToString(TCHAR* Source, bool &release);
virtual void ShowMessage(TString title, TString description);
virtual void ShowMessage(TString description);
+ virtual MessageResponse ShowResponseMessage(TString title, TString description);
+ //virtual MessageResponse ShowResponseMessage(TString description);
+
virtual void SetCurrentDirectory(TString Value);
virtual TString GetPackageRootDirectory();
virtual TString GetAppDataDirectory();
virtual TString GetBundledJVMLibraryFileName(TString RuntimePath);
virtual TString GetSystemJVMLibraryFileName();
virtual TString GetSystemJRE();
- virtual PropertyContainer* GetConfigFile(TString FileName);
+ virtual ISectionalPropertyContainer* GetConfigFile(TString FileName);
virtual TString GetModuleFileName();
virtual Module LoadLibrary(TString FileName);
virtual void FreeLibrary(Module AModule);
virtual Procedure GetProcAddress(Module AModule, std::string MethodName);
virtual std::vector<TString> GetLibraryImports(const TString FileName);
virtual std::vector<TString> FilterOutRuntimeDependenciesForPlatform(std::vector<TString> Imports);
+ virtual Process* CreateProcess();
+
virtual bool IsMainThread();
virtual TPlatformNumber GetMemorySize();
#ifdef DEBUG
virtual bool IsNativeDebuggerPresent();
@@ -149,8 +154,45 @@
WindowsLibrary(const TString FileName);
std::vector<TString> GetImports();
};
+
+class WindowsJob {
+private:
+ HANDLE FHandle;
+
+public:
+ WindowsJob();
+ ~WindowsJob();
+
+ HANDLE GetHandle();
+};
+
+
+class WindowsProcess : public Process {
+private:
+ bool FRunning;
+
+ PROCESS_INFORMATION FProcessInfo;
+ static WindowsJob FJob;
+
+ void Cleanup();
+
+public:
+ WindowsProcess();
+ virtual ~WindowsProcess();
+
+ virtual bool IsRunning();
+ virtual bool Terminate();
+ virtual bool Execute(const TString Application, const std::vector<TString> Arguments,
+ bool AWait = false);
+ virtual bool Wait();
+ virtual TProcessID GetProcessID();
+};
+
+
+
+
#endif //WINDOWSPLATFORM_H
#endif // WINDOWS