Hi,
ich habe folgendes in der MSDN gefunden: http://msdn.microsoft.com/en-us/library/…v=VS.85%29.aspx
Wie kann ich das nun in Autoit nutzen?
Hi,
ich habe folgendes in der MSDN gefunden: http://msdn.microsoft.com/en-us/library/…v=VS.85%29.aspx
Wie kann ich das nun in Autoit nutzen?
vermutlich mit h2au3.au3/exe das Ist ein Konvertierungsscript welches mit dem Namen "h2au3" hier im Forum zu finden ist.
Oder inbem du das mit den Infos unter "DLLStrucrCreate" in das AutoIt-Äquivalent übersetzt.
Also bei dem h2au3 bekomme ich nur das raus. Bringt mir aber so ja nichts:
; --- $WLAN_AVAILABLE_NETWORK
Global Const $WLAN_AVAILABLE_NETWORK = _
"DOT11_SSID dot11Ssid;"& _
"DOT11_BSS_TYPE dot11BssType;"& _
"ULONG uNumberOfBssids;"& _
"BOOL bNetworkConnectable;"& _
"WLAN_REASON_CODE wlanNotConnectableReason;"& _
"ULONG uNumberOfPhyTypes;"& _
"BOOL bMorePhyTypes;"& _
"WLAN_SIGNAL_QUALITY wlanSignalQuality;"& _
"BOOL bSecurityEnabled;"& _
"DOT11_AUTH_ALGORITHM dot11DefaultAuthAlgorithm;"& _
"DOT11_CIPHER_ALGORITHM dot11DefaultCipherAlgorithm;"& _
"DWORD dwFlags;"& _
"DWORD dwReserved;"
Alles anzeigen
Hi chip,
[autoit]; --- $WLAN_AVAILABLE_NETWORK
Global Const $WLAN_AVAILABLE_NETWORK = _
"DOT11_SSID dot11Ssid;" & _
"DOT11_BSS_TYPE dot11BssType;" & _
"ULONG uNumberOfBssids;" & _
"BOOL bNetworkConnectable;" & _
"WLAN_REASON_CODE wlanNotConnectableReason;" & _
"ULONG uNumberOfPhyTypes;" & _
"BOOL bMorePhyTypes;" & _
"WLAN_SIGNAL_QUALITY wlanSignalQuality;" & _
"BOOL bSecurityEnabled;" & _
"DOT11_AUTH_ALGORITHM dot11DefaultAuthAlgorithm;" & _
"DOT11_CIPHER_ALGORITHM dot11DefaultCipherAlgorithm;" & _
"DWORD dwFlags;" & _
"DWORD dwReserved;"
$tWLAN_AVAILABLE_NETWORK = DllStructCreate($WLAN_AVAILABLE_NETWORK)
$tWLAN_AVAILABLE_NETWORK ist jetzt die Fertige Struct. Mit DllStructGetPtr kannst du einen Pointer zu der Struct ermitteln und ihn in DLL calls verwenden.
€dit: Da fehlen noch haufenweise unterstrukturen. Hab ich übersehen . Wie macht man sowas überhaubt ? Noch anderer Structs erstellen und dann die Pointer reinschreiben ?
@Sprenger: Nein, das ist nicht fertig. Da gibt es die Unterstrukturen, die noch implementiert werden müssen.
Edit: So ungefähr sollte es klappen:
; ProgAndy
Func _SubStruct_GetSize($tagSUBSTRUCT)
Return DllStructGetSize(DllStructCreate($tagSUBSTRUCT, 1))
EndFunc
; ProgAndy
Func _SubStruct_Get(ByRef $tSTRUCT, $vElement, Const $tagSUBSTRUCT)
Local $pTarget = DllStructGetPtr($tSTRUCT, $vElement)
If @error Or $pTarget = 0 Then Return SetError(1,0,0)
Local $tSUBSTRUCT = DllStructCreate($tagSUBSTRUCT, $pTarget)
If @error Then Return SetError(2,@error, 0)
Return $tSUBSTRUCT
EndFunc
; ProgAndy
Func _SubStruct_Declaration($tagSUBSTRUCT, $sName="")
If $sName = "" Then Return "byte[" & _SubStruct_GetSize($tagSUBSTRUCT) & "];"
Return "byte " & $sName & "[" & _SubStruct_GetSize($tagSUBSTRUCT) & "];"
EndFunc
Global Const $DOT11_SSID_MAX_LENGTH = 32
Global Const $WLAN_MAX_PHY_TYPE_NUMBER = 8
Global Const $tagDOT11_SSID = "ULONG uSSIDLength; BYTE ucSSID[" & $DOT11_SSID_MAX_LENGTH & "];"
; --- $WLAN_AVAILABLE_NETWORK
Global Const $tagWLAN_AVAILABLE_NETWORK = _
_SubStruct_Declaration($tagDOT11_SSID, "dot11Ssid") & _ ;DOT11_SSID
"int dot11BssType;" & _ ; DOT11_BSS_TYPE is enum
"ULONG uNumberOfBssids;" & _
"BOOL bNetworkConnectable;" & _
"dword wlanNotConnectableReason;" & _ ; WLAN_REASON_CODE
"ULONG uNumberOfPhyTypes[" & $WLAN_MAX_PHY_TYPE_NUMBER & "];" & _
"BOOL bMorePhyTypes;" & _
"ULONG wlanSignalQuality;" & _ ; WLAN_SIGNAL_QUALITY
"BOOL bSecurityEnabled;" & _
"int dot11DefaultAuthAlgorithm;" & _ ; DOT11_AUTH_ALGORITHM
"int dot11DefaultCipherAlgorithm;" & _ ; DOT11_CIPHER_ALGORITHM
"DWORD dwFlags;" & _
"DWORD dwReserved;"
$tWLAN_AVAILABLE_NETWORK = DllStructCreate($tagWLAN_AVAILABLE_NETWORK)
$tWLAN_AVAILABLE_NETWORK__DOT11_SSID = _SubStruct_Get($tWLAN_AVAILABLE_NETWORK, "dot11Ssid", $tagDOT11_SSID)