Custom Software Installation Package Wrapper Execution Flow Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing application wrapping techniques lack control over the execution flow and supplemental functionality, as they typically inject dynamic libraries into installation packages without modifying the original code, limiting the ability to control the application's behavior post-installation.

Innovation Solution

A customization engine extracts application code from the original installation package and inserts it into a wrapped package with executable wrapper code, configuring the wrapper code to execute first and control the flow, allowing for additional functionality and policy enforcement before executing the original application code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If dynamic libraries are injected into installation packages without modifying original code, then the original application functionality is preserved, but control over execution flow and supplemental functionality is lost

Engineering Contradiction:
Improvecontrol over execution flowVSAvoidmodification process complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges the original application code with the wrapper code into a single integrated installation package. The customization engine combines these separate components (original code and wrapper code) into one unified package that maintains both the original functionality and the added control mechanisms, resolving the contradiction between preserving original functionality and gaining execution control.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The wrapper code acts as an intermediary between the installation package and the original application execution. It provides the necessary control over execution flow and supplemental functionality while allowing the original application to run unchanged, thus enabling adaptability without requiring complex modifications to the original code.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If wrapper code is added to provide supplemental functionality, then additional control and features are enabled, but the installation package size and complexity increase

Engineering Contradiction:
Improvesupplemental functionalityVSAvoidinstallation package size
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The installation package is segmented into distinct components: the original application code and the wrapper code. This segmentation allows the wrapper code to be added as a separate functional layer that provides supplemental capabilities without necessarily increasing the overall package size proportionally, as the wrapper can share resources and infrastructure with the original application.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If the wrapper code executes before the original application code, then policy enforcement and additional features are enabled, but the execution time increases

Engineering Contradiction:
Improvepolicy enforcement capabilityVSAvoidapplication execution time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The wrapper code performs policy enforcement and preliminary setup actions before the main application execution begins. By handling authentication, policy checks, and resource allocation in advance, the wrapper minimizes the impact on overall execution time while ensuring that all necessary controls are in place before the application runs.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The wrapper code is designed to execute critical policy enforcement and setup tasks quickly and efficiently, skipping unnecessary delays. It performs essential preliminary actions in a streamlined manner that minimizes the time added to the overall execution process while still ensuring proper control and policy enforcement.

Inventive Principle:
Principle #21Skipping (Rushing through)

Data Source

PatentUS11169791B2Processing, modification, distribution of custom software installation packages
Publication Date: 2021.11.09 APPERIAN
  • US11169791B2 patent drawing
  • US11169791B2 patent drawing
  • US11169791B2 patent drawing

AI summary

According to example configurations, an application wrapper resource receives an original installation package. The original installation package can be a factory-generated installation package that supports installation of a respective unwrapped application onto a computing device. The factory-generated installation package as described herein may be different than a typical installation package available from an application store. The application wrapper resource transforms the received original installation package into a (customized) wrapped application installation package for subsequent installation of the wrapped application on a respective computer device. The wrapped application installation package includes executable wrapper code supporting supplemental functionality with respect to the original unwrapped application. To wrap the original application using the executable wrapper code, the customization engine extracts one or more portions of application code from the original installation package and inserts the one or more portions of the application code into the wrapped application installation package.