我有了一个真正难得的时机,使这场争.倒。
我管理着这样的法典:
WORD HLP_GetDeviceNames (LPSTR *DevNames, WORD Max_Len, WORD Max_Num)
Just FYI 我没有撰写这一未经管理的法典,但必须使用。
回归:显示错误的WORD。
DevNames: Pointer to a range of char ranges. 从本质上讲,将修改并送回我的一系列扼杀。
Max_Len: Length of eachstring (我被告知这必须是256)
Max_Num: Length of range. 我正在使用另一个Invoke呼吁,该呼吁告诉我有多少装置,从而确切地知道要派出多少个护卫。
我已经利用P/Invoke互换签名Toolkit来标出这一位置,但还是读到一个炉子,以进一步推进。 我现在在这里:
[DllImport("UsbMeasLib.dll")]
public static extern ushort HLP_GetDeviceNames([MarshalAs(UnmanagedType.LPArray, ArraySubType=UnmanagedType.LPStr)] ref StringBuilder[] DevNames, ushort Max_Len, ushort Max_Num);
我这样说:
StringBuilder[] DevNames = new StringBuilder[deviceCount];
for(int i = 0; i< deviceCount; i++)
{
DevNames[i] = new StringBuilder().Append( , 256);
}
HachUsbMeasLib.HLP_GetDeviceNames(ref DevNames, 256, Convert.ToUInt16(DevNames.Count()));
我正在使用加强建筑阵列,因为我需要未经管理的法典来修改护卫建筑,以便它能够恢复新的护卫,因为扼杀是不可调和的。
当我管理该守则时,我的阵列没有改变!
我并不真正肯定正在发生什么,但我认为,与《南极海生委》相比,它有一些东西可以说,《刑法》没有得到管理,不能修改我现有的阵列,而是产生新的参考(点)。 即使情况如此,我也知道如何加以确定。
感谢任何人提供的任何见解!