IP Library Granted Patent US 9,032,391
Granted Patent B2
US 9,032,391 · App. 13/841,734 · Granted May 12, 2015

System and method for dynamically creating executable files

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,032,391
App. No.
13/841,734
Granted
May 12, 2015
Kind
B2
Abstract

Techniques are disclosed for generating, on a server, executable files that are individually customized for a user. An exemplary method comprises receiving a download request from a client, the download request including a system type and one or more identification parameters; locating a pre-compiled payload that is executable on the client based on the system type; determining a configuration data for use with the pre-compiled payload based on the one or more identification parameters; and selectively generating a customized executable file for the client to download, wherein the customized executable file includes the pre-compiled payload and the configuration data. Among other benefits, some embodiments provided herein enable dynamic creation and individual customization of executable files for a user so that conventional configuration or personalization steps after the user installs the files are avoided, thereby reducing time consumed and potential confusion caused by such steps.

Claims (49)

1. A computer-implemented method for enabling a viewer to perform screen sharing, the method comprising:

transmitting, to a browser of the viewer, a script configured to (i) display a sequence of images sourced from a browser of a presenter, via the file server, on the viewer's browser in response to control of the sequence by the presenter, and (ii) in response to a request for a screen sharing executable from the viewer, generate a download request including a system type and one or more identification parameters;

wherein the script displays the sequence of images on the viewer's browser without requiring the viewer's browser to run an applet;

receiving, at the file server, the download request from the script;

locating, using the file server, a pre-compiled payload suitable for execution on a computer of the viewer based on the system type;

determining, using the file server, a configuration data for use with the pre-compiled payload based on the one or more identification parameters; and

generating, using the file server, a customized executable file for the viewer to download, wherein the customized executable file includes the pre-compiled payload and the configuration data, wherein the pre-compiled payload, upon being executed, establishes a virtual machine to execute bytecode programs, and wherein the bytecode programs include a sharing applet that causes the file server to relay screen images of the viewer from the viewer, through the file server, to a presenter.

2. The method of claim 1 , wherein the locating comprises:

decompressing a first archive to extract the pre-compiled payload and a meta compression information.

3. The method of claim 2 , wherein the selective generating is based on the system type and comprises:

if the system type is a first type that needs an executable self-extractor,

(i) compressing the pre-compiled payload and the configuration data into a second archive; and

(ii) appending the second archive and the meta compression information to a self-extracting stub file to create the customized executable file.

4. The method of claim 2 , wherein the selective generating is based on the system type and comprises:

if the system type is a second type that does not need an executable self-extractor, compressing the pre-compiled payload and the configuration data into a second archive to create the customized executable file.

5. The method of claim 1 , wherein the customized executable file, upon being executed on the viewer, facilitates the viewer in sharing screen images of the viewer via the pre-compiled payload, through a screen sharing server, to the presenter.

6. The method of claim 5 , wherein the file server comprises the screen sharing server.

7. The method of claim 1 , wherein the pre-compiled payload and the sharing applet are automatically configured according to the configuration data.

8. A system for generating files, the system comprising:

a processor; and

a memory coupled to the processor and storing a plurality of instructions which, when executed by the processor, cause the processor to:

transmit, to a browser of the viewer, a script configured to (i) display a sequence of images sourced from a browser of a presenter, via the file server, on the viewer's browser in response to control of the sequence by the presenter, and (ii) in response to a request for a screen sharing executable from the viewer, generate a download request including a system type and one or more identification parameters;

wherein the script displays the sequence of images on the viewer's browser without requiring the viewer's browser to run an applet;

receive the download request from the script;

locate a pre-compiled payload suitable for execution on a computer of the viewer based on the system type;

determine a configuration data for use with the pre-compiled payload based on the one or more identification parameters; and

generate a customized executable file for the viewer to download, wherein the customized executable file includes the pre-compiled payload and the configuration data, wherein the pre-compiled payload, upon being executed, establishes a virtual machine to execute bytecode programs, and wherein the bytecode programs include a sharing applet that causes the file server to relay screen images of the viewer from the viewer, through the file server, to a presenter.

9. The system of claim 8 , wherein the instructions further cause the processor to:

decompress a first archive to extract the pre-compiled payload and a meta compression information.

10. The system of claim 9 , wherein the processor generates based on the system type, and wherein the instructions further cause the processor to:

if the system type is a first type that needs an executable self-extractor,

(i) compress the pre-compiled payload and the configuration data into a second archive; and

(ii) append the second archive and the meta compression information to a self-extracting stub file to create the customized executable file.

11. The system of claim 9 , wherein the processor generates based on the system type, and wherein the instructions further cause the processor to:

if the system type is a second type that does not need an executable self-extractor, compress the pre-compiled payload and the configuration data into a second archive to create the customized executable file.

