powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как сделать принтер или как его клонировать и 'подправить'!
13 сообщений из 13, страница 1 из 1
Как сделать принтер или как его клонировать и 'подправить'!
    #35736300
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Перед тем как что-то делать хочу попытаться осознать идею.
Стоит задача отправки факса через некую программу.
Суть такая: если есть файл ".tif", то можно написать shell(proga.exe файл.tif Номер_куда_слать) и все будет "как надо".
Ключевым является вопрос создания этого "tif". Решение лежит на поверхности: подходят файлы, кот. генерирует принтер "Microsoft Fax".
Т.е. Печать->Принтер FAX (Microsoft Fax)->Опция печать в файл->выбираем/набираем имя файла tif для сохранения и получаем его в заданном месте.
По идее хотелось бы по слову печать выбирать слово "Клон Microsoft Fax", после выбора параметров по кнопке печать происходило бы сохр. в файл а далее бы запускалась форма ввода номера, или бы скажем "Мастер" доходил бы до конца, но файл с номером направлялся бы не на службу факсов MS, а в командную строку рассматриваемой проги.
Возможно ли энто осуществить? так или иначе MS-fax использовать придется, ибо так универсально генерировать tiff-ы(правильного!!! формата) больше никто не умеет, если только libtiff, но это боюсь будет не универсально. Пишу здесь ибо "более менее нормально" владею только VB6.
...
Рейтинг: 0 / 0
Как сделать принтер или как его клонировать и 'подправить'!
    #35736360
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, ActiveReports прекрасно умеет экспортировать свои отчеты в TIFF-файлы:

[quote]ActiveReports includes multiple export filters to transform your report output into Rich Text Format for word-processing, Portable Document Format (PDF) for global file transfer, EXCEL format, HTML format for web viewing, TIFF format for faxing , and delimited text for spreadsheets and database use.[/quote]
...
Рейтинг: 0 / 0
Как сделать принтер или как его клонировать и 'подправить'!
    #35736765
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Честно, не знаю что такое ActiveReports, но догадываюсь что это некая навороченная система, да и вряд ли она универсальна.
Нужен именно универсальный простой способ коим являеся печать.
Понятно, что для частных случаев:Excel,Word можно написать макрос, что нек. графические форматы можно преобразовать утилитами libtiff и им подобными, но это частные случаи.
Хотелось бы именно как принтер.
Microsoft Fax вполне подходит.

Т.е. по сути вопрос делится на 2ю
1)Как написать принтер (на VB???)-поиск смотрел
2)Как запрограмировать команду печать в файл через Microsoft Fax?
(Очевидно как-то надо вызывать Microsoft Shared Fax Library, м.б. это и возможно через VB)

Если 1-2 решается, то команду 2) запихнуть в то что должен делать принтер 1), а потом передать все это хозяйство в командную строку факс-утилиты на исполнение (в рамках принтера).
И тогда все будет хорошо.
Сейчас понял что часть вопроса я сам же здесь когда-то поднимал.
/topic/452165&hl=%ef%e5%f7%e0%f2%fc

/topic/451576&hl=%ef%e5%f7%e0%f2%fc

но получились лишь частичные наработки.
...
Рейтинг: 0 / 0
Как сделать принтер или как его клонировать и 'подправить'!
    #35737461
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77Честно, не знаю что такое ActiveReports

Ну скажем так - это значительно более продвинутый DataReport от VB6.

Дмитрий77
Понятно, что для частных случаев:Excel,Word можно написать макрос, что нек. графические форматы можно преобразовать утилитами libtiff и им подобными, но это частные случаи.
Хотелось бы именно как принтер.

Э... SnagIt Printer?

Вообще же непонятно что нужно в итоге.
Если из программы на VB6 нужно сохранить рисунок как TIFF-файл, то можно почитать, к примеру, здесь: http://www.activevb.de/tipps/vb6tipps/tipp0688.html
...
Рейтинг: 0 / 0
Как сделать принтер или как его клонировать и 'подправить'!
    #35737566
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да нет.. это не то все. Если из формы VB, и картинка, то Kodak Imaging, по моей ссылке есть мой же пример кода.Нужно сделать именно принтер . Вот еще скачал http://sourceforge.net/projects/imageprinter/, все бы неплохо, можно было бы влесть в код и переписать для себя, но он зараза tif-ы неправильные делает, а Microsoft понятно кодов своего Fax не дает...
...
Рейтинг: 0 / 0
Как сделать принтер или как его клонировать и 'подправить'!
    #35737577
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77Да нет.. это не то все. Если из формы VB, и картинка, то Kodak Imaging, по моей ссылке есть мой же пример кода.Нужно сделать именно принтер . Вот еще скачал http://sourceforge.net/projects/imageprinter/, все бы неплохо, можно было бы влесть в код и переписать для себя, но он зараза tif-ы неправильные делает, а Microsoft понятно кодов своего Fax не дает...

