2017-08-25 55 views
0

我得到某些原因未知的错误。
从System :: CreateChannelGroup功能在C#
C#Fmod System :: CreateChannelGroup返回ERR_INVALID_PARAM

private void FmodERRCheck(Fmod.RESULT result){ 
    if (result != RESULT.OK) 
    { 
     MessageBox.Show(Fmod.Error.String(result)); 
    } 
} 

private void InitFmodSystems() 
{ 
    Fmod.Factory.System_Create(out system); 
    system = new Fmod.System(IntPtr.Zero); 
    system.init(3, INITFLAGS.NORMAL, IntPtr.Zero); 

    channelGroup = new ChannelGroup(IntPtr.Zero); 

    FmodERRCheck(system.createChannelGroup("", out channelGroup)); 
} 

变量声明阶级之上。
我写了initFmodSystems()方法来初始化fmod系统。

FmodERRCheck(system.createChannelGroup("", out channelGroup)); 

这一行返回给我'ERR_INVALID_PARAM'错误。
有什么不对?

回答

0

您正在初始化channelGroup变量。 使用out参数时,不能使用初始化变量。

所以它一定是这样的。

ChannelGroup channelgroup; 
FmodERRCheck(system.createChannelGroup("", out channelGroup)); 

在此示例中,channelGroup变量保持未分配状态直到它作为out参数进入函数。

编辑

它可能为名称参数空字符串也不允许。但初始化的参数也是一个问题。