WTSVirtualChannelOpenEx (wtsapi32)
Last changed: jisopo@mail.ru-87.245.155.195

.

reference link: https://docs.microsoft.com/ru-ru/windows/win32/api/wtsapi32/nf-wtsapi32-wtsvirtualchannelopenex

C# Signature:

[DllImport("wtsapi32.dll", CharSet = CharSet.Ansi, ExactSpelling = true, SetLastError = true)]
private static extern IntPtr WTSVirtualChannelOpenEx(uint dwSessionID, string pChannelName, int flags);

VB Signature:

Declare Function WTSVirtualChannelOpenEx Lib "wtsapi32.dll" (TODO) As TODO

User-Defined Types:

private uint WTS_CURRENT_SESSION = uint.MaxValue;

private enum WTSVirtualChannelOpenExFlags

{

    WTS_CHANNEL_OPTION_DYNAMIC =         0x00000001,   // dynamic channel
    WTS_CHANNEL_OPTION_DYNAMIC_PRI_LOW =     0x00000000,   // priorities
    WTS_CHANNEL_OPTION_DYNAMIC_PRI_MED =     0x00000002,
    WTS_CHANNEL_OPTION_DYNAMIC_PRI_HIGH =    0x00000004,
    WTS_CHANNEL_OPTION_DYNAMIC_PRI_REAL =    0x00000006,
    WTS_CHANNEL_OPTION_DYNAMIC_NO_COMPRESS = 0x00000008

}

Alternative Managed API:

Do you know one? Please contribute it!

Notes:

None.

Tips & Tricks:

Please add some!

Sample Code:

public static void VirtualChannelOpen(string virtualChannelName, out IntPtr virtualChannelHandle)

{

    virtualChannelHandle = WTSVirtualChannelOpenEx(WTS_CURRENT_SESSION,
                           virtualChannelName,
                           (int)WTSVirtualChannelOpenExFlags.WTS_CHANNEL_OPTION_DYNAMIC);
    if (virtualChannelHandle == IntPtr.Zero)
    {
    // error
    }

}

Documentation