Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW

Re: Calling an executable and entering login credentials

by zentara (Archbishop)
on Sep 02, 2012 at 16:58 UTC ( #991308=note: print w/ replies, xml ) Need Help??

in reply to Calling an executable and entering login credentials

I don't know exactly how Sametime expects to get it's login, can you be more specific what the program does? Does it output a prompt, like Login:? Usually to interact with a program, the Expect module is usually recommended, google for perl Expect for sample code.

In a very simple situation, you may be able to get by with IPC::Open3, which opens the program, and gives you pipes to write to, and read from, the executable.

A simple example:

#!/usr/bin/perl use warnings; use strict; use IPC::Open3; $|=1; # you would run Sametime here, instead of bash my $pid=open3(\*IN,\*OUT, \*ERR , '/bin/bash'); # set \*ERR to 0 to send STDERR to STDOUT # # in your case, print the login name here my $cmd = 'date'; #send cmd to bash print IN "$cmd\n"; my $result = <OUT>; print $result;

I'm not really a human, but I play one on earth.
Old Perl Programmer Haiku ................... flash japh

Comment on Re: Calling an executable and entering login credentials
Download Code
Re^2: Calling an executable and entering login credentials
by Thomas Kennll (Acolyte) on Sep 02, 2012 at 17:34 UTC
    Thanks for the reply! Actually the application is a .bat file and when I run this manually a login/password prompt pops up.. I need to put in the username and password and then submit it.. Something like a form program.. I want my perl script to interact to this .bat file and put in the credential and submit..

      Batch files don't ask for passwords. Programs invoked by the batch files do that. Look at the batch file, find out which program asks for a password, read its documentation and find a way to pass the password on the command line. Or look at tools like AutoIt that are written to interact with GUIs.


      Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)
        Yeah.. There are some java programs doing that.. Is there anyway, that I can call the batch files from the script and then input the credentials using some modules ?

      To interact with GUI programs on Windows, you should check out Win32::GUITest and its excellent examples.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://991308]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (15)
As of 2015-07-06 18:24 GMT
Find Nodes?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...

    Results (80 votes), past polls