Skip to content

Packet Function Reconstruction #15

@JusterZhu

Description

@JusterZhu

1.PacketView adds the fields of ReportUrl, UpdateUrl, AppName, MainAppName, and ClientVersion.
2.The following content needs to be read from the .csproj file:
(1) Locate the .csproj file in the ReleaseDirectory, read the value of the OutputType tag, and determine whether it contains WinExe/Exe (case-insensitive). If it contains, extract the file name of the .csproj file (excluding the extension), then recursively search for an .exe program with the same name in the release directory. If found, assign the name of the .exe file (excluding the extension) to the MainAppName field; if not found, read the values of the AssemblyName tag and OutputName tag in sequence for assignment; if neither exists, MainAppName will be empty. If the OutputType does not contain WinExe/Exe, MainAppName will be directly empty.
(2) Read the value of the Version tag and assign it to ClientVersion; if the Version tag has no value, refer to the logic in item (1) to obtain the file version number of the matching .exe file for assignment; if there is still no value, ClientVersion will be empty.
(3) Read the value of the OutputPath tag and assign it to release directory; if the OutputPath tag has no value, release directory will be empty.
3.Assign all the above parameters (newly added fields + read configuration values) to the Configinfo object, serialize the object into a JSON file, and package the JSON file into a zip file (the zip file needs a clear output path/naming rule; if not specified, it will have the same name as the JSON file by default).
4.Classify the fields on the UI as follows:
Required fields: UpdateUrl, ReportUrl, AppDirectory, ReleaseDirectory, PatchDirectory (non-empty verification is required; submission is prohibited if not filled in)
Auto-generated fields: AppName, MainAppName, ClientVersion, PacketName, Format, Encoding (manual input is prohibited; filled in automatically by the system)
Optional fields: DriverDirectory (no mandatory verification; can be left blank)

Metadata

Metadata

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions