public static string GetPackageFullName(string name, string publisherId, AppxPackageArchitecture architecture, string version, string resourceId = null) { var parsedVersion = Version.Parse(version); string packageFullName = null; var packageId = new PACKAGE_ID { name = name, publisher = publisherId, processorArchitecture = (uint)architecture, version = new PackageVersion(parsedVersion).Version, resourceId = resourceId }; uint packageFamilyNameLength = 0; // determine the length (null buffer, should always return 122) // ReSharper disable once InvertIf if (PackageFullNameFromId(packageId, ref packageFamilyNameLength, null) == 122) { // insufficient buffer var packageFamilyNameBuilder = new StringBuilder((int)packageFamilyNameLength); if (PackageFullNameFromId(packageId, ref packageFamilyNameLength, packageFamilyNameBuilder) == 0) { packageFullName = packageFamilyNameBuilder.ToString(); } } return(packageFullName); }
public static string GetPackageFamilyName(string name, string publisherId) { string packageFamilyName = null; var packageId = new PACKAGE_ID { name = name, publisher = publisherId }; uint packageFamilyNameLength = 0; // determine the length (null buffer, should always return 122) // ReSharper disable once InvertIf if (PackageFamilyNameFromId(packageId, ref packageFamilyNameLength, null) == 122) { // insufficient buffer var packageFamilyNameBuilder = new StringBuilder((int)packageFamilyNameLength); if (PackageFamilyNameFromId(packageId, ref packageFamilyNameLength, packageFamilyNameBuilder) == 0) { packageFamilyName = packageFamilyNameBuilder.ToString(); } } return(packageFamilyName); }
public static string TryGetPackageFamilyName(string name, string publisherId) { string packageFamilyName = String.Empty; try { var packageId = new PACKAGE_ID { name = name, publisher = publisherId, }; uint packageFamilyNameLength = 0; // First get the length of the Package Name -> Pass NULL as Output Buffer if (PackageFamilyNameFromId(packageId, ref packageFamilyNameLength, null) == 122) // ERROR_INSUFFICIENT_BUFFER { var packageFamilyNameBuilder = new StringBuilder((int)packageFamilyNameLength); if (PackageFamilyNameFromId(packageId, ref packageFamilyNameLength, packageFamilyNameBuilder) == 0) { packageFamilyName = packageFamilyNameBuilder.ToString(); } } } catch {; } return(packageFamilyName); }
private AppxPackageName(string package_id, PACKAGE_ID package) : this(package_id) { Architecture = package.processorArchitecture; Version = package.version.ToVersion(); Name = package.name != IntPtr.Zero ? Marshal.PtrToStringUni(package.name) : string.Empty; ResourceId = package.resourceId != IntPtr.Zero ? Marshal.PtrToStringUni(package.resourceId) : string.Empty; PublisherId = package.publisherId != IntPtr.Zero ? Marshal.PtrToStringUni(package.publisherId) : string.Empty; }
public static string BuildDotNetNuGetDelete(string aTokenizedCommandLine) { StringBuilder vResult = new StringBuilder(aTokenizedCommandLine); vResult .Replace(PACKAGE_ID.AsToken(), PackageId) .Replace(PACKAGE_VERSION.AsToken(), PackageVersion) .Replace(SOURCE.AsToken(), Source) .Replace(API_KEY.AsToken(), ApiKey) .Replace(VERBOSITY_DOTNET.AsToken(), VerbosityDotNet); return(vResult.ToString()); }
public static string TryGetPackageFullName(string name, string publisherId, Version appVersion, UInt32 cpuArchitecture) { string packageFullName = String.Empty; try { var major = Convert.ToUInt16(appVersion.Major); var minor = Convert.ToUInt16(appVersion.Minor); var build = Convert.ToUInt16(appVersion.Build); var rev = Convert.ToUInt16(appVersion.Revision); UInt64 packedVersion = Convert.ToUInt64(rev) << 0 | Convert.ToUInt64(build) << 16 | Convert.ToUInt64(minor) << 32 | Convert.ToUInt64(major) << 48; var packageId = new PACKAGE_ID { name = name, publisher = publisherId, processorArchitecture = cpuArchitecture, version = packedVersion }; uint packageFullNameLength = 0; // First get the length of the Package Name -> Pass NULL as Output Buffer if (PackageFullNameFromId(packageId, ref packageFullNameLength, null) == 122) // ERROR_INSUFFICIENT_BUFFER { var packageFullNameBuilder = new StringBuilder((int)packageFullNameLength); if (PackageFullNameFromId(packageId, ref packageFullNameLength, packageFullNameBuilder) == 0) { packageFullName = packageFullNameBuilder.ToString(); } } } catch {; } return(packageFullName); }
private static extern uint PackageFullNameFromId(PACKAGE_ID packageId, ref uint packageFamilyNameLength, StringBuilder packageFamilyName);