Changed all methods that returned `SafeCoTaskMemString` to `string`. After much reading and testing I determined this was redundant with marshaling code in .NET.

pull/180/head
dahall 2020-10-21 18:44:25 -06:00
parent 38fdfae5a0
commit 857e7c4703
18 changed files with 160 additions and 162 deletions

View File

@ -11,8 +11,7 @@ namespace Vanara.IO
{
private HRESULT code;
private BG_ERROR_CONTEXT ctx;
private SafeCoTaskMemString ctxDesc, protocol;
private string errDesc;
private string ctxDesc, errDesc, protocol;
private IBackgroundCopyFile iVal;
internal BackgroundCopyException(IBackgroundCopyError err)

View File

@ -935,7 +935,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the error text associated with the error. Call the CoTaskMemFree function to free
/// ppErrorDescription when done.
/// </returns>
SafeCoTaskMemString GetErrorDescription([In] uint LanguageId);
string GetErrorDescription([In] uint LanguageId);
/// <summary>Retrieves the description of the context in which the error occurred.</summary>
/// <param name="LanguageId">
@ -949,7 +949,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the description of the context in which the error occurred. Call the CoTaskMemFree
/// function to free ppContextDescription when done.
/// </returns>
SafeCoTaskMemString GetErrorContextDescription([In] uint LanguageId);
string GetErrorContextDescription([In] uint LanguageId);
/// <summary>
/// Retrieves the protocol used to transfer the file. The remote file name identifies the protocol to use to transfer the file.
@ -959,7 +959,7 @@ namespace Vanara.PInvoke
/// and "file" for the SMB protocol. The ppProtocol parameter is set to NULL if the error is not related to the transfer
/// protocol. Call the CoTaskMemFree function to free ppProtocol when done.
/// </returns>
SafeCoTaskMemString GetProtocol();
string GetProtocol();
}
/// <summary>
@ -979,14 +979,14 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the remote name of the file to transfer. The name is fully qualified. Call the
/// CoTaskMemFree function to free ppName when done.
/// </returns>
SafeCoTaskMemString GetRemoteName();
string GetRemoteName();
/// <summary>Retrieves the local name of the file.</summary>
/// <returns>
/// Null-terminated string that contains the name of the file on the client. The name is fully qualified. Call the CoTaskMemFree
/// function to free ppName when done.
/// </returns>
SafeCoTaskMemString GetLocalName();
string GetLocalName();
/// <summary>Retrieves information on the progress of the file transfer.</summary>
/// <returns>
@ -1014,14 +1014,14 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the remote name of the file to transfer. The name is fully qualified. Call the
/// CoTaskMemFree function to free ppName when done.
/// </returns>
new SafeCoTaskMemString GetRemoteName();
new string GetRemoteName();
/// <summary>Retrieves the local name of the file.</summary>
/// <returns>
/// Null-terminated string that contains the name of the file on the client. The name is fully qualified. Call the CoTaskMemFree
/// function to free ppName when done.
/// </returns>
new SafeCoTaskMemString GetLocalName();
new string GetLocalName();
/// <summary>Retrieves information on the progress of the file transfer.</summary>
/// <returns>
@ -1062,14 +1062,14 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the remote name of the file to transfer. The name is fully qualified. Call the
/// CoTaskMemFree function to free ppName when done.
/// </returns>
new SafeCoTaskMemString GetRemoteName();
new string GetRemoteName();
/// <summary>Retrieves the local name of the file.</summary>
/// <returns>
/// Null-terminated string that contains the name of the file on the client. The name is fully qualified. Call the CoTaskMemFree
/// function to free ppName when done.
/// </returns>
new SafeCoTaskMemString GetLocalName();
new string GetLocalName();
/// <summary>Retrieves information on the progress of the file transfer.</summary>
/// <returns>
@ -1097,7 +1097,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the full path of the temporary file. Call the CoTaskMemFree function to free ppFileName
/// when done.
/// </returns>
SafeCoTaskMemString GetTemporaryName();
string GetTemporaryName();
/// <summary>Sets the validation state of this file.</summary>
/// <param name="state">Set to TRUE if the file content is valid, otherwise, FALSE.</param>
@ -1130,14 +1130,14 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the remote name of the file to transfer. The name is fully qualified. Call the
/// CoTaskMemFree function to free ppName when done.
/// </returns>
new SafeCoTaskMemString GetRemoteName();
new string GetRemoteName();
/// <summary>Retrieves the local name of the file.</summary>
/// <returns>
/// Null-terminated string that contains the name of the file on the client. The name is fully qualified. Call the CoTaskMemFree
/// function to free ppName when done.
/// </returns>
new SafeCoTaskMemString GetLocalName();
new string GetLocalName();
/// <summary>Retrieves information on the progress of the file transfer.</summary>
/// <returns>
@ -1165,7 +1165,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the full path of the temporary file. Call the CoTaskMemFree function to free ppFileName
/// when done.
/// </returns>
new SafeCoTaskMemString GetTemporaryName();
new string GetTemporaryName();
/// <summary>Sets the validation state of this file.</summary>
/// <param name="state">Set to TRUE if the file content is valid, otherwise, FALSE.</param>
@ -1203,14 +1203,14 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the remote name of the file to transfer. The name is fully qualified. Call the
/// CoTaskMemFree function to free ppName when done.
/// </returns>
new SafeCoTaskMemString GetRemoteName();
new string GetRemoteName();
/// <summary>Retrieves the local name of the file.</summary>
/// <returns>
/// Null-terminated string that contains the name of the file on the client. The name is fully qualified. Call the CoTaskMemFree
/// function to free ppName when done.
/// </returns>
new SafeCoTaskMemString GetLocalName();
new string GetLocalName();
/// <summary>Retrieves information on the progress of the file transfer.</summary>
/// <returns>
@ -1238,7 +1238,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the full path of the temporary file. Call the CoTaskMemFree function to free ppFileName
/// when done.
/// </returns>
new SafeCoTaskMemString GetTemporaryName();
new string GetTemporaryName();
/// <summary>Sets the validation state of this file.</summary>
/// <param name="state">Set to TRUE if the file content is valid, otherwise, FALSE.</param>
@ -1285,14 +1285,14 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the remote name of the file to transfer. The name is fully qualified. Call the
/// CoTaskMemFree function to free ppName when done.
/// </returns>
new SafeCoTaskMemString GetRemoteName();
new string GetRemoteName();
/// <summary>Retrieves the local name of the file.</summary>
/// <returns>
/// Null-terminated string that contains the name of the file on the client. The name is fully qualified. Call the CoTaskMemFree
/// function to free ppName when done.
/// </returns>
new SafeCoTaskMemString GetLocalName();
new string GetLocalName();
/// <summary>Retrieves information on the progress of the file transfer.</summary>
/// <returns>
@ -1320,7 +1320,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the full path of the temporary file. Call the CoTaskMemFree function to free ppFileName
/// when done.
/// </returns>
new SafeCoTaskMemString GetTemporaryName();
new string GetTemporaryName();
/// <summary>Sets the validation state of this file.</summary>
/// <param name="state">Set to TRUE if the file content is valid, otherwise, FALSE.</param>
@ -1519,7 +1519,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the string version of the SID that identifies the job's owner. Call the CoTaskMemFree
/// function to free ppOwner when done.
/// </returns>
SafeCoTaskMemString GetOwner();
string GetOwner();
/// <summary>Specifies a display name for the job. Typically, you use the display name to identify the job in a user interface.</summary>
/// <param name="pDisplayName">
@ -1533,7 +1533,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the display name that identifies the job. More than one job can have the same display
/// name. Call the CoTaskMemFree function to free ppDisplayName when done.
/// </returns>
SafeCoTaskMemString GetDisplayName();
string GetDisplayName();
/// <summary>Provides a description of the job.</summary>
/// <param name="pDescription">
@ -1547,7 +1547,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains a short description of the job. Call the CoTaskMemFree function to free ppDescription
/// when done.
/// </returns>
SafeCoTaskMemString GetDescription();
string GetDescription();
/// <summary>
/// Specifies the priority level of your job. The priority level determines when your job is processed relative to other jobs in
@ -1786,7 +1786,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the string version of the SID that identifies the job's owner. Call the CoTaskMemFree
/// function to free ppOwner when done.
/// </returns>
new SafeCoTaskMemString GetOwner();
new string GetOwner();
/// <summary>Specifies a display name for the job. Typically, you use the display name to identify the job in a user interface.</summary>
/// <param name="pDisplayName">
@ -1800,7 +1800,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the display name that identifies the job. More than one job can have the same display
/// name. Call the CoTaskMemFree function to free ppDisplayName when done.
/// </returns>
new SafeCoTaskMemString GetDisplayName();
new string GetDisplayName();
/// <summary>Provides a description of the job.</summary>
/// <param name="pDescription">
@ -1814,7 +1814,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains a short description of the job. Call the CoTaskMemFree function to free ppDescription
/// when done.
/// </returns>
new SafeCoTaskMemString GetDescription();
new string GetDescription();
/// <summary>
/// Specifies the priority level of your job. The priority level determines when your job is processed relative to other jobs in
@ -2014,7 +2014,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the full path to the reply file. Call the CoTaskMemFree function to free pReplyFileName
/// when done.
/// </returns>
SafeCoTaskMemString GetReplyFileName();
string GetReplyFileName();
/// <summary>Specifies the credentials to use for a proxy or remote server user authentication request.</summary>
/// <param name="Credentials">
@ -2142,7 +2142,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the string version of the SID that identifies the job's owner. Call the CoTaskMemFree
/// function to free ppOwner when done.
/// </returns>
new SafeCoTaskMemString GetOwner();
new string GetOwner();
/// <summary>Specifies a display name for the job. Typically, you use the display name to identify the job in a user interface.</summary>
/// <param name="pDisplayName">
@ -2156,7 +2156,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the display name that identifies the job. More than one job can have the same display
/// name. Call the CoTaskMemFree function to free ppDisplayName when done.
/// </returns>
new SafeCoTaskMemString GetDisplayName();
new string GetDisplayName();
/// <summary>Provides a description of the job.</summary>
/// <param name="pDescription">
@ -2170,7 +2170,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains a short description of the job. Call the CoTaskMemFree function to free ppDescription
/// when done.
/// </returns>
new SafeCoTaskMemString GetDescription();
new string GetDescription();
/// <summary>
/// Specifies the priority level of your job. The priority level determines when your job is processed relative to other jobs in
@ -2370,7 +2370,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the full path to the reply file. Call the CoTaskMemFree function to free pReplyFileName
/// when done.
/// </returns>
new SafeCoTaskMemString GetReplyFileName();
new string GetReplyFileName();
/// <summary>Specifies the credentials to use for a proxy or remote server user authentication request.</summary>
/// <param name="Credentials">
@ -2530,7 +2530,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the string version of the SID that identifies the job's owner. Call the CoTaskMemFree
/// function to free ppOwner when done.
/// </returns>
new SafeCoTaskMemString GetOwner();
new string GetOwner();
/// <summary>Specifies a display name for the job. Typically, you use the display name to identify the job in a user interface.</summary>
/// <param name="pDisplayName">
@ -2544,7 +2544,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the display name that identifies the job. More than one job can have the same display
/// name. Call the CoTaskMemFree function to free ppDisplayName when done.
/// </returns>
new SafeCoTaskMemString GetDisplayName();
new string GetDisplayName();
/// <summary>Provides a description of the job.</summary>
/// <param name="pDescription">
@ -2558,7 +2558,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains a short description of the job. Call the CoTaskMemFree function to free ppDescription
/// when done.
/// </returns>
new SafeCoTaskMemString GetDescription();
new string GetDescription();
/// <summary>
/// Specifies the priority level of your job. The priority level determines when your job is processed relative to other jobs in
@ -2758,7 +2758,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the full path to the reply file. Call the CoTaskMemFree function to free pReplyFileName
/// when done.
/// </returns>
new SafeCoTaskMemString GetReplyFileName();
new string GetReplyFileName();
/// <summary>Specifies the credentials to use for a proxy or remote server user authentication request.</summary>
/// <param name="Credentials">
@ -2961,7 +2961,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the string version of the SID that identifies the job's owner. Call the CoTaskMemFree
/// function to free ppOwner when done.
/// </returns>
new SafeCoTaskMemString GetOwner();
new string GetOwner();
/// <summary>Specifies a display name for the job. Typically, you use the display name to identify the job in a user interface.</summary>
/// <param name="pDisplayName">
@ -2975,7 +2975,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the display name that identifies the job. More than one job can have the same display
/// name. Call the CoTaskMemFree function to free ppDisplayName when done.
/// </returns>
new SafeCoTaskMemString GetDisplayName();
new string GetDisplayName();
/// <summary>Provides a description of the job.</summary>
/// <param name="pDescription">
@ -2989,7 +2989,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains a short description of the job. Call the CoTaskMemFree function to free ppDescription
/// when done.
/// </returns>
new SafeCoTaskMemString GetDescription();
new string GetDescription();
/// <summary>
/// Specifies the priority level of your job. The priority level determines when your job is processed relative to other jobs in
@ -3189,7 +3189,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the full path to the reply file. Call the CoTaskMemFree function to free pReplyFileName
/// when done.
/// </returns>
new SafeCoTaskMemString GetReplyFileName();
new string GetReplyFileName();
/// <summary>Specifies the credentials to use for a proxy or remote server user authentication request.</summary>
/// <param name="Credentials">
@ -3437,7 +3437,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the custom headers. Each header is terminated by a carriage return and line feed (CR/LF)
/// character. To free the string when finished, call the CoTaskMemFree function.
/// </returns>
SafeCoTaskMemString GetCustomHeaders();
string GetCustomHeaders();
/// <summary>
/// Sets flags for HTTP that determine whether the certificate revocation list is checked and certain certificate errors are
@ -3521,7 +3521,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains a description of the error. Call the CoTaskMemFree function to free ppErrorDescription
/// when done.
/// </returns>
SafeCoTaskMemString GetErrorDescription([In] HRESULT hResult, [In] uint LanguageId);
string GetErrorDescription([In] HRESULT hResult, [In] uint LanguageId);
}
/// <summary>
@ -3538,7 +3538,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the server principal name of the peer. The principal name is of the form,
/// server$.domain.suffix. Call the CoTaskMemFree function to free pName when done.
/// </returns>
SafeCoTaskMemString GetPeerName();
string GetPeerName();
/// <summary>Determines whether the peer is authenticated.</summary>
/// <returns>TRUE if the peer is authenticated, otherwise, FALSE.</returns>
@ -3667,7 +3667,7 @@ namespace Vanara.PInvoke
/// Null-terminated string that contains the origin URL of the cached file. Call the CoTaskMemFree function to free ppOriginUrl
/// when done.
/// </returns>
SafeCoTaskMemString GetOriginUrl();
string GetOriginUrl();
/// <summary>Gets the size of the file.</summary>
/// <returns>Size of the file, in bytes.</returns>
@ -3754,7 +3754,7 @@ namespace Vanara.PInvoke
/// Returns the SID that is retrieved from the TokenInformation parameter of the GetTokenInformation function. If no SID is
/// retrieved, this parameter is set to NULL.
/// </returns>
SafeCoTaskMemString GetHelperTokenSid();
string GetHelperTokenSid();
}
/// <summary>

