Jump to content

Help with If/Then


Go to solution Solved by BrewManNH,

Recommended Posts

Hello all,

I'm writing a script that will perform various tasks based on the model number of the machine on which it is run.  I am dealing with three different models CF-53AU, CF-53AS, and CF-53SU.  The script works for the AU and AS models (they run only the part they need to run) but the SU runs the AS/AU part of the script in addition to what it should run.  They are all reading the model number correctly.  Anyone see what I am doing wrong?

#include <FileConstants.au3>

$wbemFlagReturnImmediately = 0x10
$wbemFlagForwardOnly = 0x20
$colItems = ""
$strComputer = "localhost"

$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystem", "WQL", _
                                          $wbemFlagReturnImmediately + $wbemFlagForwardOnly)

For $objItem In $colItems

$model = $objItem.Model

Next


$first7char = StringMid ($model, 1, 7)
$CF53SU = "CF-53SU"
$CF53AS = "CF-53AS"
$CF53AU = "CF-53AU"


Func _CF53AU_AS()
    SplashTextOn ("Please Wait", "I'm a CF-53AU or CF-53AS", 300, 200, 1, 1, "", 9, 20)
    Sleep (5000)
    SplashOff()
EndFunc

Func _CF53SU()
    SplashTextOn ("Please Wait", "I'm a CF-53SU", 300, 200, 1, 1, "", 9, 20)
    Sleep (5000)
    SplashOff()
EndFunc

If $first7char = $CF53AU Or $CF53AS Then _CF53AU_AS()
If $first7char = $CF53SU Then _CF53SU()
Link to comment
Share on other sites

  • Solution

This:

If $first7char = $CF53AU Or $CF53AS Then _CF53AU_AS()

Needs to be like this:

If $first7char = $CF53AU Or $first7char = $CF53AS Then _CF53AU_AS()

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Link to comment
Share on other sites

If $first7char = $CF53AU Or $first7char = $CF53AS Then 
    _CF53AU_AS()
ElseIf $first7char = $CF53SU Then
    _CF53SU()
endif

The second comparison in the or has nothing to compare $CF53AS against. Correct me if im wrong autoit gurus. I always fully qualify my second condition. Try that.

Edit: By seconds lol Gj BreManNH

Edited by tanahara
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...