Примеры использования объектного интерфейса к curl.
===================================================

Класс обеспечивает удобный интерфейс для работы с программой curl.exe из
кларионовских приложений.

Запуск программы осуществляется через процесс, благодаря чему вместо dos-окна
(как при запуске через run) выводится обычное окно с прогрессором. Через
некоторое время становится доступна кнопка для принудительной отмены выполнения
(убивает процесс).

Класс поддерживает отправку электронных писем с прикреплением файлов с
использованием ssl-соединений. Для этого создается файл письма, в который
предварительно перед запуском curl выводятся реквизиты и содержимое прикрепляемых
файлов в mime-формате.

Запустить любую строку curl можно с помощью метода StartProcess. Другие методы
класса являются надстройкой для удобства работы.

Класс тестируется под Clarion 6.3, шаблоны ШВС.
Скопируйте файлы fsCurl.clw, fsCurl.inc и smtp.c в каталог клариона LibScr.
Чтобы подключить класс, надо в глобальной точке вставки "После глобальных INCLUDE"
добавить строку:
include('fsCurl.inc')
В проекте в "External source files" добавить файл smtp.c.

  !------------------------------------------------
  ! Запуск любой строки curl можно выполнять так:

test_r routine
   DATA
fsCurlL &fsCurl
   CODE

   fsCurlL &= new(fsCurl)
   fsCurlL.init()

   fsCurlL.StartProcess('<строка curl>')   !в строке название curl указывать не надо

   fsCurlL.kill
   dispose(fsCurlL)

  !------------------------------------------------
  ! Отправка почты с прикреплением файлов и использованием ssl

test_r routine
   DATA
fsCurlL &fsCurl
lor:ok  byte
   CODE

   fsCurlL &= new(fsCurl)
   fsCurlL.init()

   fsCurlL.WindowTitle='Отправка письма...'

   fsCurlL.SetUrl('smtps://smtp.yandex.ru:465','userName','userPswd')
   fsCurlL.SetMailHeader('adress1@yandex.ru','adress2@gmail.com','Отправитель','Получатель')
   fsCurlL.SetMailText('Тест','Текст тестового сообщения...')

   lor:ok=fsCurlL.MailHeaderAdd()
   if lor:ok=1
      lor:ok=fsCurlL.MailFileAdd('1.xls')
   .
   if lor:ok=1
      lor:ok=fsCurlL.MailFileAdd('1.txt')
   .

   if lor:ok=1
      if fsCurlL.MailSend()=1
         message('Успех!')
      .
   .

   fsCurlL.kill
   dispose(fsCurlL)

  !------------------------------------------------
  ! Выполнение простого php-скрипта с возвратом результата в локальный файл

test_r routine
   DATA
fsCurlL &fsCurl
   CODE

   fsCurlL &= new(fsCurl)
   fsCurlL.init()

   fsCurlL.HttpRequestSymple('http://finsoftrz.ru/tests/test_curl.php','1.txt')

   fsCurlL.kill
   dispose(fsCurlL)