View File

@ -2648,7 +2648,7 @@ namespace Vanara.PInvoke
// DWORD *pCapabilities );
[DllImport(Lib.Ole32, SetLastError = false, ExactSpelling = true)]
[PInvokeData("combaseapi.h", MSDNShortId = "58a2c121-c324-4c33-aaca-490b5a09738c")]
public static extern HRESULT CoQueryClientBlanket(out RPC_C_AUTHN pAuthnSvc, out RPC_C_AUTHZ pAuthzSvc, out SafeCoTaskMemString pServerPrincName,
public static extern HRESULT CoQueryClientBlanket(out RPC_C_AUTHN pAuthnSvc, out RPC_C_AUTHZ pAuthzSvc, out string pServerPrincName,
out RPC_C_AUTHN_LEVEL pAuthnLevel, out RPC_C_IMP_LEVEL pImpLevel, out RPC_AUTHZ_HANDLE pPrivs, ref EOLE_AUTHENTICATION_CAPABILITIES pCapabilities);
/// <summary>
@ -3945,7 +3945,7 @@ namespace Vanara.PInvoke
// clsid, LPOLESTR *lplpszProgID );
[DllImport(Lib.Ole32, SetLastError = false, ExactSpelling = true, CharSet = CharSet.Unicode)]
[PInvokeData("combaseapi.h", MSDNShortId = "a863cbc2-f8ab-468a-8254-b273077a6a2b")]
public static extern HRESULT ProgIDFromCLSID(in Guid clsid, out SafeCoTaskMemString lplpszProgID);
public static extern HRESULT ProgIDFromCLSID(in Guid clsid, out string lplpszProgID);
/// <summary>Creates an agile reference for an object specified by the given interface.</summary>
/// <param name="options">The options.</param>

View File

@ -796,7 +796,7 @@ namespace Vanara.PInvoke
/// <returns>
/// When this method returns, contains the address of a pointer to the property's canonical name as a null-terminated Unicode string.
/// </returns>
SafeCoTaskMemString GetCanonicalName();
string GetCanonicalName();
/// <summary>Gets the variant type of the property.</summary>
/// <returns>
@ -808,13 +808,13 @@ namespace Vanara.PInvoke
/// <summary>Gets the display name of the property as it is shown in any UI.</summary>
/// <param name="pszName">Contains the address of a pointer to the property's name as a null-terminated Unicode string.</param>
[PreserveSig]
HRESULT GetDisplayName(out SafeCoTaskMemString pszName);
HRESULT GetDisplayName(out string pszName);
/// <summary>Gets the text used in edit controls hosted in various dialog boxes.</summary>
/// <returns>
/// When this method returns, contains the address of a pointer to a null-terminated Unicode buffer that holds the invitation text.
/// </returns>
SafeCoTaskMemString GetEditInvitation();
string GetEditInvitation();
/// <summary>Gets a set of flags that describe the uses and capabilities of the property.</summary>
/// <param name="mask">
@ -886,7 +886,7 @@ namespace Vanara.PInvoke
/// <returns>
/// When this method returns, contains the address of a pointer to the sort description as a null-terminated Unicode string.
/// </returns>
SafeCoTaskMemString GetSortDescriptionLabel([In, MarshalAs(UnmanagedType.Bool)] bool fDescending);
string GetSortDescriptionLabel([In, MarshalAs(UnmanagedType.Bool)] bool fDescending);
/// <summary>Gets a value that describes how the property values are displayed when multiple items are selected in the UI.</summary>
/// <returns>When this method returns, contains a pointer to a value that indicates the aggregation type.</returns>
@ -924,7 +924,7 @@ namespace Vanara.PInvoke
/// When this method returns, contains the formatted value as a null-terminated, Unicode string. The calling application must
/// allocate memory for the buffer, and use CoTaskMemFree to release the string specified by pszText when it is no longer needed.
/// </returns>
SafeCoTaskMemString FormatForDisplay([In] PROPVARIANT propvar, [In] PROPDESC_FORMAT_FLAGS pdfFlags);
string FormatForDisplay([In] PROPVARIANT propvar, [In] PROPDESC_FORMAT_FLAGS pdfFlags);
/// <summary>Gets a value that indicates whether a property is canonical according to the definition of the property description.</summary>
/// <param name="propvar">A reference to a PROPVARIANT structure that contains the type and value of the property.</param>
@ -946,7 +946,7 @@ namespace Vanara.PInvoke
/// <returns>
/// When this method returns, contains the address of a pointer to the property's canonical name as a null-terminated Unicode string.
/// </returns>
new SafeCoTaskMemString GetCanonicalName();
new string GetCanonicalName();
/// <summary>Gets the variant type of the property.</summary>
/// <returns>
@ -958,13 +958,13 @@ namespace Vanara.PInvoke
/// <summary>Gets the display name of the property as it is shown in any UI.</summary>
/// <param name="pszName">Contains the address of a pointer to the property's name as a null-terminated Unicode string.</param>
[PreserveSig]
new HRESULT GetDisplayName(out SafeCoTaskMemString pszName);
new HRESULT GetDisplayName(out string pszName);
/// <summary>Gets the text used in edit controls hosted in various dialog boxes.</summary>
/// <returns>
/// When this method returns, contains the address of a pointer to a null-terminated Unicode buffer that holds the invitation text.
/// </returns>
new SafeCoTaskMemString GetEditInvitation();
new string GetEditInvitation();
/// <summary>Gets a set of flags that describe the uses and capabilities of the property.</summary>
/// <param name="mask">
@ -1036,7 +1036,7 @@ namespace Vanara.PInvoke
/// <returns>
/// When this method returns, contains the address of a pointer to the sort description as a null-terminated Unicode string.
/// </returns>
new SafeCoTaskMemString GetSortDescriptionLabel([In, MarshalAs(UnmanagedType.Bool)] bool fDescending);
new string GetSortDescriptionLabel([In, MarshalAs(UnmanagedType.Bool)] bool fDescending);
/// <summary>Gets a value that describes how the property values are displayed when multiple items are selected in the UI.</summary>
/// <returns>When this method returns, contains a pointer to a value that indicates the aggregation type.</returns>
@ -1074,7 +1074,7 @@ namespace Vanara.PInvoke
/// When this method returns, contains the formatted value as a null-terminated, Unicode string. The calling application must
/// allocate memory for the buffer, and use CoTaskMemFree to release the string specified by pszText when it is no longer needed.
/// </returns>
new SafeCoTaskMemString FormatForDisplay([In] PROPVARIANT propvar, [In] PROPDESC_FORMAT_FLAGS pdfFlags);
new string FormatForDisplay([In] PROPVARIANT propvar, [In] PROPDESC_FORMAT_FLAGS pdfFlags);
/// <summary>Gets a value that indicates whether a property is canonical according to the definition of the property description.</summary>
/// <param name="propvar">A reference to a PROPVARIANT structure that contains the type and value of the property.</param>
@ -1090,7 +1090,7 @@ namespace Vanara.PInvoke
/// </param>
/// <returns>If this method succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.</returns>
[PreserveSig]
HRESULT GetImageReferenceForValue([In] PROPVARIANT propvar, out SafeCoTaskMemString ppszImageRes);
HRESULT GetImageReferenceForValue([In] PROPVARIANT propvar, out string ppszImageRes);
}
/// <summary>Exposes methods that enumerate and retrieve property description list details.</summary>
@ -2056,7 +2056,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/propsys/nf-propsys-ipropertysystem-formatfordisplayalloc HRESULT
// FormatForDisplayAlloc( REFPROPERTYKEY key, REFPROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdff, LPWSTR *ppszDisplay );
SafeCoTaskMemString FormatForDisplayAlloc(ref PROPERTYKEY key, PROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdff);
string FormatForDisplayAlloc(ref PROPERTYKEY key, PROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdff);
/// <summary>Informs the schema subsystem of the addition of a property description schema file.</summary>
/// <param name="pszPath">