12. The system of claim 8 , wherein the customized executable file, upon being executed on the viewer, facilitates the viewer in sharing screen images of the viewer via the pre-compiled payload, through a screen sharing server, to the presenter.

13. The system of claim 12 , wherein the file server comprises the screen sharing server.

14. The system of claim 8 , wherein the pre-compiled payload and the sharing applet are automatically configured according to the configuration data.

15. A non-transitory storage medium storing a plurality of instructions which, upon being loaded into a memory of a server, cause the server to:

transmit, to a browser of the viewer, a script configured to (i) display a sequence of images sourced from a browser of a presenter, via the file server, on the viewer's browser in response to control of the sequence by the presenter, and (ii) in response to a request for a screen sharing executable from the viewer, generate a download request including a system type and one or more identification parameters;

wherein the script displays the sequence of images on the viewer's browser without requiring the viewer's browser to run an applet;

receive the download request from the script;

locate a pre-compiled payload suitable for execution on a computer of the viewer based on the system type;

decompress a first archive to extract the pre-compiled payload and a meta compression information;

determine a configuration data for use with the pre-compiled payload based on the one or more identification parameters; and

generate a customized executable file for the viewer to download based on the system type, wherein the customized executable file includes the pre-compiled payload and the configuration data.

16. The medium of claim 15 , further causes the server to:

if the system type is a first type that needs an executable self-extractor, (i) compress the pre-compiled payload and the configuration data into a second archive; and (ii) append the second archive and the meta compression information to a self-extracting stub file to create the customized executable file; and

if the system type is a second type that does not need an executable self-extractor, compress the pre-compiled payload and the configuration data into a third archive to create the customized executable file.

Assignments (14)
TERMINATION AND RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded May 6, 2026
From: CANTOR FITZGERALD SECURITIES, AS COLLATERAL AGENT
To: CLEARSLIDE INC.; COREL CORPORATION (AS SUCCESSOR IN INTEREST TO CASCADE BIDCO CORP.)
Reel/Frame 075522/0510 →
RELEASE OF SECURITY INTEREST Recorded May 5, 2026
From: CITIBANK, N.A., AS AGENT
To: COREL CORPORATION; CASCADE BIDCO CORP.; COREL INC.; CLEARSLIDE INC.
Reel/Frame 075559/0953 →
RELEASE OF SECURITY INTEREST Recorded Jan 8, 2021
From: CANTOR FITZGERALD SECURITIES
To: CLEARSLIDE, INC.
Reel/Frame 054864/0061 →
RELEASE OF SECURITY INTEREST Recorded Jan 8, 2021
From: CITIBANK, N.A.
To: CLEARSLIDE, INC.
Reel/Frame 054864/0093 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME: 049678/0980 Recorded Jan 4, 2021
From: CANTOR FITZGERALD SECURITIES
To: CLEARSIDE, INC.
Reel/Frame 054897/0008 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME: 049678/0950 Recorded Jan 4, 2021
From: CITIBANK, N.A.
To: CLEARSIDE, INC.
Reel/Frame 054897/0363 →
RELEASE OF SECURITY INTEREST Recorded Jul 18, 2019
From: UBS AG, STAMFORD BRANCH, AS ADMINISTRATIVE AND COLLATERAL AGENT
To: COREL CORPORATION; CLEARSLIDE, INC.; PARALLELS INTERNATIONAL GMBH
Reel/Frame 049787/0073 →
RELEASE OF SECURITY INTEREST RECORDED AT : REEL 046299 FRAME 0836 Recorded Jul 17, 2019
From: UBS AG, STAMFORD BRANCH
To: COREL CORPORATION; CLEARSLIDE, INC.
Reel/Frame 049773/0628 →
SECURITY INTEREST Recorded Jul 3, 2019
From: CASCADE BIDCO CORP.; COREL INC.; CLEARSLIDE INC.
To: CITIBANK, N.A.
Reel/Frame 049678/0950 →
SECURITY INTEREST Recorded Jul 3, 2019
From: CASCADE BIDCO CORP.; COREL INC.; CLEARSLIDE INC.
To: CANTOR FITZGERALD SECURITIES
Reel/Frame 049678/0980 →
SECURITY INTEREST Recorded Jun 5, 2018
From: CLEARSLIDE, INC.
To: UBS AG, STAMFORD BRANCH
Reel/Frame 045988/0789 →
RELEASE OF SECURITY INTEREST Recorded Jun 4, 2018
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: CLEARSLIDE, INC.
Reel/Frame 045984/0122 →
SECURITY INTEREST Recorded Feb 27, 2018
From: CLEARSLIDE , INC.
To: SILICON VALLEY BANK
Reel/Frame 045045/0956 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 28, 2013
From: LIEB, ADAM MICHAEL
To: CLEARSLIDE, INC.
Reel/Frame 030110/0870 →