Added WinTrust.dll assembly and project.

pull/60/head
David Hall 2019-06-07 19:04:21 -06:00
parent 3917d01d59
commit de311c6bf1
5 changed files with 2273 additions and 16 deletions

View File

@ -200,27 +200,20 @@ namespace Vanara.PInvoke
CALG_TLS1PRF = 0x0000800a,
}
/// <summary>
/// A certificate encoding type.
/// </summary>
/// <summary>A certificate encoding type.</summary>
[PInvokeData("wincrypt.h")]
public enum CertEncodingType : uint
{
/// <summary>
/// The crypt asn encoding
/// </summary>
/// <summary>The crypt asn encoding</summary>
CRYPT_ASN_ENCODING = 0x00000001,
/// <summary>
/// The crypt NDR encoding
/// </summary>
/// <summary>The crypt NDR encoding</summary>
CRYPT_NDR_ENCODING = 0x00000002,
/// <summary>
/// The X509 asn encoding
/// </summary>
/// <summary>The X509 asn encoding</summary>
X509_ASN_ENCODING = 0x00000001,
/// <summary>
/// The X509 NDR encoding
/// </summary>
/// <summary>The X509 NDR encoding</summary>
X509_NDR_ENCODING = 0x00000002,
}
@ -618,6 +611,25 @@ namespace Vanara.PInvoke
public CRYPTOAPI_BLOB Parameters;
}
/// <summary>
/// The <c>CRYPT_ATTRIBUTE_TYPE_VALUE</c> structure contains a single attribute value. The <c>Value</c> member's CRYPT_OBJID_BLOB is encoded.
/// </summary>
// https://docs.microsoft.com/en-us/windows/desktop/api/wincrypt/ns-wincrypt-_crypt_attribute_type_value typedef struct
// _CRYPT_ATTRIBUTE_TYPE_VALUE { LPSTR pszObjId; CRYPT_OBJID_BLOB Value; } CRYPT_ATTRIBUTE_TYPE_VALUE, *PCRYPT_ATTRIBUTE_TYPE_VALUE;
[PInvokeData("wincrypt.h", MSDNShortId = "84057581-d0a9-464a-9399-ba806e37516f")]
[StructLayout(LayoutKind.Sequential)]
public struct CRYPT_ATTRIBUTE_TYPE_VALUE
{
/// <summary>Object identifier (OID) that specifies the attribute type data contained in the <c>Value</c> BLOB.</summary>
public StrPtrAuto pszObjId;
/// <summary>
/// A CRYPT_OBJID_BLOB that contains the encoded attribute. The <c>cbData</c> member of the <c>CRYPT_OBJID_BLOB</c> structure
/// indicates the length of the <c>pbData</c> member. The <c>pbData</c> member contains the attribute information.
/// </summary>
public CRYPTOAPI_BLOB Value;
}
/// <summary>
/// The BLOB structure contains an arbitrary array of bytes. The structure definition includes aliases appropriate to the various
/// functions that use it.

View File

@ -111,6 +111,9 @@
/// <summary>The win inet</summary>
public const string WinInet = "wininet.dll";
/// <summary>The wintrust.dll</summary>
public const string Wintrust = "wintrust.dll";
/// <summary>The Winsock2 dll</summary>
public const string Ws2_32 = "ws2_32.dll";
}

View File