ваша задача нетривиальна. за такие контролы фирмы денег многа хотят, можете в инете посмотреть.

а вообще юзайте виртуальный принтер Ghostscript, он бесплатен.
...
Рейтинг: 0 / 0
Как сделать принтер или как его клонировать и 'подправить'!
    #35737731
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77но он зараза tif-ы неправильные делает, а Microsoft понятно кодов своего Fax не дает...

Ну замените там собственно код создания TIFF-ов на более правильный, если все остальное устраивает...
...
Рейтинг: 0 / 0
Как сделать принтер или как его клонировать и 'подправить'!
    #35737777
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это хорошая идея. Понять бы для начала как ентот код компилировать, ибо там половина на паскале, половина на c++, а vcc+ project отсутствует, придется изучать как пользоваться компилятором c++ из командной строки, м.б. даже в линуксе сперва придется пробовать через make . А уж формат тифа где делается думаю найду (204х198 или 204х196 надо), ибо там libtiff использован, а он "правильные" tiff-ы знает. Тогда можно будет и system(proga.exe); добавить куда нибудь. Действительно нетривиально и не на VB, и не на одну ночь.

Более конкретный вопрос, уж не знаю насколько простой.
1) Есть установленный в системе принтер (допустим имя известно). PRINTER
2) Есть файл DOKUMENT.XXX, для кот. доступно слово "Печать" (word, txt, xls, картинка), скажем в с-ме известно чем открывается и эта программа умеет его системно печатать.
3) Хочу: напечатать DOKUMENT.XXX на принтер PRINTER c опцией ПЕЧАТЬ В ФАЙЛ и сохранить в файле PATH\REZULTOFPRINT.YYY

Это на VB возможно?
...
Рейтинг: 0 / 0
Как сделать принтер или как его клонировать и 'подправить'!
    #35737779
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий771)Как написать принтер (на VB???)-поиск смотрел
2)Как запрограмировать команду печать в файл через Microsoft Fax?1) Принтер — это драйвер. Драйвера на VB не пишутся.
2) Без лишних вопросов от драйвера? Не получится. Зато получится мониторить определенную папку, в которую можно сохранять тифы, напечатанные обычным способом. При появлении файла делать shell, а когда shell закончится — удалять. Еще немного поплясав с бубном, можно написать мониторчик, который ждет появления окна печати на факс и сам вводит все необходимое.
...
Рейтинг: 0 / 0
Как сделать принтер или как его клонировать и 'подправить'!
    #35737853
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2) >>Без лишних вопросов от драйвера? Не получится
Здесь без вопросов печатается (Imaging)
Код: plaintext
1.
2.
3.
4.
5.
6.
Private Sub Command2_Click()
    ImgAdmin1.Image = "c:\111\TEST001.TIF"  'TEST001-это 1-я страница
    ImgAdmin1.Insert "c:\111\TEST002.TIF",  1 ,  2 ,  1  'TEST002-это 2-я страница
    ImgEdit1.Image = ImgAdmin1.Image
    ImgEdit1.Display
    ImgEdit1.PrintImage  1 ,  2 ,  1 , False, "Fax", , "C:\111\auto.tif" ' а это требуемый факс-2 страницы, но без гарантий, что он 200х100
End Sub
Но это частный случай, м.б. API какие посмотреть?
...
Рейтинг: 0 / 0
Как сделать принтер или как его клонировать и 'подправить'!
    #35738277
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот, нашел умную вещь,
Код: plaintext
1.
2.
3.
4.
     Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal _
         hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal _
         lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
    
ShellExecute  0 &, "Print", App.Path & "\test.doc", "", "", vbNormalFocus
но сразу встает 2 вопроса:
1) как здесь выбрать принтер, если искомый не по умолчанию
2) если это Microsoft Fax, то первое диалоговое окно(где ставится галка печать в файл) вообще пропускается, где-то в программе надо задать "Печать в файл, файл такой-то"

