I need to have a script that looks at a specific line in a ini file and depending on that line set the default printer. I have the scripting for setting the printer figured out but cant come up with the If statements. The Set default printer script should follow this rule
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile("c:\CPSI\cptermw.ini", ForReading)
Do Until objTextfile.At EndOfStream
strNextLine = objTextFile.Readline
intLineFinder = Instr(strNextLine, "TTYREAL")
If intLineFinder = 991 Then
Set WSHNetwork = CreateObject ("WScript.Network")
WSHNetwork.SetDefaultPrinter "Specialty_Clinic_Check-In 1"
If intLineFinder =992 Then
Set WSHNetwork = CreateObject ("WScript.Network")
WSHNetwork.SetDefaultPrinter "Specialty_Clinic_Check-In_2"
If intLineFinder = 993 then
Set WSHNetwork = CreateObject ("WScript.Network")
WSHNetwork.SetDefaultPrinter "Specialty_Clinic_Check-In 1"
Programming
Last Comment
TFHDIT
8/22/2022 - Mon
remmett70
Instead of an If statement. You could use a Select Case statement
Select Case intLineFinder
Case "991" WSHNetwork.SetDefaultPrinter "Specialty_Clinic_Check-In 1"
Case "992" WSHNetwork.SetDefaultPrinter "Specialty_Clinic_Check-In_2"
Case "993" WSHNetwork.SetDefaultPrinter "Specialty_Clinic_Check-In 1"
End Select
rcolving
ASKER
I'll give that a try will I still need -
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile("c:\CPSI\cptermw.ini", ForReading)
Do Until objTextfile.At EndOfStream
strNextLine = objTextFile.Readline
rcolving
ASKER
Ok not working, shoot! I'm a real novice a vb scripting so need a little guidance! There is a line in the ini file, filename is cpermw.ini, that I have to use to set the default printer. The area in the ini file looks like the text below -
[TTY Configuration]
TTYREAL=
This value can be 991, 992, or 993. I'm trying to get my script to look at the TTYREAL value and want to set the default printer accordingly. I like the idea of the Select case but can't get the script right to look at or find that line in the ini file located at c:\CPSI\cptermw.ini. Any help would be appreciated.
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile("c:\CPSI\cptermw.ini")
Do Until objTextFile.AtEndOfStream
strLine = objTextFile.Readline
Select Case strLine
Case "TTYREAL=991" WSHNetwork.SetDefaultPrinter "Specialty_Clinic_Check-In 1"
Case "TTYREAL=992" WSHNetwork.SetDefaultPrinter "Specialty_Clinic_Check-In_2"
Case "TTYREAL=993" WSHNetwork.SetDefaultPrinter "Specialty_Clinic_Check-In 1"
End Select
Loop
objTextFile.Close
rcolving
ASKER
I get the following Error
Line: 6
Char: 4
Error: Expected 'While', 'Until' or end of statement
Code: 800A0404
Source: Microsoft VBScript compilation err
remmett70
Did you copy and Paste or type this into your script manually? That error is acting like there is a mistype in the Do line.
Set WSHNetwork = CreateObject ("WScript.Network")
intLineFinder = intLineFinder = Instr(strNextLine, "TTYREAL")
Select Case intLineFinder
Case "991" WSHNetwork.SetDefaultPrint
Case "992" WSHNetwork.SetDefaultPrint
Case "993" WSHNetwork.SetDefaultPrint
End Select