If verzweigung treibt mich in den Wahnsinn

  • Hallo Gemeinde,

    mit der nachfolgenden Funktion versuche ich auszulesen ob ein WWAN-Modul verbaut ist oder nicht:


    Kann mir jemand den Fehler aufzeigen warum Die If-Verzweigung immer "WWAN No" zurückgibt obwohl ein WWAN-Modul verbeut ist. Debug von $objItem.InterfaceType ergibt 243

  • FEHLER GEFUNDEN:

    Die Abfrage geht durch alle im Namespace aufgeführten Netzwerkadapter durch und der letzte Adapter ist eben KEIN WWAN-Modul.
    Daher ergibt die If in letzter iteration immer false = else = "WWAN No"

    :rolleyes::rolleyes::rolleyes::rolleyes::rolleyes::rolleyes::rolleyes::rolleyes::rolleyes::rolleyes::rolleyes::rolleyes::rolleyes:

    Lösung(Exitloop):

    Code
    If $objItem.InterfaceType = 243 Then ; InterfaceType 243 ist für WWAN-Adapter
    				
    				Local $s_OutputWWAN = "WWAN Yes"
    				Exitloop
    			Else
    
    				Local $s_OutputWWAN = "WWAN No"
    
    			EndIf
  • Wenn du eh nur wissen willst, ob ein WWAN adapter vorhanden willst, würde ich es als Funktion mit Bool-Rückgabe implementieren. Macht das ganze kleiner und übersichtlicher.
    Du kannst dabei auch stattdessen das erste gefundene WWAN adapter zurückgeben und damit weiterarbeiten.

  • Hi,

    eben gerade bei Hackaday drübergestolpert....https://hackaday.com/2024/08/07/com…-if-statements/

    Und hier treibt eine einzige IF-Verzweigung in den Wahnsinn:D