Еще нашел вот это:
http://support.microsoft.com/kb/154078
Код: plaintext
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.
Option Explicit

      Private Type DOCINFO
          pDocName As String
          pOutputFile As String
          pDatatype As String
      End Type

      Private Declare Function ClosePrinter Lib "winspool.drv" (ByVal _
         hPrinter As Long) As Long
      Private Declare Function EndDocPrinter Lib "winspool.drv" (ByVal _
         hPrinter As Long) As Long
      Private Declare Function EndPagePrinter Lib "winspool.drv" (ByVal _
         hPrinter As Long) As Long
      Private Declare Function OpenPrinter Lib "winspool.drv" Alias _
         "OpenPrinterA" (ByVal pPrinterName As String, phPrinter As Long, _
          ByVal pDefault As Long) As Long
      Private Declare Function StartDocPrinter Lib "winspool.drv" Alias _
         "StartDocPrinterA" (ByVal hPrinter As Long, ByVal Level As Long, _
         pDocInfo As DOCINFO) As Long
      Private Declare Function StartPagePrinter Lib "winspool.drv" (ByVal _
         hPrinter As Long) As Long
      Private Declare Function WritePrinter Lib "winspool.drv" (ByVal _
         hPrinter As Long, pBuf As Any, ByVal cdBuf As Long,  _
         pcWritten As Long) As Long

      Private Sub Command1_Click()
          Dim lhPrinter As Long
          Dim lReturn As Long
          Dim lpcWritten As Long
          Dim lDoc As Long
          Dim sWrittenData As String
          Dim MyDocInfo As DOCINFO
          lReturn = OpenPrinter(Printer.DeviceName, lhPrinter,  0 )
          If lReturn =  0  Then
              MsgBox "The Printer Name you typed wasn't recognized."
              Exit Sub
          End If
          MyDocInfo.pDocName = "AAAAAA"
          MyDocInfo.pOutputFile = vbNullString
          MyDocInfo.pDatatype = vbNullString
          lDoc = StartDocPrinter(lhPrinter,  1 , MyDocInfo)
          Call StartPagePrinter(lhPrinter)
          sWrittenData = "How's that for Magic !!!!" & vbFormFeed
          lReturn = WritePrinter(lhPrinter, ByVal sWrittenData, _
             Len(sWrittenData), lpcWritten)
          lReturn = EndPagePrinter(lhPrinter)
          lReturn = EndDocPrinter(lhPrinter)
          lReturn = ClosePrinter(lhPrinter)
      End Sub
Действительно, печатает в файл, однако файл всегда пустой.
...
Рейтинг: 0 / 0
Как сделать принтер или как его клонировать и 'подправить'!
    #35738514
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFДмитрий77но он зараза tif-ы неправильные делает, а Microsoft понятно кодов своего Fax не дает...

Ну замените там собственно код создания TIFF-ов на более правильный, если все остальное устраивает...
Гы...легко сказать.Заменил,блин...
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
case  100 :
     div =  6 
     bmp_height =  1191 ; // 1100 
     bmp_width =  1728 ; // 800 
     //bits = new unsigned char bmp_height*bmp_width* 3 ];
     break;
case  200 :
    div =  3 ;
    bmp_height =  2343 ; // 2300 ;
    bmp_width =  1728 ; // 1640 ;
   //bits = (unsigned char*)bits_200dpi;
   break;
В случае dpi=100 изображение сжимается вдвое, правая часть картинки пустая.
В случае dpi=200 внешне при просмотре все прилично, но факс после передачи вылезает в 2р растянутым по вертикали, т.е. разрешение Fine почему-то воспринимается как Normal.
(В свойствах генерируемых файлов tif информация про разрешение напрочь отсутствует.)
Чтобы этот код грамотно менять, надо теорию этих тифов знать.

М.б. проще все же Microsoft Fax грамотно оприходовать средствами VB, чем с Open-сорсами ковыряться?

Вот этот код ниже действительно создает test.tif (Default="Fax"), и печатает туда "Hello World!"
Но он печатает текст, а не файл из произвольного приложения,кот. ассоциировано с файлом.Т.е. опять частный случай, и тупик.