@ -0,0 +1,51 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Description>PInvoke API (methods, structures and constants imported from Windows WinTrust.dll.</Description>
<Copyright>Copyright © 2017-2019</Copyright>
<AssemblyTitle>$(AssemblyName)</AssemblyTitle>
<VersionPrefix>2.3.10</VersionPrefix>
<TargetFrameworks>net20;net35;net40;net45;netstandard2.0;netcoreapp2.0;netcoreapp2.1</TargetFrameworks>
<AssemblyName>Vanara.PInvoke.WinTrust</AssemblyName>
<PackageId>$(AssemblyName)</PackageId>
<RootNamespace>Vanara.PInvoke</RootNamespace>
<Authors>David Hall</Authors>
<PackageProjectUrl>https://github.com/dahall/vanara</PackageProjectUrl>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<PackageIconUrl>https://raw.githubusercontent.com/dahall/Vanara/master/docs/icons/Vanara48x48.png</PackageIconUrl>
<RepositoryUrl>https://github.com/dahall/vanara</RepositoryUrl>
<RepositoryType>Git</RepositoryType>
<PackageTags>pinvoke;vanara;net-extensions;interop</PackageTags>
<NeutralLanguage>en-US</NeutralLanguage>
<IncludeSource>true</IncludeSource>
<IncludeSymbols>true</IncludeSymbols>
<Company>GitHub Community</Company>
<Product>Vanara</Product>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<PackageReleaseNotes></PackageReleaseNotes>
<LangVersion>latest</LangVersion>
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>..\..\Vanara.snk</AssemblyOriginatorKeyFile>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)'=='Release'">
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<DocumentationFile>bin\$(Configuration)\$(TargetFramework)\$(AssemblyName).xml</DocumentationFile>
</PropertyGroup>
<ItemGroup Condition=" '$(TargetFramework)' == 'net20' ">
<Reference Include="System" />
</ItemGroup>
<ItemGroup Condition=" '$(TargetFramework)' == 'net35' ">
<Reference Include="System" />
</ItemGroup>
<ItemGroup Condition=" '$(TargetFramework)' == 'net40' ">
<Reference Include="System" />
</ItemGroup>
<ItemGroup Condition=" '$(TargetFramework)' == 'net45' ">
<Reference Include="System" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\Core\Vanara.Core.csproj" />
<ProjectReference Include="..\Cryptography\Vanara.PInvoke.Cryptography.csproj" />
<ProjectReference Include="..\Shared\Vanara.PInvoke.Shared.csproj" />
</ItemGroup>
</Project>

2184
PInvoke/WinTrust/WinTrust.cs Normal file

File diff suppressed because it is too large Load Diff

View File

@ -157,7 +157,9 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ws2_32", "UnitTests\PInvoke
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Vanara.PInvoke.Accessibility", "PInvoke\Accessibility\Vanara.PInvoke.Accessibility.csproj", "{D5BD6ECE-B285-4CE8-ABFC-964AB1DEA464}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Vanara.PInvoke.SearchApi", "PInvoke\SearchApi\Vanara.PInvoke.SearchApi.csproj", "{07CD630D-A4BD-45CB-BF1B-90E981F4DE81}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Vanara.PInvoke.SearchApi", "PInvoke\SearchApi\Vanara.PInvoke.SearchApi.csproj", "{07CD630D-A4BD-45CB-BF1B-90E981F4DE81}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Vanara.PInvoke.WinTrust", "PInvoke\WinTrust\Vanara.PInvoke.WinTrust.csproj", "{3EDE955E-50DE-4E1D-97E8-31E4E6A83E7D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -439,6 +441,10 @@ Global
{07CD630D-A4BD-45CB-BF1B-90E981F4DE81}.Debug|Any CPU.Build.0 = Debug|Any CPU
{07CD630D-A4BD-45CB-BF1B-90E981F4DE81}.Release|Any CPU.ActiveCfg = Release|Any CPU
{07CD630D-A4BD-45CB-BF1B-90E981F4DE81}.Release|Any CPU.Build.0 = Release|Any CPU
{3EDE955E-50DE-4E1D-97E8-31E4E6A83E7D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3EDE955E-50DE-4E1D-97E8-31E4E6A83E7D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3EDE955E-50DE-4E1D-97E8-31E4E6A83E7D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3EDE955E-50DE-4E1D-97E8-31E4E6A83E7D}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -508,6 +514,7 @@ Global
{15DC485D-B379-4087-97A7-981ADB4D48F9} = {385CAD2D-0A5E-4F80-927B-D5499D126B90}
{D5BD6ECE-B285-4CE8-ABFC-964AB1DEA464} = {212ABBD0-B724-4CFA-9D6D-E3891547FA90}
{07CD630D-A4BD-45CB-BF1B-90E981F4DE81} = {212ABBD0-B724-4CFA-9D6D-E3891547FA90}
{3EDE955E-50DE-4E1D-97E8-31E4E6A83E7D} = {212ABBD0-B724-4CFA-9D6D-E3891547FA90}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {543FAC75-2AF1-4EF1-9609-B242B63FEED4}