Img/xRom.gif Главная О сайте ROM-Mail Форум Статьи Программы OLAP Ссылки

DialUp в 1С: Предприятие 7.7. Использование стандартной "звонилки" Windows.

В большинстве случаев, для установки DialUp-соединения из 1С: Предприятие 7.7 можно использовать стандартную звонилку Windows. В состав Windows входит программа rasdial.exe, именно эту программу и будем использовать в качестве программы дозвона. Подразумевается, что RAS-соединение (соединение удаленного доступа) уже создано и даже проверено, и даже успешно :-).

Если все это так, то начнем его использовать в 1С. Примерно так:


Процедура Сформировать()

    ИмяСоединения="UkrTelecom"; // имя подключения удаленного доступа
    Пользователь="rom"; // пользователь
    Пароль=""; // пароль

    ЛогФайл=КаталогИБ()+"_Dial.Log";


    // запускаем стандартную виндозную звонилку
    // и перенаправим вывод в текстовый файл

    ВсеОК=0; // флаг соединения

    КомандаПодключения=Шаблон("rasdial [ИмяСоединения] [Пользователь] [Пароль] >[ЛогФайл]");
    КомандаСистемы(КомандаПодключения);

    // КомандаСистемы дождется результата выполнения подключения
    // Для уверенности почитаем log
    // для русской XP лог завершается строкой "Команда успешно завершена."
    Текст=СоздатьОбъект("Текст");
    Текст.КодоваяСтраница(1);
    Текст.Открыть(ЛогФайл);
    Для Индекс=1 По Текст.КоличествоСтрок() Цикл
        Если Найти(Текст.ПолучитьСтроку(Индекс),"Команда успешно завершена.")>0 Тогда
            ВсеОК=1;
        КонецЕсли;
    КонецЦикла;


    Если ВсеОК=1 Тогда
        Сообщить("Соединение установлено !!!");

        // дальше выполняем, то что нам нужно
        // например получаем почту

        //Попытка
            // Если ЗагрузитьВнешнююКомпоненту("ROM-Mail.dll")=0 Тогда
                // Сообщить("Не удалось загрузить ROM-Mail.dll");
                // Возврат;
            // КонецЕсли;
        //Исключение
            // Возврат;
        //КонецПопытки;
        //
        //ВК=СоздатьОбъект("AddIn.AddInMail");
        //ВК.СерверПриема=СокрЛП(СерверПриема);
        //ВК.ПортПриема=СокрЛП(ПортПриема);
        //ВК.Логин=СокрЛП(Логин);
        //ВК.Пароль=СокрЛП(Пароль);
        //ВК.ОставлятьНаСервере=1;
        //ВК.ПоказыватьПредупреждения=0;
        //
        //// подключаемся
        //Если ВК.Подключиться("Прием")=0 Тогда
            // Предупреждение("Не удалось подключиться к серверу!");
            // Возврат;
        //КонецЕсли;

        // ... и т.д.



        // и отключаемся
        КомандаОтключения=Шаблон("rasdial [ИмяСоединения] /disconnect");
        КомандаСистемы(КомандаОтключения);

    КонецЕсли;

    Если ФС.СуществуетФайл(ЛогФайл)=1 Тогда
        ФС.УдалитьФайл(ЛогФайл);
    КонецЕсли;


КонецПроцедуры
 


Скачать этот пример в виде ert-файла.

(с) Олег Ризванов aka ROM, Апрель 2005

1C:TOP-100 КЛУБ ПРОФЕССИОНАЛОВ 1С Rambler's Top100

Hosted by uCoz