Код: plaintext
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.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
Option Explicit

      ' Constants for DEVMODE.
      Private Const CCHDEVICENAME =  32 
      Private Const CCHFORMNAME =  32 

      ' Constants for DocumentProperties() call.
      Private Const DM_MODIFY =  8 
      Private Const DM_IN_BUFFER = DM_MODIFY
      Private Const DM_COPY =  2 
      Private Const DM_OUT_BUFFER = DM_COPY

      ' Constants for Orientation.
      Private Const DMORIENT_PORTRAIT =  1 
      Private Const DMORIENT_LANDSCAPE =  2 

      ' Constants for printer bin.
      Private Const DMBIN_UPPER =  1 
      Private Const DMBIN_LOWER =  2 

      ' Constants for DMFIELDS (which fields did you change?).
      Private Const DM_ORIENTATION = &H1
      Private Const DM_DEFAULTSOURCE = &H200

      Private Type DOCINFO
          cbSize As Long
          lpszDocName As String
          lpszOutput As String
      End Type

      Private Type DEVMODE
          dmDeviceName( 1  To CCHDEVICENAME) As Byte
          dmSpecVersion As Integer
          dmDriverVersion As Integer
          dmSize As Integer
          dmDriverExtra As Integer
          dmFields As Long
          dmOrientation As Integer
          dmPaperSize As Integer
          dmPaperLength As Integer
          dmPaperWidth As Integer
          dmScale As Integer
          dmCopies As Integer
          dmDefaultSource As Integer
          dmPrintQuality As Integer
          dmColor As Integer
          dmDuplex As Integer
          dmYResolution As Integer
          dmTTOption As Integer
          dmCollate As Integer
          dmFormName( 1  To CCHFORMNAME) As Byte
          dmUnusedPadding As Integer
          dmBitsPerPel As Integer
          dmPelsWidth As Long
          dmPelsHeight As Long
          dmDisplayFlags As Long
          dmDisplayFrequency As Long
      End Type

      Private Declare Function OpenPrinter Lib "winspool.drv" Alias _
          "OpenPrinterA" (ByVal pPrinterName As String, phPrinter As _
          Long, ByVal pDefault As Long) As Long

      Private Declare Function ClosePrinter Lib "winspool.drv" _
          (ByVal hPrinter As Long) As Long

      Private Declare Function DocumentProperties Lib "winspool.drv" _
          Alias "DocumentPropertiesA" (ByVal hwnd As Long, _
          ByVal hPrinter As Long, ByVal pDeviceName As String, _
          pDevModeOutput As Any, pDevModeInput As Any, _
          ByVal fMode As Long) As Long

      Private Declare Function ResetDC Lib "gdi32" Alias "ResetDCA" _
          (ByVal hdc As Long, lpInitData As Any) As Long

      Private Declare Function CreateDC Lib "gdi32" Alias "CreateDCA" _
          (ByVal lpDriverName As String, ByVal lpDeviceName As String, _
          ByVal lpOutput As Long, ByVal lpInitData As Long) As Long

      Private Declare Function DeleteDC Lib "gdi32" (ByVal hdc As Long) _
          As Long

      Private Declare Function TextOut Lib "gdi32" Alias "TextOutA" _
          (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long, _
          ByVal lpString As String, ByVal nCount As Long) As Boolean

      Private Declare Function StartDoc Lib "gdi32" Alias "StartDocA" _
          (ByVal hdc As Long, lpdi As DOCINFO) As Long

      Private Declare Function StartPage Lib "gdi32" (ByVal hdc As Long) _
          As Long

      Private Declare Function EndDoc Lib "gdi32" (ByVal hdc As Long) _
          As Long

      Private Declare Function EndPage Lib "gdi32" (ByVal hdc As Long) _
          As Long

      Private Declare Function GetLastError Lib "kernel32" () As Long

      Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _
          (hpvDest As Any, hpvSource As Any, ByVal cbCopy As Long)
          
      Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal _
         hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal _
         lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
 

     Private Sub Command1_Click()
          Dim di As DOCINFO
          Dim hPrintDc As Long
          Dim Ret As Long
          Dim LastError As Long
          Dim tx$

          tx$ = "Hello World!"
          hPrintDc = CreateDC(Printer.DriverName, Printer.DeviceName,  0 ,  0 )
          di.cbSize = Len(di)   ' 20
          di.lpszDocName = "VB Test Document"    ' Optional
          di.lpszOutput = App.Path & "\test.tif"

          Ret = StartDoc(hPrintDc, di)
          Ret = StartPage(hPrintDc)
          Ret = TextOut(hPrintDc,  1000 ,  1000 , tx$, Len(tx$))
          Ret = EndPage(hPrintDc)
          Ret = EndDoc(hPrintDc)
          Ret = DeleteDC(hPrintDc)
      End Sub
