This commit is contained in:
2026-04-17 14:55:32 -04:00
commit bc3ac1d4c9
18017 changed files with 4371742 additions and 0 deletions

View File

@@ -0,0 +1,50 @@
---
source_files:
- DataPRO/DataPRO Installer/Source Files/Driver/DPInstallWrapper2/DPInstallWrapper2.cs
generated_at: "2026-04-17T16:45:59.910732+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "6d03d299d83277d2"
---
# DPInstallWrapper2 Documentation
## 1. Purpose
This module serves as a shim wrapper for executing driver installer executables (specifically `dpinst.exe`) within the DataPRO installation process. Its primary purpose is to work around a known quirk where the wrapped executable returns non-zero exit codes even on successful installations. By always returning `0` to the calling installer, it prevents false failure conditions from propagating up the installation chain.
## 2. Public Interface
### `DPInstallWrapper2.Main`
**Signature:**
```csharp
static int Main(string[] args)
```
**Behavior:**
- Entry point for the wrapper executable.
- Expects `args[0]` to be the path to the executable to run.
- Passes exactly three arguments (`args[1]`, `args[2]`, `args[3]`) to the spawned process.
- Automatically quotes any argument containing a space character by wrapping it in double quotes.
- Launches the target process synchronously, waits for completion, and always returns `0` regardless of the child process's actual exit code.
## 3. Invariants
- **Argument count requirement:** The caller must supply at least 4 arguments. If fewer than 4 arguments are provided, the code will throw an `IndexOutOfRangeException` when accessing `lArgs[1]`, `lArgs[2]`, or `lArgs[3]`.
- **Fixed argument passing:** Exactly three arguments are forwarded to the child process. Any additional arguments beyond `args[3]` are silently ignored.
- **Return value:** The method always returns `0` (success), regardless of the wrapped process's actual exit code.
## 4. Dependencies
**This module depends on:**
- `System.Collections.Generic` — for `List<string>` used to manipulate arguments
- `System.Diagnostics` — for the `Process` class used to spawn and manage the child process
**Dependents:** Not determinable from source alone; this is a standalone executable invoked by the DataPRO installer infrastructure.
## 5. Gotchas
1. **Exit code is discarded:** The wrapper captures `proc.ExitCode` into a local variable `exitCode` but never uses it. All failures of the child process are masked and reported as success. This could hide genuine installation failures.
2. **Off-by-one in quoting logic:** The loop iterates from `i = 1` to `i < args.Length`, but `lArgs[0]` (the executable path) is never quoted. This may be intentional since `FileName` property typically doesn't require quoting

View File

@@ -0,0 +1,48 @@
---
source_files:
- DataPRO/DataPRO Installer/Source Files/Driver/DPInstallWrapper2/Properties/AssemblyInfo.cs
generated_at: "2026-04-17T16:13:55.382246+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "1f8a3e54b48f4f09"
---
# Properties
### Purpose
This module contains assembly metadata for the `DPInstallWrapper2` assembly, which appears to be a driver installer wrapper component within the DataPRO installation system. The file configures assembly identity, version information, and COM visibility settings using standard .NET assembly attributes. It exists to provide build-time metadata for the compiled assembly.
### Public Interface
No public functions, classes, or methods are defined in this module. This file contains only assembly-level attribute declarations:
- `AssemblyTitle("DPInstallWrapper2")` - Sets the assembly title
- `AssemblyDescription("")` - Empty description
- `AssemblyConfiguration("")` - Empty configuration
- `AssemblyCompany("")` - Empty company name
- `AssemblyProduct("DPInstallWrapper2")` - Product name
- `AssemblyCopyright("Copyright © 2019")` - Copyright notice
- `AssemblyTrademark("")` - Empty trademark
- `AssemblyCulture("")` - Neutral culture
- `ComVisible(false)` - Types not visible to COM components
- `Guid("bb0e5961-d169-4dab-ac55-72e1e71c1ef9")` - COM type library identifier
- `AssemblyVersion("1.0.0.0")` - Assembly version
- `AssemblyFileVersion("1.0.0.0")` - File version
### Invariants
- The GUID `bb0e5961-d169-4dab-ac55-72e1e71c1ef9` uniquely identifies this assembly's COM type library if exposed.
- `ComVisible(false)` ensures types are not exposed to COM by default.
- Version numbers are fixed at `1.0.0.0` for both assembly and file versions.
### Dependencies
**Imports:**
- `System.Reflection`
- `System.Runtime.CompilerServices`
- `System.Runtime.InteropServices`
**Consumers:** Unknown from this file alone - would be any project referencing the DPInstallWrapper2 assembly.
### Gotchas
- The `AssemblyDescription`, `AssemblyCompany`, `AssemblyConfiguration`, and `AssemblyTrademark` attributes are all empty strings, which may indicate incomplete metadata configuration.
- The copyright year (2019) differs from other modules in the system, suggesting this component was created or updated later in the project lifecycle.
---