Отправить файл на принтер на языке D (Windows)

#d

#d

Вопрос:

Я искал в Интернете, каким-то образом отправляя документы (txt) на принтер, но не нашел, как я могу отправить текстовые файлы на принтер с использованием языка D?

Комментарии:

1. как и в C или C с использованием Windows api

Ответ №1:

Как сказал ratchet freak в комментарии, это то же самое, что и в C, поэтому, если вы выполните поиск для печати текстовых файлов в Windows и найдете пример C, вы можете сделать это и в D тоже. Если структура или функция win32 недоступны, вы можете добавить их с extern(Windows) помощью, а затем подписи функции. Я знаю, что вы можете использовать принтер, как и любое другое графическое устройство, с функциями GDI, но это кажется сложнее, чем должно быть, idk, если есть более простой способ через win32 API.

Один из вариантов: я сейчас не в окне Windows, но я уверен, что команда print через оболочку работает и с текстовыми файлами, и это может быть самый простой способ. Вы могли бы использовать std.file.write для записи вашей строки в текстовый файл, а затем std.process.executeShell вызвать команду печати в этом файле.

http://dlang.org/phobos/std_process.html#.executeShell

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