从 .NET 8.0 版本的 dotnet-mage 开始,可以使用环境变量访问 ActivationData 属性。 使用此版本的 dotnet-mage,您可以通过编程:
- 根据自定义文件关联来发现用于激活的文件名。
- 发现 appref-ms 文件中用于激活的参数。
启动器读取 AppDomain.CurrentDomain.SetupInformation.ActivationArguments.ActivationData 数组,并在数组不为空时设置相应的环境变量。
环境变量
设置了以下环境变量:
ClickOnce_ActivationData_Count如果此变量存在,则该值是 ActivationData 字符串数组中的元素计数。
ClickOnce_ActivationData_<n>对于数组中的每个元素,使用从零开始的索引添加一个新的环境变量,即:
ClickOnce_ActivationData_0ClickOnce_ActivationData_1此更改修复的方案始终使用零索引元素,因此变量始终是
ClickOnce_ActivationData_0,但代码很灵活,并且能够将所有激活数据传递给 .NET 应用。
访问属性
可以使用以下代码读取这些环境变量来发现 ActivationData 内容:
string value = Environment.GetEnvironmentVariable("ClickOnce_ActivationData_0");
以前,对于 .NET Framework 应用,你将使用以下代码读取此数据:
string value = AppDomain.CurrentDomain?.SetupInformation?.ActivationArguments?.ActivationData?[0];