Попросіть Outlook 2010 знову підключитися до сервера


0

Я запускаю Outlook 2010 у віртуальній машині під керуванням Windows 7. Мережа забезпечується через хост. Outlook підключається до сервера Exchange.

Коли змінюється IP-адреса хоста (наприклад, перехід до іншої мережі wifi), це призводить до порушення підключення Outlook. Я не вивчав глибоко, але, здається, наполегливо зберігає з'єднання TCP і не запускає нове. Рядок стану внизу продовжує відображатися “Ця папка була останнім часом оновлювалася & lt; time & gt;”, а нові повідомлення не завантажуються.

Натискання кнопок "Оновити папку" або "Відправити / отримати всі папки" не допоможе. Перемикання в автономний режим (кнопка "Робота в автономному режимі") і підтримка в режимі онлайн не допомагає.

Іноді, врешті-решт, перспективи підключаються. Але це займає хвилини або години. Як я можу доручити Outlook знову підключитися?

Вбиваючи Outlook і перезапускаючи його, це працює, але це руйнівно. Ця проблема пов'язана з запуском Outlook у віртуальній машині або, ймовірно, за шлюзом, чия IP-адреса змінюється: якщо IP-адреса самої машини Windows змінюється, Outlook правильно підключається.

Відповіді:


1

Я не міг знайти способу переконати Outlook, щоб він знову підключився до сервера.

Так що я роблю це, щоб відключити і підключити назад віртуальний кабель між ВМ і хостом з наступним VBoxCableReconnect сценарій. Звичайно, сценарій є специфічним для VirtualBox, але я очікую, що подібні речі можливі і з іншими технологіями 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');

Запустіть цю функцію як користувач, який запускає віртуальну машину під час створення мережного інтерфейсу на хості.


0

Керуйте і клацніть правою кнопкою миші на піктограмі Outlook за годинником, і у вас з'явиться новий пункт меню "Статус з'єднання", де ви зможете відновити з'єднання набагато швидше, ніж будь-який інший метод.


Це, напевно, виглядає так, як він повинен працювати, але це не допомагає. Я бачу, що підключення перезапускаються, коли я натискаю кнопку "Reconnect", але мої поштові скриньки не оновлюються.
Gilles

Я припускаю, що ви використовуєте vmware на Mac? Кожен раз, коли я відчував проблему, подібну до вашої, я б змінив мережеві настройки vmware з NAT на BRIDGE або навпаки.
JohnnyVegas

VirtualBox на Linux, але така ж різниця. Я буду експериментувати з вимкненням мережі на рівні VB. Я спробував відключити мережу в Windows, щоб він відправляв будь-яку подію, яку він відправляє в Outlook, коли він не працює у віртуальній машині, і мережа знижується, але я не знайшов способу зробити це без повноважень адміністратора та заглиблення дуже глибокі меню.
Gilles
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.