Home > Citrix > Citrix Workflow Studio – Does it add capabilities that we didn’t have before?

Citrix Workflow Studio – Does it add capabilities that we didn’t have before?

February 5th, 2009 Jase

I ran across an article about how to use Citrix Workflow Studio to alert when the print spooler service crashes.

You can find that article here:
http://support.citrix.com/article/ctx119979

Kind of interesting… I know that it isn’t a “new” type of process… But do you need the Workflow Studio to do this? Absolutely not.

I wrote a script about 3 years ago, that let’s me know when print spoolers crash, and then can restart the spooler. Here is a sample (not the code I’m using, but similar)

'********************************'* Citrix Printer Warning Script'* printwarn.vbs'* 'simple version''* 2/5/2009'********************************

'Setup the normal VBS Wscript StuffSet WshNetwork = WScript.CreateObject("WScript.Network")Set WshShell = Wscript.CreateObject("Wscript.Shell")

'Grab the ComputerNamestrComputerName = WshNetwork.ComputerName

'Setup the CommandsstrStopCmd = "net stop spooler"strStartCmd = "net start spooler"

'Stop the SpoolerSet objExec = wshshell.Exec(strStopCmd)

'Start the SpoolerSet objExec = wshshell.Exec(strStartCmd)

'Setup the mailSet objMessage = CreateObject("CDO.Message")objMessage.From = "from@domain.com"objMessage.To = "to@domain.com"objMessage.Subject = strComputername _& " has a print spooler service issue"objMessage.Textbody = strComputername _& " has a print spooler service issue"

'We are talking to a remote SMTP serverobjMessage.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2

'Name or IP of Remote SMTP ServerobjMessage.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpserver") = _& "mail.domain.com"

'Server port (typically 25)objMessage.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25

objMessage.Configuration.Fields.Update

'==End remote SMTP server configuration section==

objMessage.Send

Now what do I need to do to have this fire off?

I made a batch file called “citrixprintwarning.bat”, and put it somewhere on my C: drive. This is the file that will execute the vbs.

Here are the simple contents:
c:printerwarn.vbs

Now I set the Windows Print Spooler Service Recovery options to run the batch file in the event of a failure.


When things fail, I get an e-mail, and the service gets restarted.

I actually got a little fancy with my prod script. I pull a list of users on the system, so I can try to track down whether I have a user that is constantly causing issues or not.

And I didn’t have to get the Citrix Workflow Studio to do it.

Categories: Citrix Tags:
Comments are closed.