Jump to content

Имитация ввода команд в командную строку из VBA


Recommended Posts

Учусь по замечательной статье  Дмитрия Руденко habr.com/ru/post/238867 про Nanocad и VBA работать с Нанокадом.

 

Столкнулся с такой проблемой.

Отлично работает имитация ввода простых команд в командную строку, например
ThisDrawing.SendCommand «CIRCLE» & vbCr & «100,100,0» & vbCr & «1000» & vbCr

Но как работать с командами, после которых открываются модальные окна?


Конкретно, мне нужно выполнить команду «pdfimport». Но после этой команды открывается окно открытия файла (а после него — окно выбора параметров импорта), то есть вариант типа ThisDrawing.SendCommand «pdfimport» & vbCr & file_name & vbCr &…
не работает.

 

Возможно, можно как-то выполнить эту процедуру и без командной строки, но такого я тоже не знаю.

 

Общая задача - импортировать чертежи из множества pdf-файлов. Поэтому этот алгоритм должен выполнятся сам, автоматически, без открытия каких-либо окон.

Link to comment
Share on other sites

17 минут назад, Андрей Х сказал:

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

я сейчас подобные кейсы решаю на RPA. c окнами но скриптом. так тоже бывает.
https://www.youtube.com/watch?v=wU16fhQdfNw

либо разбирайтесь с .net/multicad api - оно самое развитое пожалуй.
P.S. ну и конечно "ThisDrawing.SendCommand" - это стоит использовать только тогда , когда в API нет прямого вызова нужно функции.

Edited by Ivanco
  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Tell a friend

    Love Официальный форум компании Нанософт? Tell a friend!
×
×
  • Create New...