Windows의 .NET에 대한 ClickOnce 활성화 데이터 액세스

.NET 8.0 미리 보기 1 버전의 dotnet-mage부터 환경 변수를 사용하여 ActivationData 속성에 액세스할 수 있습니다. 이 버전의 dotnet-mage를 사용하여 프로그래밍 방식으로 다음을 수행할 수 있습니다.

  • 사용자 지정 파일 연결을 기반으로 활성화할 파일 이름을 검색합니다.
  • appref-ms 파일에서 활성화에 사용되는 인수를 검색합니다.

시작 관리자는 AppDomain.CurrentDomain.SetupInformation.ActivationArguments.ActivationData 배열을 읽고 배열이 비어 있지 않은 경우 적절한 환경 변수를 설정합니다.

환경 변수

다음과 같은 환경 변수가 설정됩니다.

  • ClickOnce_ActivationData_Count

    이 변수가 있는 경우 값은 ActivationData 문자열 배열에 있는 요소 수입니다.

  • ClickOnce_ActivationData_<n>

    배열의 각 요소에 대해 새 환경 변수가 인덱스(0부터 시작)로 추가됩니다. 즉,

    ClickOnce_ActivationData_0 ClickOnce_ActivationData_1

    이 변경으로 수정된 시나리오는 항상 인덱스 0 요소를 사용하므로, 변수는 항상 ClickOnce_ActivationData_0이지만, 코드는 유연하며 모든 활성화 데이터를 .NET 앱에 전달할 수 있습니다.

액세스 속성

다음 코드를 사용하여 이러한 환경 변수를 읽고 ActivationData 콘텐츠를 검색할 수 있습니다.

string value = Environment.GetEnvironmentVariable("ClickOnce_ActivationData_0");

이전에는 .NET Framework 앱의 경우 다음 코드를 사용하여 이 데이터를 읽었습니다.

string value = AppDomain.CurrentDomain?.SetupInformation?.ActivationArguments?.ActivationData?[0];

Windows의 .NET용 ClickOnce