View File

@ -4064,7 +4064,7 @@ namespace Vanara.PInvoke
// REFVARIANT varIn, PWSTR *ppszBuf );
[DllImport(Lib.PropSys, SetLastError = false, ExactSpelling = true)]
[PInvokeData("propvarutil.h", MSDNShortId = "9cd4433c-d8ad-43ef-bdb9-9c1b8d8bea01")]
public static extern HRESULT VariantToStringAlloc(in VARIANT varIn, out SafeCoTaskMemString ppszBuf);
public static extern HRESULT VariantToStringAlloc(in VARIANT varIn, out string ppszBuf);
/// <summary>Extracts data from a vector structure into a String array.</summary>
/// <param name="var">

View File

@ -655,7 +655,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcdigitalsignature-getnamespaces HRESULT GetNamespaces(
// LPWSTR **prefixes, LPWSTR **namespaces, UINT32 *count );
void GetNamespaces(out SafeCoTaskMemString prefixes, out SafeCoTaskMemString namespaces, out uint count);
void GetNamespaces(out string prefixes, out string namespaces, out uint count);
/// <summary>Gets the value of the <c>Id</c> attribute from the <c>Signature</c> element of the signature markup.</summary>
/// <returns>
@ -672,7 +672,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcdigitalsignature-getsignatureid HRESULT GetSignatureId(
// LPWSTR *signatureId );
SafeCoTaskMemString GetSignatureId();
string GetSignatureId();
/// <summary>Gets the part name of the part that contains the signature markup.</summary>
/// <returns>
@ -722,7 +722,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcdigitalsignature-getsignaturemethod HRESULT
// GetSignatureMethod( LPWSTR *signatureMethod );
SafeCoTaskMemString GetSignatureMethod();
string GetSignatureMethod();
/// <summary>Gets the canonicalization method that was applied to the <c>SignedInfo</c> element of the serialized signature.</summary>
/// <returns>
@ -815,7 +815,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcdigitalsignature-getsigningtime HRESULT GetSigningTime(
// LPWSTR *signingTime );
SafeCoTaskMemString GetSigningTime();
string GetSigningTime();
/// <summary>Gets the format of the string returned by the GetSigningTime method.</summary>
/// <returns>An OPC_SIGNATURE_TIME_FORMAT value that describes the format of the string returned by GetSigningTime.</returns>
@ -2022,7 +2022,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcpart-getcontenttype HRESULT GetContentType( LPWSTR
// *contentType );
SafeCoTaskMemString GetContentType();
string GetContentType();
/// <summary>Gets a value that describes the way part content is compressed.</summary>
/// <returns>A value that describes the way part content is compressed.</returns>
@ -3262,7 +3262,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcrelationship-getid HRESULT GetId( LPWSTR
// *relationshipIdentifier );
SafeCoTaskMemString GetId();
string GetId();
/// <summary>Gets the relationship type.</summary>
/// <returns>
@ -3288,7 +3288,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcrelationship-getrelationshiptype HRESULT
// GetRelationshipType( LPWSTR *relationshipType );
SafeCoTaskMemString GetRelationshipType();
string GetRelationshipType();
/// <summary>Gets the URI of the relationship source.</summary>
/// <returns>A pointer to the IOpcUri interface of the OPC URI object that represents the URI of the relationship source.</returns>
@ -3682,7 +3682,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcrelationshipselector-getselectioncriterion HRESULT
// GetSelectionCriterion( LPWSTR *selectionCriterion );
SafeCoTaskMemString GetSelectionCriterion();
string GetSelectionCriterion();
}
/// <summary>A read-only enumerator of IOpcRelationshipSelector interface pointers.</summary>
@ -4614,7 +4614,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcsignaturepartreference-getcontenttype HRESULT
// GetContentType( LPWSTR *contentType );
SafeCoTaskMemString GetContentType();
string GetContentType();
/// <summary>Gets the digest method to use on part content of the referenced part when the part is signed.</summary>
/// <returns>The digest method to use on part content of the referenced part when the part is signed.</returns>
@ -4625,7 +4625,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcsignaturepartreference-getdigestmethod HRESULT
// GetDigestMethod( LPWSTR *digestMethod );
SafeCoTaskMemString GetDigestMethod();
string GetDigestMethod();
/// <summary>Gets the digest value that is calculated for part content of the referenced part when the part is signed.</summary>
/// <param name="digestValue">
@ -4962,7 +4962,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcsignaturereference-getid HRESULT GetId( LPWSTR
// *referenceId );
SafeCoTaskMemString GetId();
string GetId();
/// <summary>Gets the URI of the referenced XML element.</summary>
/// <returns>
@ -5020,7 +5020,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcsignaturereference-gettype HRESULT GetType( LPWSTR
// *type );
SafeCoTaskMemString GetType();
string GetType();
/// <summary>Gets the canonicalization method to use on the referenced XML element, when the element is signed.</summary>
/// <returns>The canonicalization method to use on the referenced XML element, when the element is signed.</returns>
@ -5037,7 +5037,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcsignaturereference-getdigestmethod HRESULT
// GetDigestMethod( LPWSTR *digestMethod );
SafeCoTaskMemString GetDigestMethod();
string GetDigestMethod();
/// <summary>Gets the digest value that is calculated for the referenced XML element when the element is signed.</summary>
/// <param name="digestValue">
@ -5392,7 +5392,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcsignaturerelationshipreference-getdigestmethod HRESULT
// GetDigestMethod( LPWSTR *digestMethod );
SafeCoTaskMemString GetDigestMethod();
string GetDigestMethod();
/// <summary>Gets the digest value calculated for the selected relationships when they are signed.</summary>
/// <param name="digestValue">
@ -5860,7 +5860,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcsigningoptions-getsignatureid HRESULT GetSignatureId(
// LPWSTR *signatureId );
SafeCoTaskMemString GetSignatureId();
string GetSignatureId();
/// <summary>Sets the value of the <c>Id</c> attribute of the <c>Signature</c> element.</summary>
/// <param name="signatureId">The value of the <c>Id</c> attribute.</param>
@ -5912,7 +5912,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcsigningoptions-getsignaturemethod HRESULT
// GetSignatureMethod( LPWSTR *signatureMethod );
SafeCoTaskMemString GetSignatureMethod();
string GetSignatureMethod();
/// <summary>
/// Sets the signature method to use to calculate and encrypt the hash value of the <c>SignedInfo</c> element, which will be
@ -5961,7 +5961,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/msopc/nf-msopc-iopcsigningoptions-getdefaultdigestmethod HRESULT
// GetDefaultDigestMethod( LPWSTR *digestMethod );
SafeCoTaskMemString GetDefaultDigestMethod();
string GetDefaultDigestMethod();
/// <summary>Sets the default digest method that will be used to compute digest values for objects to be signed.</summary>
/// <param name="digestMethod">The default digest method.</param>

View File

@ -64,7 +64,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcoreproperties-getcategory HRESULT
// GetCategory( LPWSTR *category );
SafeCoTaskMemString GetCategory();
string GetCategory();
/// <summary>Sets the <c>category</c> property.</summary>
/// <param name="category">
@ -85,7 +85,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcoreproperties-getcontentstatus
// HRESULT GetContentStatus( LPWSTR *contentStatus );
SafeCoTaskMemString GetContentStatus();
string GetContentStatus();
/// <summary>Sets the <c>contentStatus</c> property.</summary>
/// <param name="contentStatus">
@ -110,7 +110,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcoreproperties-getcontenttype
// HRESULT GetContentType( LPWSTR *contentType );
SafeCoTaskMemString GetContentType();
string GetContentType();
/// <summary>Sets the <c>contentType</c> property.</summary>
/// <param name="contentType">
@ -146,7 +146,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcoreproperties-getcreator HRESULT
// GetCreator( LPWSTR *creator );
SafeCoTaskMemString GetCreator();
string GetCreator();
/// <summary>Sets the <c>creator</c> property.</summary>
/// <param name="creator">
@ -166,7 +166,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcoreproperties-getdescription
// HRESULT GetDescription( LPWSTR *description );
SafeCoTaskMemString GetDescription();
string GetDescription();
/// <summary>Sets the <c>description</c> property.</summary>
/// <param name="description">
@ -186,7 +186,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcoreproperties-getidentifier
// HRESULT GetIdentifier( LPWSTR *identifier );
SafeCoTaskMemString GetIdentifier();
string GetIdentifier();
/// <summary>Sets the <c>identifier</c> property.</summary>
/// <param name="identifier">
@ -209,7 +209,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcoreproperties-getkeywords HRESULT
// GetKeywords( LPWSTR *keywords );
SafeCoTaskMemString GetKeywords();
string GetKeywords();
/// <summary>Sets the <c>keywords</c> property.</summary>
/// <param name="keywords">
@ -232,7 +232,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcoreproperties-getlanguage HRESULT
// GetLanguage( LPWSTR *language );
SafeCoTaskMemString GetLanguage();
string GetLanguage();
/// <summary>Sets the <c>language</c> property.</summary>
/// <param name="language">
@ -254,7 +254,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcoreproperties-getlastmodifiedby
// HRESULT GetLastModifiedBy( LPWSTR *lastModifiedBy );
SafeCoTaskMemString GetLastModifiedBy();
string GetLastModifiedBy();
/// <summary>Sets the <c>lastModifiedBy</c> property.</summary>
/// <param name="lastModifiedBy">
@ -305,7 +305,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcoreproperties-getrevision HRESULT
// GetRevision( LPWSTR *revision );
SafeCoTaskMemString GetRevision();
string GetRevision();
/// <summary>Sets the <c>revision</c> property.</summary>
/// <param name="revision">
@ -321,7 +321,7 @@ namespace Vanara.PInvoke
/// <remarks>The <c>subject</c> property contains the topic of the resource's content.</remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcoreproperties-getsubject HRESULT
// GetSubject( LPWSTR *subject );
SafeCoTaskMemString GetSubject();
string GetSubject();
/// <summary>Sets the <c>subject</c> property.</summary>
/// <param name="subject">
@ -337,7 +337,7 @@ namespace Vanara.PInvoke
/// <remarks>The <c>title</c> property contains the resource's name.</remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcoreproperties-gettitle HRESULT
// GetTitle( LPWSTR *title );
SafeCoTaskMemString GetTitle();
string GetTitle();
/// <summary>Sets the <c>title</c> property.</summary>
/// <param name="title">
@ -353,7 +353,7 @@ namespace Vanara.PInvoke
/// <remarks>The <c>version</c> property contains the resource's version number.</remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcoreproperties-getversion HRESULT
// GetVersion( LPWSTR *version );
SafeCoTaskMemString GetVersion();
string GetVersion();
/// <summary>Sets the <c>version</c> property.</summary>
/// <param name="version">
@ -1286,7 +1286,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsompage-getlanguage HRESULT
// GetLanguage( LPWSTR *language );
[MethodImpl(MethodImplOptions.InternalCall)]
SafeCoTaskMemString GetLanguage();
string GetLanguage();
/// <summary>Sets the <c>Language</c> property of the page.</summary>
/// <param name="language">
@ -1308,7 +1308,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsompage-getname HRESULT GetName(
// LPWSTR *name );
[MethodImpl(MethodImplOptions.InternalCall)]
SafeCoTaskMemString GetName();
string GetName();
/// <summary>Sets the <c>Name</c> property of this page.</summary>
/// <param name="name">
@ -1664,7 +1664,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsompage-generateunusedlookupkey
// HRESULT GenerateUnusedLookupKey( XPS_OBJECT_TYPE type, LPWSTR *key );
[MethodImpl(MethodImplOptions.InternalCall)]
SafeCoTaskMemString GenerateUnusedLookupKey([In] XPS_OBJECT_TYPE type);
string GenerateUnusedLookupKey([In] XPS_OBJECT_TYPE type);
/// <summary>Makes a deep copy of the interface.</summary>
/// <returns>A pointer to the copy of the interface.</returns>

View File

@ -224,7 +224,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-gettransformlookup HRESULT
// GetTransformLookup( LPWSTR *key );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetTransformLookup();
new string GetTransformLookup();
/// <summary>Sets the lookup key name of a shared matrix transform in a resource dictionary.</summary>
/// <param name="key">The lookup key name of the matrix transform in the dictionary.</param>
@ -413,7 +413,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getclipgeometrylookup
// HRESULT GetClipGeometryLookup( LPWSTR *key );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetClipGeometryLookup();
new string GetClipGeometryLookup();
/// <summary>Sets the lookup key name of a shared clip geometry in a resource dictionary.</summary>
/// <param name="key">
@ -618,7 +618,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getopacitymaskbrushlookup
// HRESULT GetOpacityMaskBrushLookup( LPWSTR *key );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetOpacityMaskBrushLookup();
new string GetOpacityMaskBrushLookup();
/// <summary>Sets the lookup key name of a shared opacity mask brush in a resource dictionary.</summary>
/// <param name="key">
@ -670,7 +670,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getname HRESULT GetName(
// LPWSTR *name );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetName();
new string GetName();
/// <summary>Sets the <c>Name</c> property of the visual.</summary>
/// <param name="name">The name of the visual. A <c>NULL</c> pointer clears the <c>Name</c> property.</param>
@ -765,7 +765,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getlanguage HRESULT
// GetLanguage( LPWSTR *language );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetLanguage();
new string GetLanguage();
/// <summary>Sets the <c>Language</c> property of the visual.</summary>
/// <param name="language">
@ -877,7 +877,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcanvas-getaccessibilityshortdescription
// HRESULT GetAccessibilityShortDescription( LPWSTR *shortDescription );
SafeCoTaskMemString GetAccessibilityShortDescription();
string GetAccessibilityShortDescription();
/// <summary>
/// Sets the short textual description of the object's contents. This text is used by accessibility clients to describe the object.
@ -909,7 +909,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomcanvas-getaccessibilitylongdescription
// HRESULT GetAccessibilityLongDescription( LPWSTR *longDescription );
SafeCoTaskMemString GetAccessibilityLongDescription();
string GetAccessibilityLongDescription();
/// <summary>
/// Sets the long (detailed) textual description of the object's contents. This text is used by accessibility clients to
@ -1398,7 +1398,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomdictionary-getat HRESULT GetAt(
// UINT32 index, LPWSTR *key, IXpsOMShareable **entry );
IXpsOMShareable GetAt([In] uint index, out SafeCoTaskMemString key);
IXpsOMShareable GetAt([In] uint index, out string key);
/// <summary>Gets the IXpsOMShareable interface pointer of the entry that contains the specified key.</summary>
/// <param name="key">The entry's key to be found in the dictionary.</param>
@ -2030,7 +2030,7 @@ namespace Vanara.PInvoke
/// </returns>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomgeometry-gettransformlookup HRESULT
// GetTransformLookup( LPWSTR *lookup );
SafeCoTaskMemString GetTransformLookup();
string GetTransformLookup();
/// <summary>Sets the lookup key name of a shared matrix transform in a resource dictionary.</summary>
/// <param name="lookup">The key name of the shared matrix transform in the resource dictionary.</param>
@ -2782,7 +2782,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-gettransformlookup HRESULT
// GetTransformLookup( LPWSTR *key );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetTransformLookup();
new string GetTransformLookup();
/// <summary>Sets the lookup key name of a shared matrix transform in a resource dictionary.</summary>
/// <param name="key">The lookup key name of the matrix transform in the dictionary.</param>
@ -2971,7 +2971,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getclipgeometrylookup
// HRESULT GetClipGeometryLookup( LPWSTR *key );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetClipGeometryLookup();
new string GetClipGeometryLookup();
/// <summary>Sets the lookup key name of a shared clip geometry in a resource dictionary.</summary>
/// <param name="key">
@ -3176,7 +3176,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getopacitymaskbrushlookup
// HRESULT GetOpacityMaskBrushLookup( LPWSTR *key );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetOpacityMaskBrushLookup();
new string GetOpacityMaskBrushLookup();
/// <summary>Sets the lookup key name of a shared opacity mask brush in a resource dictionary.</summary>
/// <param name="key">
@ -3228,7 +3228,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getname HRESULT GetName(
// LPWSTR *name );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetName();
new string GetName();
/// <summary>Sets the <c>Name</c> property of the visual.</summary>
/// <param name="name">The name of the visual. A <c>NULL</c> pointer clears the <c>Name</c> property.</param>
@ -3323,7 +3323,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getlanguage HRESULT
// GetLanguage( LPWSTR *language );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetLanguage();
new string GetLanguage();
/// <summary>Sets the <c>Language</c> property of the visual.</summary>
/// <param name="language">
@ -3342,7 +3342,7 @@ namespace Vanara.PInvoke
/// <returns>The UTF-16 Unicode string of the text to be displayed. If the string is empty, a <c>NULL</c> pointer is returned.</returns>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomglyphs-getunicodestring HRESULT
// GetUnicodeString( LPWSTR *unicodeString );
SafeCoTaskMemString GetUnicodeString();
string GetUnicodeString();
/// <summary>Gets the number of Glyph indices.</summary>
/// <returns>The number of glyph indices.</returns>
@ -3481,7 +3481,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomglyphs-getdevicefontname HRESULT
// GetDeviceFontName( LPWSTR *deviceFontName );
SafeCoTaskMemString GetDeviceFontName();
string GetDeviceFontName();
/// <summary>Gets the style simulations that will be applied when rendering the glyphs.</summary>
/// <returns>The XPS_STYLE_SIMULATION value that describes the style simulations to be applied.</returns>
@ -3747,7 +3747,7 @@ namespace Vanara.PInvoke
/// </returns>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomglyphs-getfillbrushlookup HRESULT
// GetFillBrushLookup( LPWSTR *key );
SafeCoTaskMemString GetFillBrushLookup();
string GetFillBrushLookup();
/// <summary>Sets the lookup key name of a shared fill brush.</summary>
/// <param name="key">
@ -3826,7 +3826,7 @@ namespace Vanara.PInvoke
/// <returns>The UTF-16 Unicode string. If the string is empty, a <c>NULL</c> pointer is returned.</returns>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomglyphseditor-getunicodestring
// HRESULT GetUnicodeString( LPWSTR *unicodeString );
SafeCoTaskMemString GetUnicodeString();
string GetUnicodeString();
/// <summary>Sets the text in unescaped UTF-16 scalar values.</summary>
/// <param name="unicodeString">The address of a UTF-16 Unicode string. A <c>NULL</c> pointer clears the property.</param>
@ -4054,7 +4054,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomglyphseditor-getdevicefontname
// HRESULT GetDeviceFontName( LPWSTR *deviceFontName );
SafeCoTaskMemString GetDeviceFontName();
string GetDeviceFontName();
/// <summary>Sets the name of the device font.</summary>
/// <param name="deviceFontName">
@ -4334,7 +4334,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomgradientbrush-gettransformlookup
// HRESULT GetTransformLookup( LPWSTR *key );
SafeCoTaskMemString GetTransformLookup();
string GetTransformLookup();
/// <summary>
/// <para>Sets the name of the lookup key of a shared matrix transform that is to be used for the brush.</para>
@ -4815,7 +4815,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomtilebrush-gettransformlookup
// HRESULT GetTransformLookup( LPWSTR *key );
new SafeCoTaskMemString GetTransformLookup();
new string GetTransformLookup();
/// <summary>
/// Sets the lookup key name of a shared matrix transform that will be used as the transform for this brush.The shared matrix

View File

@ -352,7 +352,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomgradientbrush-gettransformlookup
// HRESULT GetTransformLookup( LPWSTR *key );
new SafeCoTaskMemString GetTransformLookup();
new string GetTransformLookup();
/// <summary>
/// <para>Sets the name of the lookup key of a shared matrix transform that is to be used for the brush.</para>
@ -536,7 +536,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomnamecollection-getat HRESULT GetAt(
// UINT32 index, LPWSTR *name );
SafeCoTaskMemString GetAt([In] uint index);
string GetAt([In] uint index);
}
/// <summary>Describes a non-text visual item.</summary>
@ -703,7 +703,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-gettransformlookup HRESULT
// GetTransformLookup( LPWSTR *key );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetTransformLookup();
new string GetTransformLookup();
/// <summary>Sets the lookup key name of a shared matrix transform in a resource dictionary.</summary>
/// <param name="key">The lookup key name of the matrix transform in the dictionary.</param>
@ -892,7 +892,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getclipgeometrylookup
// HRESULT GetClipGeometryLookup( LPWSTR *key );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetClipGeometryLookup();
new string GetClipGeometryLookup();
/// <summary>Sets the lookup key name of a shared clip geometry in a resource dictionary.</summary>
/// <param name="key">
@ -1097,7 +1097,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getopacitymaskbrushlookup
// HRESULT GetOpacityMaskBrushLookup( LPWSTR *key );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetOpacityMaskBrushLookup();
new string GetOpacityMaskBrushLookup();
/// <summary>Sets the lookup key name of a shared opacity mask brush in a resource dictionary.</summary>
/// <param name="key">
@ -1149,7 +1149,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getname HRESULT GetName(
// LPWSTR *name );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetName();
new string GetName();
/// <summary>Sets the <c>Name</c> property of the visual.</summary>
/// <param name="name">The name of the visual. A <c>NULL</c> pointer clears the <c>Name</c> property.</param>
@ -1244,7 +1244,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getlanguage HRESULT
// GetLanguage( LPWSTR *language );
[MethodImpl(MethodImplOptions.InternalCall)]
new SafeCoTaskMemString GetLanguage();
new string GetLanguage();
/// <summary>Sets the <c>Language</c> property of the visual.</summary>
/// <param name="language">
@ -1397,7 +1397,7 @@ namespace Vanara.PInvoke
/// </returns>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsompath-getgeometrylookup HRESULT
// GetGeometryLookup( LPWSTR *lookup );
SafeCoTaskMemString GetGeometryLookup();
string GetGeometryLookup();
/// <summary>
/// <para>Sets the lookup key name of a shared geometry in a resource dictionary.</para>
@ -1457,7 +1457,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsompath-getaccessibilityshortdescription
// HRESULT GetAccessibilityShortDescription( LPWSTR *shortDescription );
SafeCoTaskMemString GetAccessibilityShortDescription();
string GetAccessibilityShortDescription();
/// <summary>
/// Sets the short textual description of the object's contents. This description is used by accessibility clients to describe
@ -1487,7 +1487,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsompath-getaccessibilitylongdescription
// HRESULT GetAccessibilityLongDescription( LPWSTR *longDescription );
SafeCoTaskMemString GetAccessibilityLongDescription();
string GetAccessibilityLongDescription();
/// <summary>
/// Sets the long (detailed) textual description of the object's contents. This description is used by accessibility clients to
@ -1688,7 +1688,7 @@ namespace Vanara.PInvoke
/// </returns>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsompath-getstrokebrushlookup HRESULT
// GetStrokeBrushLookup( LPWSTR *lookup );
SafeCoTaskMemString GetStrokeBrushLookup();
string GetStrokeBrushLookup();
/// <summary>
/// Sets the lookup key name of a shared brush to be used as the stroke brush.The shared brush is stored in a resource dictionary.
@ -2003,7 +2003,7 @@ namespace Vanara.PInvoke
/// </returns>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsompath-getfillbrushlookup HRESULT
// GetFillBrushLookup( LPWSTR *lookup );
SafeCoTaskMemString GetFillBrushLookup();
string GetFillBrushLookup();
/// <summary>Sets the lookup key name of a shared brush in a resource dictionary, to be used as the fill brush.</summary>
/// <param name="lookup">The key name of the brush in a resource dictionary, to be used as the fill brush.</param>
@ -2354,7 +2354,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomgradientbrush-gettransformlookup
// HRESULT GetTransformLookup( LPWSTR *key );
new SafeCoTaskMemString GetTransformLookup();
new string GetTransformLookup();
/// <summary>
/// <para>Sets the name of the lookup key of a shared matrix transform that is to be used for the brush.</para>
@ -3347,7 +3347,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomtilebrush-gettransformlookup
// HRESULT GetTransformLookup( LPWSTR *key );
SafeCoTaskMemString GetTransformLookup();
string GetTransformLookup();
/// <summary>
/// Sets the lookup key name of a shared matrix transform that will be used as the transform for this brush.The shared matrix
@ -3658,7 +3658,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-gettransformlookup HRESULT
// GetTransformLookup( LPWSTR *key );
[MethodImpl(MethodImplOptions.InternalCall)]
SafeCoTaskMemString GetTransformLookup();
string GetTransformLookup();
/// <summary>Sets the lookup key name of a shared matrix transform in a resource dictionary.</summary>
/// <param name="key">The lookup key name of the matrix transform in the dictionary.</param>
@ -3847,7 +3847,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getclipgeometrylookup
// HRESULT GetClipGeometryLookup( LPWSTR *key );
[MethodImpl(MethodImplOptions.InternalCall)]
SafeCoTaskMemString GetClipGeometryLookup();
string GetClipGeometryLookup();
/// <summary>Sets the lookup key name of a shared clip geometry in a resource dictionary.</summary>
/// <param name="key">
@ -4052,7 +4052,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getopacitymaskbrushlookup
// HRESULT GetOpacityMaskBrushLookup( LPWSTR *key );
[MethodImpl(MethodImplOptions.InternalCall)]
SafeCoTaskMemString GetOpacityMaskBrushLookup();
string GetOpacityMaskBrushLookup();
/// <summary>Sets the lookup key name of a shared opacity mask brush in a resource dictionary.</summary>
/// <param name="key">
@ -4104,7 +4104,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getname HRESULT GetName(
// LPWSTR *name );
[MethodImpl(MethodImplOptions.InternalCall)]
SafeCoTaskMemString GetName();
string GetName();
/// <summary>Sets the <c>Name</c> property of the visual.</summary>
/// <param name="name">The name of the visual. A <c>NULL</c> pointer clears the <c>Name</c> property.</param>
@ -4199,7 +4199,7 @@ namespace Vanara.PInvoke
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisual-getlanguage HRESULT
// GetLanguage( LPWSTR *language );
[MethodImpl(MethodImplOptions.InternalCall)]
SafeCoTaskMemString GetLanguage();
string GetLanguage();
/// <summary>Sets the <c>Language</c> property of the visual.</summary>
/// <param name="language">
@ -4415,7 +4415,7 @@ namespace Vanara.PInvoke
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomtilebrush-gettransformlookup
// HRESULT GetTransformLookup( LPWSTR *key );
new SafeCoTaskMemString GetTransformLookup();
new string GetTransformLookup();
/// <summary>
/// Sets the lookup key name of a shared matrix transform that will be used as the transform for this brush.The shared matrix
@ -4705,7 +4705,7 @@ namespace Vanara.PInvoke
/// </returns>
// https://docs.microsoft.com/en-us/windows/win32/api/xpsobjectmodel/nf-xpsobjectmodel-ixpsomvisualbrush-getvisuallookup HRESULT
// GetVisualLookup( LPWSTR *lookup );
SafeCoTaskMemString GetVisualLookup();
string GetVisualLookup();
/// <summary>
/// Sets the lookup key name of the shared visual, which is stored in a resource dictionary, to be used as the source for the brush.

View File

@ -328,7 +328,7 @@ namespace Vanara.PInvoke
/// <summary>Retrieves the text currently entered in the dialog's File name edit box.</summary>
/// <returns>The address of a pointer to a buffer that, when this method returns successfully, receives the text.</returns>
SafeCoTaskMemString GetFileName();
string GetFileName();
/// <summary>Sets the title of the dialog.</summary>
/// <param name="pszTitle">A pointer to a buffer that contains the title text.</param>
@ -469,7 +469,7 @@ namespace Vanara.PInvoke
/// <summary>Retrieves the text currently entered in the dialog's File name edit box.</summary>
/// <returns>The address of a pointer to a buffer that, when this method returns successfully, receives the text.</returns>
new SafeCoTaskMemString GetFileName();
new string GetFileName();
/// <summary>Sets the title of the dialog.</summary>
/// <param name="pszTitle">A pointer to a buffer that contains the title text.</param>
@ -904,7 +904,7 @@ namespace Vanara.PInvoke
/// <summary>Retrieves the text currently entered in the dialog's File name edit box.</summary>
/// <returns>The address of a pointer to a buffer that, when this method returns successfully, receives the text.</returns>
new SafeCoTaskMemString GetFileName();
new string GetFileName();
/// <summary>Sets the title of the dialog.</summary>
/// <param name="pszTitle">A pointer to a buffer that contains the title text.</param>
@ -1277,7 +1277,7 @@ namespace Vanara.PInvoke
/// <summary>Retrieves the text currently entered in the dialog's File name edit box.</summary>
/// <returns>The address of a pointer to a buffer that, when this method returns successfully, receives the text.</returns>
new SafeCoTaskMemString GetFileName();
new string GetFileName();
/// <summary>Sets the title of the dialog.</summary>
/// <param name="pszTitle">A pointer to a buffer that contains the title text.</param>

View File

@ -1585,7 +1585,7 @@ namespace Vanara.PInvoke
/// When this method returns, contains the address of a pointer to a null-terminated buffer that contains the path. The calling
/// application is responsible for calling CoTaskMemFree to free this resource when it is no longer needed.
/// </returns>
SafeCoTaskMemString GetPath([In] KNOWN_FOLDER_FLAG dwFlags);
string GetPath([In] KNOWN_FOLDER_FLAG dwFlags);
/// <summary>Assigns a new path to a known folder.</summary>
/// <param name="dwFlags">Either zero or the following value: KF_FLAG_DONT_UNEXPAND</param>
@ -1757,7 +1757,7 @@ namespace Vanara.PInvoke
/// When this method returns, contains the address of a pointer to a null-terminated Unicode string that contains an error
/// message if one was generated. This value can be NULL.
/// </returns>
SafeCoTaskMemString Redirect(in Guid rfid, [In, Optional] HWND hwnd, [In] KF_REDIRECT_FLAGS flags,
string Redirect(in Guid rfid, [In, Optional] HWND hwnd, [In] KF_REDIRECT_FLAGS flags,
[In, Optional, MarshalAs(UnmanagedType.LPWStr)] string pszTargetPath, [In] uint cFolders, [In] Guid[] pExclusion);
}

View File

@ -465,7 +465,7 @@ namespace Vanara.PInvoke
/// <returns>
/// A value that, when this function returns successfully, receives the address of a pointer to the retrieved display name.
/// </returns>
SafeCoTaskMemString GetDisplayName(SIGDN sigdnName);
string GetDisplayName(SIGDN sigdnName);
/// <summary>Gets a requested set of attributes of the IShellItem object.</summary>
/// <param name="sfgaoMask">
@ -521,7 +521,7 @@ namespace Vanara.PInvoke
/// <returns>
/// A value that, when this function returns successfully, receives the address of a pointer to the retrieved display name.
/// </returns>
new SafeCoTaskMemString GetDisplayName(SIGDN sigdnName);
new string GetDisplayName(SIGDN sigdnName);
/// <summary>Gets a requested set of attributes of the IShellItem object.</summary>
/// <param name="sfgaoMask">
@ -624,7 +624,7 @@ namespace Vanara.PInvoke
/// <summary>Gets the string value of a specified property key.</summary>
/// <param name="key">A reference to a PROPERTYKEY structure.</param>
/// <returns>A pointer to a Unicode string value.</returns>
SafeCoTaskMemString GetString(in PROPERTYKEY key);
string GetString(in PROPERTYKEY key);
/// <summary>Gets the UInt32 value of specified property key.</summary>
/// <param name="key">A reference to a PROPERTYKEY structure.</param>

View File

@ -170,7 +170,7 @@ namespace Vanara.PInvoke
/// A null-terminated Unicode string that describes the location of the default icon. The string is returned as
/// ModuleFileName,ResourceIndex or ModuleFileName,-ResourceID.
/// </returns>
SafeCoTaskMemString GetIcon();
string GetIcon();
/// <summary>Sets the default icon for the library.</summary>
/// <param name="icon">

View File

@ -385,7 +385,7 @@ namespace Vanara.PInvoke
/// A pointer to a null-terminated string that contains the retrieved trigger description. Note that this string must be release
/// by a call to CoTaskMemFree after the string is no longer needed.
/// </returns>
SafeCoTaskMemString GetTriggerString([In] ushort iTrigger);
string GetTriggerString([In] ushort iTrigger);
/// <summary>Retrieves the work item run times for a specified time period.</summary>
/// <param name="pstBegin">
@ -466,7 +466,7 @@ namespace Vanara.PInvoke
/// <summary>Retrieves the comment for the work item.</summary>
/// <returns>A pointer to a null-terminated string that contains the retrieved comment for the current work item.</returns>
SafeCoTaskMemString GetComment();
string GetComment();
/// <summary>Sets the name of the work item's creator.</summary>
/// <param name="Creator">A null-terminated string that contains the name of the work item's creator.</param>
@ -477,7 +477,7 @@ namespace Vanara.PInvoke
/// A pointer to a null-terminated string that contains the name of the creator of the current work item. The application that
/// invokes GetCreator is responsible for freeing this string using the CoTaskMemFree function.
/// </returns>
SafeCoTaskMemString GetCreator();
string GetCreator();
/// <summary>This method stores application-defined data associated with the work item.</summary>
/// <param name="cBytes">The number of bytes in the data buffer. The caller allocates and frees this memory.</param>
@ -554,7 +554,7 @@ namespace Vanara.PInvoke
/// A pointer to a null-terminated string that contains the account name for the current work item. The empty string, L"", is
/// returned for the local system account. After processing the account name, be sure to call CoTaskMemFree to free the string.
/// </returns>
SafeCoTaskMemString GetAccountInformation();
string GetAccountInformation();
/// <summary>This method assigns a specific application to the current task.</summary>
/// <param name="pwszApplicationName">
@ -568,7 +568,7 @@ namespace Vanara.PInvoke
/// A pointer to a null-terminated string that contains the name of the application the current task is associated with. After
/// processing this name, call CoTaskMemFree to free resources.
/// </returns>
SafeCoTaskMemString GetApplicationName();
string GetApplicationName();
/// <summary>This method sets the command-line parameters for the task.</summary>
/// <param name="pwszParameters">
@ -582,7 +582,7 @@ namespace Vanara.PInvoke
/// A pointer to a null-terminated string that contains the command-line parameters for the task. The method that invokes
/// GetParameters is responsible for freeing this string using the CoTaskMemFree function.
/// </returns>
SafeCoTaskMemString GetParameters();
string GetParameters();
/// <summary>This method sets the working directory for the task.</summary>
/// <param name="pwszWorkingDirectory">
@ -600,7 +600,7 @@ namespace Vanara.PInvoke
/// A pointer to a null-terminated string that contains the task's working directory. The application that invokes
/// GetWorkingDirectory is responsible for freeing this string using the CoTaskMemFree function.
/// </returns>
SafeCoTaskMemString GetWorkingDirectory();
string GetWorkingDirectory();
/// <summary>This method sets the priority for the task.</summary>
/// <param name="dwPriority">
@ -694,7 +694,7 @@ namespace Vanara.PInvoke
/// A pointer to a null-terminated string that contains the name of the target computer for the current task. This string is
/// allocated by the application that invokes GetTargetComputer, and must also be freed using CoTaskMemFree.
/// </returns>
SafeCoTaskMemString GetTargetComputer();
string GetTargetComputer();
/// <summary>
/// The Enum method retrieves a pointer to an OLE enumerator object that enumerates the tasks in the current task folder.
@ -783,7 +783,7 @@ namespace Vanara.PInvoke
/// A pointer to a pointer to a null-terminated string that describes the current task trigger. The method that invokes
/// GetTriggerString is responsible for freeing this string using the CoTaskMemFree function.
/// </returns>
SafeCoTaskMemString GetTriggerString();
string GetTriggerString();
/// <summary>The SetTrigger method sets the trigger criteria for a task trigger.</summary>
/// <param name="Trigger">A pointer to a TASK_TRIGGER structure that contains the values that define the new task trigger.</param>

View File

@ -2736,7 +2736,7 @@ namespace Vanara.PInvoke
[DllImport(Lib.UrlMon, SetLastError = false, ExactSpelling = true)]
[PInvokeData("Urlmon.h")]
public static extern HRESULT FindMimeFromData([In] IBindCtx pBC, [MarshalAs(UnmanagedType.LPWStr)] string pwzUrl, IntPtr pBuffer, uint cbSize,
[MarshalAs(UnmanagedType.LPWStr)] string pwzMimeProposed, FMFD dwMimeFlags, out SafeCoTaskMemString ppwzMimeOut, uint dwReserved = 0);
[MarshalAs(UnmanagedType.LPWStr)] string pwzMimeProposed, FMFD dwMimeFlags, out string ppwzMimeOut, uint dwReserved = 0);
/// <summary>Gets the <c>CLSID</c> of the object to instantiate for the specified file.</summary>
/// <param name="pBC">

View File

@ -575,7 +575,7 @@ namespace Vanara.PInvoke
// GetAppContainerFolderPath( PCWSTR pszAppContainerSid, PWSTR *ppszPath );
[DllImport(Lib.Userenv, SetLastError = false, ExactSpelling = true)]
[PInvokeData("userenv.h", MSDNShortId = "7D3AB78D-C094-4F89-8032-13F3C137E910")]
public static extern HRESULT GetAppContainerFolderPath([MarshalAs(UnmanagedType.LPWStr)] string pszAppContainerSid, out SafeCoTaskMemString ppszPath);
public static extern HRESULT GetAppContainerFolderPath([MarshalAs(UnmanagedType.LPWStr)] string pszAppContainerSid, out string ppszPath);
/// <summary>Gets the location of the registry storage associated with an app container.</summary>
/// <param name="desiredAccess">

View File

@ -28,9 +28,8 @@ namespace Vanara.PInvoke.Tests
sid2.Dispose();
Assert.That(GetAppContainerFolderPath(ssid, out var path), ResultIs.Successful);
Assert.That(path.ToString().Length, Is.GreaterThan(0));
TestContext.WriteLine(path.ToString());
path.Dispose();
Assert.That(path.Length, Is.GreaterThan(0));
TestContext.WriteLine(path);
}
finally

View File

@ -1005,20 +1005,20 @@ namespace Vanara.Windows.Shell
/// A value that, when this function returns successfully, receives the address of a pointer to the retrieved display name.
/// </returns>
/// <exception cref="ArgumentException"></exception>
public SafeCoTaskMemString GetDisplayName(SIGDN sigdnName)
public string GetDisplayName(SIGDN sigdnName)
{
if (sigdnName == SIGDN.SIGDN_FILESYSPATH)
{
var result = new StringBuilder(512);
if (!SHGetPathFromIDList(PIDL, result))
throw new ArgumentException();
return new SafeCoTaskMemString(result.ToString(), CharSet.Unicode);
return result.ToString();
}
var parentFolder = InternalGetParent().GetIShellFolder();
var child = PIDL.LastId;
parentFolder.GetDisplayNameOf(child, (SHGDNF)((int)sigdnName & 0xffff), out var name);
return new SafeCoTaskMemString(name, CharSet.Unicode);
return name;
}
/// <summary>Gets the parent of an IShellItem object.</summary>