Bonjour à tous,

Après plusieur tests je ne trouve pas la résolution à mon probleme.
Je réalise des scripts afin de récupérer des informations sur les machines virtuelles.
Mon problème est que je ne sais pas comment executer mon prog et comment passer en parametre l'adresse ip de mon serveur, le nom d'utilisateur et le mdp.
J'obtiens comme erreur:
Erreur CGI
L'application CGI spécifiée n'a pas renvoyé le jeu complet d'en-têtes HTTP.

IIS est bien configuré, toutes les extensions sont autorisées.


Mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
 
 
#!C:/Perl/bin/perl.exe -w
    #start code
use strict;
use warnings;
use CGI;
use CGI qw/:standard/;
use Tk;
use VMware::VIRuntime;
use VMware::VILib;
use cgi-lib.pl
 
use CGI::Carp qw(fatalsToBrowser);
print "HTTP/1.0 200 OK\n";
 
Opts::parse();
Opts::validate();
Util::connect();
 
   # print header and start the markup output
    my $q = new CGI;
print $q->header( "text/html" ),$q->start_html( "hello from perl cgi!" );
 
print $q->p("=====================================================================");
print $q->p("       FIND THE NAME AND THE NUMBER OF ALL THE VMs AND HOSTs         ");
print $q->p("=====================================================================");
 
 
my $host_views = Vim::find_entity_views(view_type => 'HostSystem');
 
my $counter = 0;
print $q->p("Host found: ");
foreach (@$host_views)  {
print $q->p("$counter:" . $_->name);
$counter++;
						}
print $q->p("Total Host (Serveur)  = $counter");
my $sum = 0;
print $q->p("VM's found: ");
 
my $vm_views = Vim::find_entity_views(view_type => 'VirtualMachine');
foreach (@$vm_views)    {
print $q->p("$sum: " . $_->name);
$sum++;
                        }
print $q->p("Total VM (machine virtuelle) = $sum");
print $q->end_html;
Util::disconnect();
Wrapper.pl faisant appelle a la fonction :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
 
#!C:/Perl/bin/perl.exe -w
 
use strict;
use CGI;
use warnings;
use CGI::Carp qw(fatalsToBrowser);
print "HTTP/1.0 200 OK\n";
 
my $user="scripts";
my $server="s15771";
my $password="shuttle";
 
#exec("C:/Perl/bin/perl.exe", "C:/perl-scripts/vm_found.pl"); 
system("C:/perl/bin/perl.exe", "vm_found.pl", "--username=$user", "--password=$password", "--server=$server");
 
 
#my $prog = qx(C:/perl-scripts/testcgi.pl);
#print "$prog";
 
 
#my $output = ``;
#print my $output;
exit 0;
Code ur ma page HTML :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
 
 <p>Nombre total de machines virtuelles</p>
  <form action="http://128.94.201.224/cgi-bin/wrapper.pl" method="post">
  <input type=submit value="EXECUTER">
</form>
C'est très urgent.
Merci pour votre aide.