# US 12,001,402 B2 · Dynamically selecting an application to open a file

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,001,402 B2
- Document ID: US12001402B2
- Status: Granted
- Kind: B2
- Application number: 17/391,511
- Filed: 2021-08-02
- Published: 2023-02-02
- Granted: 2024-06-04
- Earliest claimed: 2021-08-02
- Assignees: Dell Products L.P.
- Applicants: Dell Products L.P.
- Inventors: Sumit Popli
- Web page: https://patentgrep.com/patent/US12001402B2

## CPC

- G06F 9/445: Program loading or initiating (bootstrapping G06F9/4401; security arrangements for program loading or initiating G06F21/57)
- G06F 16/1824: {implemented using Network-attached Storage [NAS] architecture (distributed or networked storage systems G06F3/067; protocols for distributed storage of data in a network H04L67/1097)}
- G06F 16/1734: {Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

An application can be dynamically selected to open a file. An application broker service can be configured to received intercepted requests to open files. The application broker service can process the intercepted requests to determine a type and location of the files to be opened. Using the type and the location of the files to be opened, the application broker service can select applications to open the files. If a file fails to open in a selected application, the application broker service can select another application to open the file.

## Claims

### Claim 1

A method for dynamically selecting an application to open a file, the method comprising:
in response to a user generating a request to open a first file on a computing device, intercepting the request at an overlay;
redirecting, by the overlay, the request to open the first file to an application broker service;
accessing, by the application broker service, the request to open the first file to identify:
(1) a location where the first file is stored, and (2) a first application that the request specifies for opening the first file on the computing device;
accessing, by the application broker service, a dynamic application selection database to determine that a second application is associated with the location where the first file is stored;
based on the determination that the second application is associated with the location where the first file is stored, selecting, by the application broker service, the second application to open the file; and
modifying the request to open the first file to specify the second application rather than the first application for opening the file; and
in conjunction with modifying the request to open the first file, causing the request to open the first file to be further processed to thereby request that an operating system of the computing device cause the first file to be opened in the second application rather than the first application.

### Claim 2 (depends on 1)

The method of claim 1, wherein the first application is a default application.

### Claim 3 (depends on 1)

The method of claim 1, wherein the location where the first file is stored comprises the cloud and the second application is a cloud application.

### Claim 4 (depends on 1)

The method of claim 1, wherein the location where the first file is stored comprises local storage and the second application is a VDI application.

### Claim 5 (depends on 1)

The method of claim 1, wherein the location where the first file is stored comprises local storage and the second application is a local application.

### Claim 6 (depends on 1)

The method of claim 1, wherein the application broker service selects the second application based also on determining that the second application is associated with a type of the first file.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
detecting that the first file failed to open in the second application;
accessing, by the application broker service, the dynamic application selection database to determine that a third application is associated with either or both the location where the first file is stored or a type of the first file;
selecting the third application to open the first file; and
causing the third application to open the first file.

### Claim 8 (depends on 7)

The method of claim 7, wherein the second application is a cloud application and the third application is a VDI application or a local application.

### Claim 9 (depends on 1)

The method of claim 1, wherein the request to open the first file comprises a call to a function to create a process.

### Claim 10 (depends on 1)

The method of claim 1, wherein the request to open the first file is generated in response to the user's interactions with a file explorer or a desktop.

### Claim 11

A method for dynamically selecting an application to open a file, the method comprising:
in response to a user generating a request to open a first file on a computing device, intercepting the request at an overlay;
redirecting, by the overlay, the request to open the first file to an application broker service;
accessing, by the application broker service, the request to open the first file to identify:
(1) a location where the first file is stored, and (2) a first application that the request specifies for opening the first file on the computing device;
accessing, by the application broker service, a dynamic application selection database to determine that a second application is associated with the location where the first file is stored;
based on the determination that the second application is associated with the location where the first file is stored, selecting, by the application broker service, the second application to open the file;
modifying the request to open the first file to specify the second application rather than the first application for opening the file;
detecting that the first file failed to open in the second application; and
causing the first file to be opened in a third application, the third application being associated with either or both the location where the first file is stored or a type of the first file.

### Claim 12 (depends on 11)

The method of claim 11, wherein the third application is different from the first application.

### Claim 13 (depends on 11)

The method of claim 11, wherein the second application is a cloud application and the third application is a VDI application or a local application.

### Claim 14 (depends on 11)

The method of claim 11, wherein the second application is a VDI application and the third application is a local application.

### Claim 15 (depends on 11)

The method of claim 11, wherein causing the first file to be opened in the third application comprises launching the third application.

### Claim 16 (depends on 11)

The method of claim 11, wherein the first application is a default application for the type of the first file.

### Claim 17

One or more computer storage media storing computer executable instructions which when executed implement a method for dynamically selecting an application to open a file, the method comprising:
in response to a user generating a request to open a first file on a computing device, intercepting the request at an overlay;
redirecting, by the overlay, the request to open the first file to an application broker service;
accessing, by the application broker service, the request to open the first file to identify:
(1) a location where the first file is stored, and (2) a first application that the request specifies for opening the first file on the computing device;
accessing, by the application broker service, a dynamic application selection database to determine that a second application is associated with the location where the first file is stored;
based on the determination that the second application is associated with the location where the first file is stored, selecting, by the application broker service, the second application to open the file;
modifying the request to open the first file to specify the second application rather than the first application for opening the file; and
in conjunction with modifying the request to open the first file, causing the request to open the first file to be further processed to thereby request that an operating system of the computing device cause the first file to be opened in the second application rather than the first application.

### Claim 18 (depends on 17)

The computer storage media of claim 17, wherein the location where the first file is stored comprises the cloud and the second application is a cloud application.

### Claim 19 (depends on 17)

The computer storage media of claim 17, wherein the location where the first file is stored comprises local storage and the second application is a VDI application.

### Claim 20 (depends on 17)

The computer storage media of claim 17, wherein the method further comprises:
detecting that the first file failed to open in the second application;
accessing, by the application broker service, the dynamic application selection database to determine that a third application is associated with either or both the location where the first file is stored or a type of the first file;
selecting the third application to open the first file; and
causing the third application to open the first file.
