Re: Using WZCEnumInterfaces using interop in C#



Now I have made the following changes to the initial declarations in
my function. But I am still getting the same error.

INTFS_KEY_TABLE IntfsTable = new INTFS_KEY_TABLE();
INTF_KEY_ENTRY IntfsEntry = new INTF_KEY_ENTRY();

IntfsEntry.wszGuid = string.Empty;

IntfsTable.dwNumIntfs = 0;
IntfsTable.pIntfs =
Marshal.AllocHGlobal(Marshal.SizeOf(IntfsEntry));
Marshal.StructureToPtr(IntfsEntry, IntfsTable.pIntfs,
false);


On 13 Jun, 19:30, Abhi <rka...@xxxxxxxxx> wrote:
Hi,

I am trying to use the native WinCE API WZCEnumInterfaces using
interop in C# .NET compact framework. I have to develop this without
the OpenNetCF wrapper. But whenever I call the function, I get the
exception "System.NotSupportedException". I looked at the help page
for this exception and I think I have taken care of all the possible
causes for the exception. Could anyone please let me know anything
that I could be doing wrong. Please find my code below:

[StructLayout(LayoutKind.Sequential)]
struct INTF_KEY_ENTRY
{
[MarshalAs(UnmanagedType.LPWStr)]
public string wszGuid;
}

[StructLayout(LayoutKind.Sequential)]
struct INTFS_KEY_TABLE
{
public uint dwNumIntfs;

public IntPtr pIntfs; //This is a pointer to
INTF_KEY_ENTRY in the native c++
}

[DllImport("wzcsapi.dll", SetLastError = true)]
private static extern ulong WZCEnumInterfaces(string pSrvAddr,
ref INTFS_KEY_TABLE pIntfs);

/// <summary>
/// find the first wireless network cards
/// </summary>
public void GetFirstWirelessNetworkCard()
{
INTFS_KEY_TABLE IntfsTable = new
INTFS_KEY_TABLE();
IntfsTable.dwNumIntfs = 0;

IntfsTable.pIntfs =
Marshal.AllocHGlobal(Marshal.SizeOf(typeof(IntPtr)) *
(int)IntfsTable.dwNumIntfs);

ulong dwStatus = 0;

try
{
dwStatus = WZCEnumInterfaces(null , ref IntfsTable);
}
catch(Exception e)
{
int errorNum = Marshal.GetLastWin32Error();

MessageBox.Show(e.Message + " Error: " + errorNum,
"Fatal Error!");
return;
}
}

.



Relevant Pages

  • Re: Using WZCEnumInterfaces using interop in C#
    ... exception "System.NotSupportedException". ... private static extern ulong WZCEnumInterfaces(string pSrvAddr, ... dwStatus = WZCEnumInterfaces(null, ref IntfsTable); ...
    (microsoft.public.dotnet.framework.compactframework)
  • Using WZCEnumInterfaces using interop in C#
    ... exception "System.NotSupportedException". ... private static extern ulong WZCEnumInterfaces(string pSrvAddr, ... dwStatus = WZCEnumInterfaces(null, ref IntfsTable); ...
    (microsoft.public.dotnet.framework.compactframework)
  • Re: Autovivification by foreach
    ... FS> Can't use an undefined value as an ARRAY reference ... there is no exception anymore. ... undef and used where a ref should be. ... it seems to me that autovivification in this context is useful. ...
    (comp.lang.perl.misc)
  • RE: Insert Excel Chart into Word document fails intermittently
    ... Once I isolated the problem code, ... The server threw an exception. ... ref oClassType, ...
    (microsoft.public.word.drawing.graphics)
  • Re: Trap Request Timed Out (80004005)
    ... This is not a .NET Framework exception, that's why it cannot be caught by the error handling code in the Global.asax file. ... It has a REF ... > .NET Software Developer ...
    (microsoft.public.dotnet.framework)

Loading