|   |   | 
| 
 | Отправка команды на com port | ☑ | ||
|---|---|---|---|---|
| 0
    
        babiy 19.06.12✎ 14:58 | 
        Здраствуйте. Мне нужно отправить команду на компорт (оборудование)из 1С 8.1. Как это можно реализовать? Напрямую через 1С или ВК?     | |||
| 1
    
        palpetrovich 19.06.12✎ 15:04 | 
        сам как думаешь?     | |||
| 2
    
        Kreont 19.06.12✎ 15:09 | 
        Как вариант:
  http://www.script-coding.com/dynwrapx.html | |||
| 3
    
        Jaap Vduul 19.06.12✎ 15:11 | 
        FileSystemObject = Новый COMОбъект("Scripting.FileSystemObject"); 
  com1 = fso.OpenTextFile("com1:",1,); | |||
| 4
    
        Jaap Vduul 19.06.12✎ 15:16 | 
        (3) - это на чтение
  На запись: com1 = fso.OpenTextFile("com1:", 2, Ложь, 0); | |||
| 5
    
        palpetrovich 19.06.12✎ 15:16 | 
        (3) что, правда прокатит?     | |||
| 6
    
        Jaap Vduul 19.06.12✎ 15:17 | 
        (5)Про DOS слышал?     | |||
| 7
    
        palpetrovich 19.06.12✎ 15:18 | 
        (6) а то     | |||
| 8
    
        palpetrovich 19.06.12✎ 15:22 | 
        +7 проверил на ХР, действительно, в лоб файл com1 не создать :) ...хотя умельцы умеют     | |||
| 9
    
        babiy 19.06.12✎ 15:55 | 
        Извините, а можна подробней о параметрах:
  OpenTextFile("com1:", 2, Ложь, 0); у меня в отладке: com1.AtEndOfLine = Ошибка чтения значения com1.AtEndOfStream = Ошибка чтения значения com1.Column = 1 com1.Line = 1 я з 1С недолга работаю и с ком-портом первый раз. | |||
| 10
    
        mikecool 19.06.12✎ 15:59 | 
        а тупо бат формировать с "copy file com1" или как там в досе было?     | |||
| 11
    
        babiy 19.06.12✎ 16:48 | 
        Подробней о OpenTextFile:
  "OpenTextFile Method Description Opens a specified file and returns a TextStream object that can be used to read from, write to, or append to the file. Syntax object.OpenTextFile(filename[, iomode[, create[, format]]]) The OpenTextFile method has these parts: Part Description object Required. Always the name of a FileSystemObject. filename Required. String expression that identifies the file to open. iomode Optional. Indicates input/output mode. Can be one of three constants: ForReading, ForWriting, or ForAppending. create Optional. Boolean value that indicates whether a new file can be created if the specified filename doesn't exist. The value is True if a new file is created; False if it isn't created. The default is False. format Optional. One of three Tristate values used to indicate the format of the opened file. If omitted, the file is opened as ASCII. Settings The iomode argument can have either of the following settings: Constant Value Description ForReading 1 Open a file for reading only. You can't write to this file. ForWriting 2 Open a file for writing only. You can't read from this file. ForAppending 8 Open a file and write to the end of the file. The format argument can have any of the following settings: Constant Value Description TristateUseDefault -2 Opens the file using the system default. TristateTrue -1 Opens the file as Unicode. TristateFalse 0 Opens the file as ASCII. Remarks The following code illustrates the use of the OpenTextFile method to open a file for writing text: Sub OpenTextFileTest Const ForReading = 1, ForWriting = 2, ForAppending = 8 Dim fso, f Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile("c:\testfile.txt", ForWriting, True) f.Write "Hello world!" f.Close End Sub" Microsoft® Visual Basic® Scripting Edition | |||
| 12
    
        babiy 19.06.12✎ 16:50 | 
        Но здесь указываеться файл .txt, а как указать ком-порт?     | |||
| 13
    
        Shurjk 19.06.12✎ 16:55 | 
        (12) С точки зрения системы когда она пишет в файл который называется COM1 она пишет в ком порт.     | |||
| 14
    
        smaharbA 19.06.12✎ 16:56 | 
        восьмерка может это делать и объектом ТекстовыйДокумент
  вот пути правильно таковые \\.\com1 | |||
| 15
    
        Shurjk 19.06.12✎ 16:58 | 
        (14) Вообще все равно как это делать. Вот только с чтением этот вариант врят ли поможет. Ком порт он ведь не стоит и не ждет пока ты его прочитаешь, он отправил данные и все твоя задача успеть их поймать.     | |||
| 16
    
        Shurjk 19.06.12✎ 16:59 | 
        +(15) Короче надо по любому писать ВК или найти уже готовое, которое будет уметь слушать ком порт.     | |||
| 17
    
        babiy 19.06.12✎ 17:16 | 
        Мне читать ненужно, мне толька подавать команды и писать. Всем большое спасибо!!! Буду тестировать. Щас нету просто возможности увидить попадает в компорт или нет.     | |||
| 18
    
        babiy 20.06.12✎ 12:43 | 
        Здраствуйте. В ком нечего не попадает. Вот код который я использую: 
  Команда = ЭлементыФормы.Команда1.Значение; fso = Новый COMОбъект("Scripting.FileSystemObject"); f = fso.OpenTextFile("\\.\com9", 2, Ложь, 0); f.Write (Команда); В чем может быть проблема? | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |