Domanda

Sto creando un programma che sarà in grado di connettersi automaticamente a una rete wireless. Per fare questo, sto usando una libreria chiamata ManagedWifi, che usa la libreria "Wlanapi.dll". Quando cerco di utilizzare il codice in Windows Vista, tutto va bene, ma quando lo uso su Windows XP non riesce. Ho controllato che ha installato il Service Pack 3, e "Wlanapi.dll" si trova in Windows / system32. Il problema è quando ManagedWifi chiama questo metodo:

[DllImport("wlanapi.dll")]
    public static extern int WlanConnect(
        [In] IntPtr clientHandle,
        [In, MarshalAs(UnmanagedType.LPStruct)] Guid interfaceGuid,
        [In] ref WlanConnectionParameters connectionParameters,
        IntPtr pReserved);

Si genera un errore System.ComponentModel.Win32Exception: Elemento non trovato . Ma, se la libreria si trova correttamente in system32, perché lo fa gettare questo errore? E perché solo in Windows XP e non in Vista?

Grazie mille a tutti

Modifica Ho controllato boith versioni dei file, Vista e XP, e ho visto che sono diversi (XP: 5.1, Vista 6,0), ma ho copiato la versione di Vista a XP e ho hanno ancora lo stesso problema

È stato utile?

Soluzione

Risolto

Il problema è che Windows XP, quando la rete è una rete ad-hoc, aggiunge il Sufix "-adhoc" al nome. Quando stavo cercando di connettersi ad esso, non ha trovato la rete "xxx"

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top