The mixed nature of a Thinfinity VirtualUI web-enabled application requires a clear understanding of how to manage files both locally and remotely.
This dual architecture and functionality can be a bit confusing for new web-enabled app users, who usually run the application from the desktop.
However, this same mixed architecture is an advantage rather than a problem. The ability to run apps remotely and the possibility of managing files using the application from the browser will result in an integrated, and thus better, way to send and receive files for a remote user.
This post briefly explains:
- The different ways to open and save files in web-enabled applications.
- Why Thinfinity VirtualUI needs to change the file dialogs to access files that are in the browser’s device.
Let’s get started!
File Dialog Interfaces
Each programming language has its own libraries that interact with the OS in order to name, store and handle files and folders.
When it comes to accessing the file system, Windows programming languages can take advantage of the standard system file dialogs and/or implement their own. But, in all cases, these dialogs allow access to files stored locally or in any device available from the application by using its file system.
As a convention, from now on we’ll refer to the files stored in any drive accessible in desktop running mode as local, and to the files located in the browser’s device as remote.
In order to select the correct file access method, the VirtualUI library has a property called StdDialogs (after Standard Dialogs). This property tells VirtualUI when to enable the use of standard file dialogs and when to replace them with others that are prepared to work with files stored in or accessible from the browser’s device.
Check this table for further clarification:
|Action||Desktop Mode or
VirtualUI.StdDialogs = true
|Browser Mode with
VirtualUI.StdDialogs = false
|Save a file||“Save” or “Save As…” standard dialogs||VirtualUI’s “Download File” dialog|
|Open a file||“Open” standard dialog||VirtualUI’s “Upload File” dialog|
Working with Local Files
When you set the VirtualUI.StdDialogs property value to true, you will only be able to work with local files.
In this way, the program will use the standard file dialogs to access local application resources. Pay attention to a possible user confusion about the drive names and locations. For example, the local C: drive in the application PC is not the same as the browser’s device C: drive.
Working with Remote Files
Setting VirtualUI.StdDialogs to false allows web-enabled applications to manage files from the browser side only.
This is achieved by replacing the standard dialogs with the VirtualUI file dialogs, because browsers can only access the device file system through their download and upload interface.
In future posts we will explain in detail how to manage remote files in web-enabled applications.