Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在Un4Seen Bass.Net中设置web代理_C#_.net_Bass - Fatal编程技术网

C# 在Un4Seen Bass.Net中设置web代理

C# 在Un4Seen Bass.Net中设置web代理,c#,.net,bass,C#,.net,Bass,我正在编写一个流媒体播放器,它将Bass.Net包装器用于Un4Seen的Bass本机音频API。我希望媒体播放器支持web代理,这对我来说很容易在内置的.NET webclient库中设置,但我找不到有关如何在Bass.NET中设置代理的文档 你知道怎么做吗 public IntPtr _myProxyPtr; ... // create an unmanaged pointer containing a copy of the string _myUserAgentPtr = Marshal

我正在编写一个流媒体播放器,它将Bass.Net包装器用于Un4Seen的Bass本机音频API。我希望媒体播放器支持web代理,这对我来说很容易在内置的.NET webclient库中设置,但我找不到有关如何在Bass.NET中设置代理的文档

你知道怎么做吗

public IntPtr _myProxyPtr;
...
// create an unmanaged pointer containing a copy of the string
_myUserAgentPtr = Marshal.StringToHGlobalAnsi("user:pass@server:port");
Bass.BASS_SetConfigPtr(BASSConfig.BASS_CONFIG_NET_PROXY, _myProxyPtr);
...
// make sure to free the myUserAgentPtr!!!  
// e.g. when you dispose your class or application
Marshal.FreeHGlobal(_myProxyPtr);
BASS\u CONFIG\u NET\u代理服务器设置。newvalue(IntPtr):用户代理头。 代理服务器设置,以“用户:pass@server:端口“。。。null=不使用代理。“”(空字符串)=使用默认代理设置。如果只指定了“user:pass@”部分,则这些授权凭据将与默认代理服务器一起使用。如果只指定了“服务器:端口”部分,则在没有任何授权凭据的情况下使用该代理服务器

BASS不复制代理字符串,因此它必须位于堆(而不是堆栈)中,例如一个全局变量-请参见下面的示例!这也意味着随后可以在该位置更改代理设置,而无需再次调用此函数

更改从下一个internet流创建调用开始生效。默认情况下,BASS将使用“Internet属性”控制面板中设置的Windows代理设置

从这里开始: