Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Вызов окна спулера печати

18K
24 августа 2006 года
e2e4
6 / / 04.08.2006
Всем здрасте!

Подскажите, плиз, как вызвать из VB/VBA стандартное окошко спулера принтера.
(это которое настройка/принтеры и факсы/HP1200/)
15K
24 августа 2006 года
KAN
40 / / 08.08.2006
ставишь на форму commondialog :rolleyes:
 
Код:
commondialog1.showprinter
18K
24 августа 2006 года
e2e4
6 / / 04.08.2006
 
Код:
commondialog1.showprinter

Это не то.
Нужно окно со списком отправленных на печать заданий (чтоб можно удалить задание, приостановить и т.д.)
403
24 августа 2006 года
ace lighting
411 / / 05.05.2006
Такое окошко вылезает в трее только когда ты что-нибудь печатаешь.
18K
24 августа 2006 года
e2e4
6 / / 04.08.2006
[QUOTE=ace lighting]Такое окошко вылезает в трее только когда ты что-нибудь печатаешь.[/QUOTE]
Естественно. Но как его вызвать программно?:confused:
У меня к одному компу подключено 6! принтеров:eek: , и хотелось бы иметь возможность просмотреть очередь заданий и т.д. для любого из них с одного клика мышкой!
405
18 октября 2006 года
Dmitrii
554 / / 16.12.2004
[QUOTE=e2e4]Естественно. Но как его вызвать программно?:confused:
У меня к одному компу подключено 6! принтеров:eek: , и хотелось бы иметь возможность просмотреть очередь заданий и т.д. для любого из них с одного клика мышкой![/QUOTE]
Как говорится: "Лучше поздно, чем никогда".
Вот вариант решения Вашей задачи:
 
Код:
Sub Example()
Set objShellApp = CreateObject("Shell.Application")
Set objFolder = objShellApp.NameSpace(&H4)
numItems = objFolder.Items.Count
Set curItem = objFolder.Items.Item(numItems - 1)
curItem.InvokeVerb
End Sub

В этом примере предполагается, что нужный принтер является последним по счёту в общем списке (numItems - 1).
Если нужно узнать порядок следования элементов папки "Принтеры", то можно воспользоваться вот таким способом:
 
Код:
Set objShellApp = CreateObject("Shell.Application")
Set objFolder = objShellApp.NameSpace(&H4)
numItems = objFolder.Items.Count
For curItem = 0 To numItems - 1
    MsgBox objFolder.Items.Item(curItem).Name
Next
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог