Solved

VBS Script Modification Pt5

Posted on 2012-03-11
10
592 Views
Last Modified: 2012-06-27
Hello Experts,

The following script fails when it gets to the line 'crt.session.log True'. Its being used with an application called SecureCRT and its run on a number of tabs. Basically, the script will work fine on the first tab, but when it gets to another tab I get the error message CRT Scripting Runtime error, and then it says Logging already enabled.

I think its because script doesn't recognise that it should start afresh on a new tab.

I wonder if you could assist?

# $language = "VBScript"
# $interface = "1.0"
' SendToAll.vbs

Sub Main()
   
    if Not crt.Session.Connected then
        szSession = crt.Dialog.Prompt("Enter session:", "", "", False)
        if szSession = "" then exit sub
   
        crt.Session.ConnectInTab("/S " & szSession)
        crt.Session.ConnectInTab("/S " & szSession)
        crt.Session.ConnectInTab("/S " & szSession)
    end if
   
    arrCommands = Array("end", "term len 0")

    ' Send commands to all tabs
    ' Connect to each tab in order from left to right, issue all commands, and
    ' then disconnect...
    For nIndex = 1 to crt.GetTabCount
        Set objCurrentTab = crt.GetTab(nIndex)
        objCurrentTab.Activate
     
           
        If objCurrentTab.Session.Connected = True Then
            crt.Session.Log True
            For Each strCommand In arrCommands
                crt.Sleep 500
                objCurrentTab.Screen.Send strCommand & vbcr
           
                crt.Sleep 1000
            Next
        End If
    Next
End Sub
                                           

Cheers

Carlton
scripterror.jpg
0
Comment
Question by:cpatte7372
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 4
10 Comments
 
LVL 65

Expert Comment

by:RobSampson
ID: 37712462
Not sure, but if logging *is* already started, you might be able to change this:
crt.Session.Log True

to this
If crt.Session.Log = False Then crt.Session.Log True

Rob.
0
 

Author Comment

by:cpatte7372
ID: 37712514
Rob, thanks for responding, going to check it out now...
0
 

Author Comment

by:cpatte7372
ID: 37712524
Rob,

Getting the follow error message...
error3.jpg
0
Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users

 
LVL 65

Accepted Solution

by:
RobSampson earned 500 total points
ID: 37712627
OK, so according to here:
http://forums.vandyke.com/archive/index.php/t-1118.html

it doesn't look like you can check the logging state, but the code there just ignores errors and checks the error code when executing the crt.session.log True line.

Replace this:
            crt.Session.Log True

with something like
On Error Resume Next
Err.Clear
crt.Session.Log True
If Err.Number <> 0 Then
	If Err.Number = -2147155969 Then
		' Logging was already enabled
	Else
		' Some other error occurred while enabling logging
	End If
End If
Err.Clear
On Error GoTo 0

Open in new window

0
 

Author Comment

by:cpatte7372
ID: 37713480
Hi Rob,

Thanks again for responding. I will check it out shortly and let you know.

Cheers

Carlton
0
 

Author Comment

by:cpatte7372
ID: 37713944
Hi Rob,

Unfortunately, the script now only works on the firs tab, or should I say, 'it only works once', but doesn't work on other tabs. However, at least its not crashing this time.

I think we could be nearly there.....
0
 

Author Closing Comment

by:cpatte7372
ID: 37715874
Got it working cheers...
0
 
LVL 65

Expert Comment

by:RobSampson
ID: 37717394
Thanks for the grade.  Would you mind explaining what you did to get it working?

Thanks,

Rob.
0
 

Author Comment

by:cpatte7372
ID: 37717570
Hi Rob,

If it's ok I will show you tomorrow - about to hit the sack.

Cheers
0
 
LVL 65

Expert Comment

by:RobSampson
ID: 37717583
Yeah, no problem. No rush.  It just helps others that may be having the same problem.

Rob.
0

Featured Post

Optimize your web performance

What's in the eBook?
- Full list of reasons for poor performance
- Ultimate measures to speed things up
- Primary web monitoring types
- KPIs you should be monitoring in order to increase your ROI

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This tutorial will discuss the log-in process using WhizBase. In this article I assume you already know HTML. I will write the code using WhizBase Server Pages, so you need to know some basics in WBSP (you might look at some of my other articles abo…
Batch, VBS, and scripts in general are incredibly useful for repetitive tasks.  Some tasks can take a while to complete and it can be annoying to check back only to discover that your script finished 5 minutes ago.  Some scripts may complete nearly …
Learn the basics of if, else, and elif statements in Python 2.7. Use "if" statements to test a specified condition.: The structure of an if statement is as follows: (CODE) Use "else" statements to allow the execution of an alternative, if the …
In this fourth video of the Xpdf series, we discuss and demonstrate the PDFinfo utility, which retrieves the contents of a PDF's Info Dictionary, as well as some other information, including the page count. We show how to isolate the page count in a…

623 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question