diff --git a/Directory.Build.props b/Directory.Build.props new file mode 100644 index 00000000..f9cd8ce0 --- /dev/null +++ b/Directory.Build.props @@ -0,0 +1,9 @@ + + + + + all + 3.9.50 + + + \ No newline at end of file diff --git a/Ink Canvas/App.xaml.cs b/Ink Canvas/App.xaml.cs index 984a4e87..12def1d4 100644 --- a/Ink Canvas/App.xaml.cs +++ b/Ink Canvas/App.xaml.cs @@ -839,7 +839,19 @@ async void App_Startup(object sender, StartupEventArgs e) await Task.Delay(100); RootPath = AppDomain.CurrentDomain.SetupInformation.ApplicationBase; - LogHelper.NewLog(string.Format("Ink Canvas Starting (Version: {0})", Assembly.GetExecutingAssembly().GetName().Version)); + var version = Assembly.GetExecutingAssembly().GetName().Version; + var informationalVersion = Assembly.GetExecutingAssembly().GetCustomAttribute(); + string versionString = version.Major + "." + version.Minor + "." + version.Build + "." + version.Revision; + if (informationalVersion != null) + { + string infoVersion = informationalVersion.InformationalVersion; + int lastDotIndex = infoVersion.LastIndexOf('.'); + if (lastDotIndex >= 0 && lastDotIndex < infoVersion.Length - 7) + { + versionString += " (" + infoVersion.Substring(lastDotIndex + 1) + ")"; + } + } + LogHelper.NewLog(string.Format("Ink Canvas Starting (Version: {0})", versionString)); // 检查是否为最终应用启动(更新后的应用) bool isFinalApp = e.Args.Contains("--final-app"); diff --git a/Ink Canvas/AssemblyInfo.cs b/Ink Canvas/AssemblyInfo.cs index 67fa9e01..06eaf3b6 100644 --- a/Ink Canvas/AssemblyInfo.cs +++ b/Ink Canvas/AssemblyInfo.cs @@ -3,21 +3,7 @@ using System.Windows; [assembly: System.Runtime.Versioning.SupportedOSPlatform("windows")] -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("InkCanvasForClass")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("CJK_mkp")] -[assembly: AssemblyProduct("InkCanvasForClass")] -[assembly: AssemblyCopyright("Copyright © CJK_mkp 2025-2026")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. [assembly: ComVisible(false)] // i18n: 默认/回退语言为简体中文,与 Strings.resx 默认文案一致。 @@ -44,5 +30,5 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.7.18.10")] -[assembly: AssemblyFileVersion("1.7.18.10")] +// [assembly: AssemblyVersion("1.7.18.10")] +// [assembly: AssemblyFileVersion("1.7.18.10")] diff --git a/Ink Canvas/InkCanvasForClass.csproj b/Ink Canvas/InkCanvasForClass.csproj index 5a02ae09..6db6c496 100644 --- a/Ink Canvas/InkCanvasForClass.csproj +++ b/Ink Canvas/InkCanvasForClass.csproj @@ -21,11 +21,9 @@ false false true - 2 - 2.0.2.%2a false false - False + True true true true @@ -67,12 +65,10 @@ app.manifest InkCanvasForClass - 1.7 CJK_mkp InkCanvasForClass © Copyright CJK_mkp 2025-now https://inkcanvasforclass.github.io - bundled False @@ -667,4 +663,12 @@ + + + + <_ShortSha>$(GitCommitIdShort) + <_ShortSha7>$(_ShortSha.Substring(0, 7)) + $(AssemblyVersion).$(_ShortSha7) + + diff --git a/Ink Canvas/Properties/AssemblyInfo.cs b/Ink Canvas/Properties/AssemblyInfo.cs index 89688309..ad34dc32 100644 --- a/Ink Canvas/Properties/AssemblyInfo.cs +++ b/Ink Canvas/Properties/AssemblyInfo.cs @@ -2,46 +2,12 @@ using System.Runtime.InteropServices; using System.Windows; -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("InkCanvasForClass")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("CJK_mkp")] -[assembly: AssemblyProduct("InkCanvasForClass")] -[assembly: AssemblyCopyright("Copyright © CJK_mkp 2025-2026")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. [assembly: ComVisible(false)] -// i18n: 默认/回退语言为简体中文,与 Strings.resx 默认文案一致。 [assembly: System.Resources.NeutralResourcesLanguage("zh-CN", System.Resources.UltimateResourceFallbackLocation.MainAssembly)] [assembly: ThemeInfo( - ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located - //(used if a resource is not found in the page, - // or application resource dictionaries) - ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located - //(used if a resource is not found in the page, - // app, or any theme specific resource dictionaries) + ResourceDictionaryLocation.None, + ResourceDictionaryLocation.SourceAssembly )] - - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.7.18.10")] -[assembly: AssemblyFileVersion("1.7.18.10")] diff --git a/Ink Canvas/Windows/SettingsViews/Pages/AboutPage.xaml.cs b/Ink Canvas/Windows/SettingsViews/Pages/AboutPage.xaml.cs index 448755e5..4c1a5e7e 100644 --- a/Ink Canvas/Windows/SettingsViews/Pages/AboutPage.xaml.cs +++ b/Ink Canvas/Windows/SettingsViews/Pages/AboutPage.xaml.cs @@ -98,7 +98,18 @@ private void LoadSettings() { try { - AppVersionTextBlock.Text = Assembly.GetExecutingAssembly().GetName().Version.ToString(); + var version = Assembly.GetExecutingAssembly().GetName().Version; + AppVersionTextBlock.Text = version.Major + "." + version.Minor + "." + version.Build + "." + version.Revision; + var informationalVersion = Assembly.GetExecutingAssembly().GetCustomAttribute(); + if (informationalVersion != null) + { + string infoVersion = informationalVersion.InformationalVersion; + int lastDotIndex = infoVersion.LastIndexOf('.'); + if (lastDotIndex >= 0 && lastDotIndex < infoVersion.Length - 7) + { + AppVersionTextBlock.Text += " (" + infoVersion.Substring(lastDotIndex + 1) + ")"; + } + } RefreshDeviceInfo(); } catch (Exception ex) diff --git a/Ink Canvas/Windows/SplashScreen.xaml.cs b/Ink Canvas/Windows/SplashScreen.xaml.cs index fd7b94fd..85cfdc15 100644 --- a/Ink Canvas/Windows/SplashScreen.xaml.cs +++ b/Ink Canvas/Windows/SplashScreen.xaml.cs @@ -257,15 +257,25 @@ private void SetVersionText() if (version != null) { VersionTextBlock.Text = $"v{version.Major}.{version.Minor}.{version.Build}.{version.Revision}"; + var informationalVersion = Assembly.GetExecutingAssembly().GetCustomAttribute(); + if (informationalVersion != null) + { + string infoVersion = informationalVersion.InformationalVersion; + int lastDotIndex = infoVersion.LastIndexOf('.'); + if (lastDotIndex >= 0 && lastDotIndex < infoVersion.Length - 7) + { + VersionTextBlock.Text += " (" + infoVersion.Substring(lastDotIndex + 1) + ")"; + } + } } else { - VersionTextBlock.Text = "v5.0.4.0"; + VersionTextBlock.Text = "v1.7.18.10"; } } catch { - VersionTextBlock.Text = "v5.0.4.0"; + VersionTextBlock.Text = "v1.7.18.10"; } } diff --git a/Ink Canvas/packages.lock.json b/Ink Canvas/packages.lock.json index 7369c9f4..8e1ecc4d 100644 --- a/Ink Canvas/packages.lock.json +++ b/Ink Canvas/packages.lock.json @@ -134,6 +134,12 @@ "resolved": "15.0.0", "contentHash": "/KgYw8uvv0Ut8FPvyEa1XJ/TrLSRgvTv3JgC2IT0/8NwoICzbEJWfmfwsE6Dwi8WH0jVkTEO7zRvGvaKqUOhqQ==" }, + "Nerdbank.GitVersioning": { + "type": "Direct", + "requested": "[3.9.50, )", + "resolved": "3.9.50", + "contentHash": "HtOgGF6jZ+WYbXnCUCYPT8Y2d6mIJo9ozjK/FINTRsXdm4Zgv9GehUMa7EFoGQkqrMcDJNOIDwCmENnvXg4UbA==" + }, "Newtonsoft.Json": { "type": "Direct", "requested": "[13.0.4, )", diff --git a/InkCanvas.Controls/InkCanvas.Controls.csproj b/InkCanvas.Controls/InkCanvas.Controls.csproj index 19a6b1ed..ff84bd3a 100644 --- a/InkCanvas.Controls/InkCanvas.Controls.csproj +++ b/InkCanvas.Controls/InkCanvas.Controls.csproj @@ -10,6 +10,7 @@ true 10 CA1416 + false diff --git a/InkCanvas.IACoreHelper/InkCanvas.IACoreHelper.csproj b/InkCanvas.IACoreHelper/InkCanvas.IACoreHelper.csproj index d3e0dc78..72c0de8a 100644 --- a/InkCanvas.IACoreHelper/InkCanvas.IACoreHelper.csproj +++ b/InkCanvas.IACoreHelper/InkCanvas.IACoreHelper.csproj @@ -12,6 +12,7 @@ 512 true true + false x86 diff --git a/InkCanvas.IACoreHelper/Properties/AssemblyInfo.cs b/InkCanvas.IACoreHelper/Properties/AssemblyInfo.cs index 996eff24..d147d643 100644 --- a/InkCanvas.IACoreHelper/Properties/AssemblyInfo.cs +++ b/InkCanvas.IACoreHelper/Properties/AssemblyInfo.cs @@ -7,5 +7,3 @@ [assembly: AssemblyProduct("InkCanvas.IACoreHelper")] [assembly: AssemblyCopyright("Copyright © ICC CE")] [assembly: ComVisible(false)] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] \ No newline at end of file diff --git a/InkCanvas.PluginSdk/InkCanvas.PluginSdk.csproj b/InkCanvas.PluginSdk/InkCanvas.PluginSdk.csproj index 08b660b8..41ee1445 100644 --- a/InkCanvas.PluginSdk/InkCanvas.PluginSdk.csproj +++ b/InkCanvas.PluginSdk/InkCanvas.PluginSdk.csproj @@ -7,6 +7,7 @@ disable Ink_Canvas.Plugins true + false diff --git a/version.json b/version.json new file mode 100644 index 00000000..3c145ff3 --- /dev/null +++ b/version.json @@ -0,0 +1,22 @@ +{ + "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/main/src/NerdBank.GitVersioning/version.schema.json", + "version": "1.7.18.10", + "nugetPackageVersion": { + "semVer": 2, + "precision": "revision" + }, + "git": { + "shortShaLength": 6, + "getCommitDetails": "always" + }, + "buildNumber": { + "sha": true, + "useAbbreviatedSha": true + }, + "assemblyVersion": { + "precision": "revision" + }, + "npm": { + "precision": "revision" + } +}