| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Макрос для запуска текстового файла из Автокада

Макрос для запуска текстового файла из Автокада

Ответ
Поиск в этой теме
Непрочитано 10.09.2008, 23:37 #1
Макрос для запуска текстового файла из Автокада
dextron3
 
проектировшик
 
СССР
Регистрация: 01.01.2007
Сообщений: 5,143

Хотел узнать, существует ли данный макрос, а то обычный что то не подходит...

Код:
[Выделить все]
Command: (STARTAPP "C:/Program Files/Zapknijka/123.txt")
nil
__________________
инженер проектировшик с опттом программа авто гад образование высшие
Просмотров: 5090
 
Непрочитано 11.09.2008, 08:33
#2
stas_org


 
Регистрация: 05.04.2007
Самара
Сообщений: 1,199


читай в acad.pgp, там можно на кнопку забиндить, только .txt должен быть в корне
акада.
stas_org вне форума  
 
Непрочитано 11.09.2008, 08:39
#3
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


dextron3, попробуй так:
Код:
[Выделить все]
(startapp "Notepad" "C:\\Program Files\\Zapknijka\\123.txt")
Makswell вне форума  
 
Автор темы   Непрочитано 13.09.2008, 07:31
#4
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Makswell, спасибо!
но с кнопки он почему то не работает, если сразу всю строку копирую в командную то работает не могу понять в чем дело?


когда запускается доходит до С: и останавливается и дальше не в какую может что то в макросе кнопки дополнительно вставить?
Изображения
Тип файла: jpg Snap1.jpg (3.2 Кб, 417 просмотров)
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 13.09.2008, 19:06
#5
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381


Цитата:
Сообщение от dextron3 Посмотреть сообщение
Makswell, спасибо!
но с кнопки он почему то не работает, если сразу всю строку копирую в командную то работает не могу понять в чем дело?


когда запускается доходит до С: и останавливается и дальше не в какую может что то в макросе кнопки дополнительно вставить?
В макросе меню слэши - служебные символы. Надо записывать так:
Код:
[Выделить все]
(startapp "Notepad" (strcat "C:" (chr 92) "Program Files" (chr 92) "Zapknijka" (chr 92) "123.txt"))
ShaggyDoc вне форума  
 
Автор темы   Непрочитано 14.09.2008, 08:50
#6
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


ShaggyDoc, СПОСИБО!

нужный макрос его можно использовать тупо как записная книжка , обычным ккопированием и вставкой!!!
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 14.09.2008, 13:17
#7
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,992


Тогда предлагаю немного модифицированный вариант. Качаешь notepad++. Он позволяет запускать несколько документов и запоминать их при последующем вызове. Делаешь файлы КЖ.txt, КМ.txt и т.п. и получаешь нужные тебе закладки

*** Добавлено. Вставить из буфера обмена текст можно этим лиспом
Код:
[Выделить все]
;  ! ***************************************************************************
;; !                           Getclipboard
;; ! ***************************************************************************
;; ! Function : Return text string from clipboard
;; ! Argument : nil
;; ! Returns  : string
;; see http://www.theswamp.org/index.php?topic=21764.new
;; ! ****************************************************************************

