Demandez à Outlook 2010 de se reconnecter au serveur maintenant


0

J'exécute Outlook 2010 sur une machine virtuelle exécutant Windows 7. La mise en réseau est fournie via l'hôte. Outlook se connecte à un serveur Exchange.

Lorsque l'adresse IP de l'hôte change (par exemple, vers un autre réseau wifi), la connectivité d'Outlook est interrompue. Je n'ai pas étudié en profondeur, mais il semble conserver obstinément une connexion TCP sans en créer une nouvelle. La barre d'état en bas continue d'afficher «Ce dossier a été mis à jour pour la dernière fois à » et les nouveaux courriels ne sont pas téléchargés.

Appuyer sur les boutons «Mettre à jour le dossier» ou «Envoyer / recevoir tous les dossiers» n'aide pas. Le passage en mode hors connexion (bouton «Travailler hors connexion») et le retour en ligne n'aident pas.

Parfois, finalement, Outlooks se reconnecte. Mais cela prend des minutes ou des heures. Comment puis-je demander à Outlook de se reconnecter maintenant?

Tuer Outlook et le redémarrer fonctionne, mais c'est perturbateur. Ce problème est spécifique à l'exécution d'Outlook sur une machine virtuelle ou probablement derrière une passerelle dont l'adresse IP change: si l'adresse IP de la machine Windows change elle-même, Outlook se reconnecte correctement.

Réponses:


1

Je ne pouvais pas trouver un moyen de convaincre Outlook de se reconnecter au serveur, à moins de le redémarrer ou de le désactiver et de le réactiver (douloureusement) à l'interface réseau.

Donc, ce que je fais est de débrancher et rebranchez le câble virtuel entre la machine virtuelle et l'hôte avec le VBoxCableReconnect scénario. Bien sûr, le script est spécifique à VirtualBox, mais je m'attends à ce que des choses similaires soient possibles avec d'autres technologies de VM.

#! /usr/bin/env perl
use strict;
use warnings;

sub vbox_list {
    my %vms;
    my ($running) = @_;
    my $what = $running ? 'runningvms' : 'vms';
    local $ENV{LC_ALL} = 'C';
    open VBOX, "VBoxManage list -l $what |" or die 'VBoxManage: $!';
    local $/ = "\n\n\n";
    while (my $section = <VBOX>) {
        my %vm = ();
        $section =~ s/\n\n.*//s; # strip shared folders, etc.
        foreach my $line (split /\n/, $section) {
            $line =~ s/\A([^:]+):\s+// or next;
            $vm{$1} = $line;
        }
        $vms{$vm{UUID}} = {%vm};
    }
    close VBOX;
    return %vms;
}

sub vbox_list_cables {
    my ($vms) = @_;
    my @cables;
    foreach my $vm (values %$vms) {
        my %vm = %$vm;
        foreach my $key (keys %vm) {
            next unless $key =~ /\ANIC *([0-9]+)\z/;
            my $num = $1;
            if ($vm{$key} =~ /(^|, )Cable connected: on($|, )/) {
                push @cables, [$vm{UUID}, $vm{Name}, $num];
            }
        }
    }
    return @cables;
}

sub vbox_iterate_cableconnected {
    my ($cables, $onoff) = @_;
    foreach my $cable (@$cables) {
        my ($uuid, $name, $num) = @$cable;
        system 'VBoxManage', 'controlvm', $uuid, "setlinkstate$num", $onoff;
        # TODO: report errors
    }
}

my %vms = vbox_list(1);
my @cables = vbox_list_cables(\%vms);
vbox_iterate_cableconnected(\@cables, 'off');
sleep(1);
vbox_iterate_cableconnected(\@cables, 'on');

Exécutez-le en tant qu'utilisateur exécutant la machine virtuelle lors de la création d'une interface réseau sur l'hôte.


0

Contrôlez et cliquez avec le bouton droit de la souris sur l'icône Outlook par l'horloge. Un nouvel élément de menu appelé "Statut de la connexion" vous permet de vous reconnecter plus rapidement que toute autre méthode.


Cela semble sûr que cela devrait fonctionner, mais cela n’aide en rien. Je constate que les connexions sont redémarrées lorsque je clique sur le bouton «Reconnecter», mais mes boîtes aux lettres ne sont pas mises à jour.
Gilles

Je suppose que vous utilisez vmware sur mac? Chaque fois que je rencontrais un problème similaire au vôtre, je changeais le paramètre réseau de vmware de NAT à BRIDGE ou vice versa.
JohnnyVegas

VirtualBox sur Linux, mais même différence. Je vais essayer de désactiver le réseau au niveau VB. J'ai essayé de désactiver le réseau sous Windows pour lui faire envoyer l'événement qu'il envoie à Outlook lorsqu'il ne fonctionne pas sur une machine virtuelle et que le réseau tombe en panne, mais je n'ai pas trouvé le moyen de le faire sans pouvoirs d'administrateur et sans fouiller dans menus très profonds.
Gilles
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.