...
Рейтинг: 0 / 0
Как сделать принтер или как его клонировать и 'подправить'!
    #35738825
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy2) Без лишних вопросов от драйвера? Не получится. Зато получится мониторить определенную папку, в которую можно сохранять тифы, напечатанные обычным способом. При появлении файла делать shell, а когда shell закончится — удалять. Еще немного поплясав с бубном, можно написать мониторчик, который ждет появления окна печати на факс и сам вводит все необходимое.
В общем, если оприходовать Microsoft Fax, то я сделал так.
g_objFaxServer_OnOutgoingJobAdded мониторит не "папку" а сам сервер, и при появлении очередного задания мило тырит и сам tiff, и номер, куда его посылать, и вызывает отнюдь не майкрософтовскую процедуру Shell "sendfax.bat "...
Таким образом, любая печать на Microsoft Fax переводит стрелку совсем на другой путь.
ф-ция SendFaxAuto генерит задание автоматом из любого файла, кот. может быть напечатан.
Судьба этого задания будет такая же.
Естественно надо писать обработку ошибок вида "печатаемого" файла, можно мониторить скажем не все задания, а лишь те, кот. предназначены скажем "ToVasja". Также думаю полезно ставить дату-время начала задания в будущем времени, чтобы исключить "захват" задания самим Microsoft-сервером, это все актуально если сервер используется и сам по себе. Имя файла в SendFaxAuto тоже требует обработки, м.б. имеет смысл конвертировать в дос-формат, ибо Documents And Settings/Рабочий стол... может передаваться в кач. параметра некорректно. Ну диалоговое окно для выбора файла добавить comdlg как помню. Дальнейшая обработка факс-задания понятно уже выходит за рамки описанного тут. Но это все уже details.

Код: plaintext
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.
50.
51.
52.
53.
54.
Dim WithEvents g_objFaxServer As FAXCOMEXLib.FaxServer
Dim collFaxOutgoingJobs As FAXCOMEXLib.FaxOutgoingJobs
Dim objFaxOutgoingJob As FAXCOMEXLib.FaxOutgoingJob

Private Sub Form_Load()
   Set g_objFaxServer = New FAXCOMEXLib.FaxServer
   'Connect to the local fax server.
   g_objFaxServer.Connect ("")
   'Now register for the desired events.
   g_objFaxServer.ListenToServerEvents fsetFXSSVC_ENDED + fsetOUT_QUEUE
End Sub
Private Sub g_objFaxServer_OnOutgoingJobAdded(ByVal pFaxServer As FAXCOMEXLib.IFaxServer, ByVal bstrJobId As String)
    SendRealFax bstrJobId
End Sub
Private Sub SendRealFax(jobID As String)
    Dim FaxFile As String
    Dim FaxNumber As String
    FaxFile = App.Path & "\faxout\" & jobID & ".tif"
    'Get the collection of jobs in the outgoing queue
    Set collFaxOutgoingJobs = g_objFaxServer.Folders.OutgoingQueue.GetJobs
    For Each objFaxOutgoingJob In collFaxOutgoingJobs
        If (objFaxOutgoingJob.Id = jobID) Then
            'copy correct tiff file to our server from Microsoft
            objFaxOutgoingJob.CopyTiff FaxFile
            'copy fax number
            FaxNumber = objFaxOutgoingJob.Recipient.FaxNumber
            'delete microsoft outgoing job
            objFaxOutgoingJob.Cancel
            'send our tiff to FaxNumber
            Shell "sendfax.bat " & Chr( 34 ) & FaxFile & Chr( 34 ) & " " & FaxNumber
            Exit For
        End If
    Next
    Set collFaxOutgoingJobs = Nothing
End Sub
Function SendFaxAuto(Recips As String, CmpNms As String, FaxFile As String) As Variant
'We can create outgoing job from any printable file format, no dialog boxes
' Recips - номер факса
' CmpNms - имя получателя
' FaxFile - путь к файлу факса;
Dim objFaxDocument As New FAXCOMEXLib.FaxDocument
Dim objSender As FaxSender
    'Set the fax body
    objFaxDocument.Body = FaxFile
    'Add the recipient with the fax number Recips
    objFaxDocument.Recipients.Add Recips, CmpNms
    'Submit the document to the connected fax server
    'and get back the job ID.
    SendFaxAuto = objFaxDocument.ConnectedSubmit(g_objFaxServer)
End Function

Private Sub CommandSend_Click()
    'create job to send file with Path=TextNumber.Text to number=TextFile.Text
    SendFaxAuto TextNumber.Text, "ToVasja", TextFile.Text
End Sub
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как сделать принтер или как его клонировать и 'подправить'!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]