Tilsluning til wireless lan ssid "pocket pc"
Hej Alle,Jeg vil gerne lave et lille program, som kan tilslutte mit trådsløse netkort til et netwærk SSID.
Jeg ved hvordan man scanner efter de forskellige netwærk. Sådan her:
uint dwBytesReturned = 0;
IntPtr ndisAccess;
bool retval;
string SSID = "Pocket T1";
// Attach to NDISUIO.
ndisAccess = FileEx.CreateFile(
NDISUIOPInvokes.NDISUIO_DEVICE_NAME,
FileAccess.All,
FileShare.None,
FileCreateDisposition.OpenExisting,
NDISUIOPInvokes.FILE_ATTRIBUTE_NORMAL | NDISUIOPInvokes.FILE_FLAG_OVERLAPPED );
if ( (int)ndisAccess == FileEx.InvalidHandle )
return;
// Pin unsafely-accessed items in memory.
byte[] namestr = System.Text.Encoding.Unicode.GetBytes("TIACXWLN1"+'\0');
fixed (byte *name = &namestr[ 0 ])
{
queryOID = new NDISUIO_QUERY_OID( 36 );
queryOID.ptcDeviceName = name;
queryOID.Oid = NDISUIOPInvokes.OID_802_11_SSID; // 0x0D010102
retval = NDISUIOPInvokes.DeviceIoControl( ndisAccess,
NDISUIOPInvokes.IOCTL_NDISUIO_QUERY_OID_VALUE, // 0x00120804
queryOID,
queryOID.Size,
queryOID,
queryOID.Size,
ref dwBytesReturned,
IntPtr.Zero);
if ( retval )
{
// Convert the data to a string.
byte[] ssdata = queryOID.Data;
int len = BitConverter.ToInt32( ssdata, 0 );
if ( len > 0 )
{
// Convert the string from ASCII to
// Unicode.
string ssid1 = System.Text.Encoding.ASCII.GetString( ssdata, 4, len );
ssid1 = ssid1;
}
}
// else, there is an error; return 0.
FileEx.CloseHandle( ndisAccess );
}
---------------------------------
Man må skulle bruge IOCTL_NDISUIO_SET_OID_VALUE istedet, men er ikke sikker.
Nogle foreslag
