Нам нужно иметь возможность изменить выбранный лоток для печати данного принтера. У кого-нибудь есть код VC++/win32 для этого?Как управлять выбором лотка принтера для принтера в Windows
В случае, если это имеет значение, я считаю, что мы должны изменить настройку по умолчанию для принтера. Наши задания на печать выполняются приложением, отличным от нашего, поэтому мы не можем делать такие изменения в контексте операции печати, происходящей из нашего приложения. Если какой-либо способ изменить настройки печати по умолчанию в другом приложении, я думаю, что мы застряли, изменив настройки пользователя по умолчанию для принтера, инициировав наше задание на печать, а затем установив значения по умолчанию на исходные значения.
Мы бы действительно предпочитают иметь значения по умолчанию изменится только для текущего пользователя, и не требует какого-либо специального возвышения UAC, и т.д. ...
Я подозреваю, что он будет использовать что-то подобное тому, что показано в this MSDN article , и включать поля установки в структуру DEVMODE (либо dmDefaultSource, либо dmFormName или оба).
Любые берущие? Или у кого-нибудь есть какие-то ошибки, которые они хотели бы разделить?
EDIT: Вот ссылка для DEVMODE документации DEVMODE documentation
EDIT: Я хотел бы также отметить, что мы ищем общее решение - не что-то конкретное для конкретного принтера (мы разместим во многих, многих средах)
Не думаю, что вам было бы интересно расширить свой ответ? Как вы захватываете текущий DEVMODE? Как заменить его на сохраненный? – 2012-12-12 14:57:31