(defun Getclipboard ( / htmlfile result)
(setq result
        (vlax-invoke
            (vlax-get
                (vlax-get
                    (setq htmlfile (vlax-create-object "htmlfile"))
                   'ParentWindow
                )
               'ClipBoardData
            )
           'GetData
            "Text"
        )
    )

    (vlax-release-object htmlfile)

    result
)
;;Insert TExt from Clipboard
(defun C:ITC ( / txt str pt tblobj row col tblset lst )
    (vl-load-com)
    (if
    (and
      (setq str (Getclipboard))
      (setq txt (entmakex
      (list
        (cons 0 "TEXT")
        (cons 100 "AcDbEntity")
        (cons 100 "AcDbText")
        (cons 72 0)           ;_ выравнивание влево
        (cons 1 str)
       (cons 7 (getvar "TEXTSTYLE")) ;_Текущий стиль
        ;(cons 8 layer) ;_Текущий слой
        (cons 10 '(0 0 0))
        (cons 11 '(0 0 0))
        (cons 40 (getvar "TEXTSIZE")) ;_Текущей высотой текста (переменная TEXTSIZE)
        ) ;_ list
      ) ;_ entmakex
          )
 
      )
    (progn
      (princ "\n Укажите точку вставки текста или ячейку таблицы:")
      (vl-cmdf "_.copybase" (trans '(0 0 0) 0 1) txt "" "_.erase" txt "" "_.pasteclip" "_none" pause)
        ;_ В txt примитив текста в pt точка вставки  
       (setq txt (entlast) pt (getvar "LASTPOINT"))
      (and ;_Проверяем, попала ли точка в ячейку таблицы
      (setq  tblobj nil tblset (ssget "_X" '((0 . "ACAD_TABLE"))))
      (setq lst (mapcar 'vlax-ename->vla-object(vl-remove-if 'listp (mapcar 'cadr (ssnamex tblset)))))
      (mapcar '(lambda (x)
           (or tblobj
               (and
                 (= :vlax-true (vla-HitTest x
                               (vlax-3d-point (trans pt 1 0))
                               (vlax-3d-point (trans (getvar "VIEWDIR") 1 0))
                               'row 'col))
                 (setq tblobj x)
                 )
               )
           )
        lst)
      tblobj row col
      (or (vla-SetText tblobj row col str) t)
      (entdel txt)
      )
      )
    )
    (princ)
    )
Миниатюры
Нажмите на изображение для увеличения
Название: Npad++.jpg
Просмотров: 105
Размер:	50.0 Кб
ID:	10072  
__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 14.09.2008 в 13:24.
VVA вне форума  
 
Непрочитано 01.09.2012, 10:30
#8
pro9

Конструктор
 
Регистрация: 01.09.2012
Уфа
Сообщений: 80


Цитата:
Сообщение от VVA Посмотреть сообщение
Тогда предлагаю немного модифицированный вариант. Качаешь notepad++. Он позволяет запускать несколько документов и запоминать их при последующем вызове. Делаешь файлы КЖ.txt, КМ.txt и т.п. и получаешь нужные тебе закладки
А как запустить notepad++ макросом?
пробовал
(startapp "Notepad++") не получилось
pro9 вне форума  
 
Непрочитано 01.09.2012, 13:45
#9
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от pro9 Посмотреть сообщение
А как запустить notepad++ макросом?
пробовал
(startapp "Notepad++") не получилось
на выбор:
1. укажи полный путь
2. добавь в PATH (системную переменную Windows) путь к этому файлу
3. добавь в Support Files Search Path каталог размещения этого файла (но применительно к данной задаче, это извращение)
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 01.09.2012, 14:25
#10
pro9

Конструктор
 
Регистрация: 01.09.2012
Уфа
Сообщений: 80


Спасибо!
Указал полный путь и за место (chr 92) поставил //
pro9 вне форума  
 
Непрочитано 01.09.2012, 14:31
#11
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от pro9 Посмотреть сообщение
Спасибо!
Указал полный путь и за место (chr 92) поставил //
я бы всё же выбрал 2-й вариант (PATH), т.к. каталог размещения этой программы будет различным для Windows x86/x64.
имхо.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Макрос для запуска текстового файла из Автокада

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
бетонирование в зимних условиях тен Технология и организация строительства 107 21.12.2013 13:59
Резервуар 250м.куб. на проверку dextron3 Инженерные сети 42 07.05.2011 15:59
Помогите сделать макрос для автокада Sky_cool Программирование 8 17.01.2009 03:04
Мониторы LCD CRT Разное 94 17.06.2008 10:51
Пишу макрос для кнопки. Нужно задать ожидание ввода. boban Программирование 2 08.04.2005 21:26