Получать необработанные данные печати в asp.net? - PullRequest
1 голос
/ 27 июля 2011

Я хотел бы иметь возможность установить принтер на клиенте Windows. Когда кто-то печатает на указанном принтере, он захватывает поток печати и выгружает его в файл. В конечном итоге мне нужно будет проанализировать эти данные и поместить результаты в базу данных SQL. Это возможно? с чего начать.

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

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

1 Ответ

2 голосов
/ 27 июля 2011

RedMon - это небольшая оболочка драйвера принтера, которая перенаправляет данные печати в выбранную вами программу.

Вам потребуется установить две вещи на клиенте Windows:

  1. RedMon
  2. ваша пользовательская программа (написанная на C # или как угодно)

Когда пользователь «печатает» на виртуальном принтере, RedMon отправляет данные в вашу пользовательскую программу, которая анализирует их, сохраняет в базе данных и т. Д.

не могу ничего установить на компьютер ... настроить сетевой принтер

Для вашей ситуации обратите внимание на эту ключевую часть документации RedMon :

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

Принтер PostScript для Windows, перенаправленный на порт RedMon , может совместно использоваться в сети . Когда этот принтер настроен на использование Ghostscript и принтера, отличного от PostScript, он отображается как принтер PostScript для других сетевых клиентов.

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

В Windows 7 RedMon имеет причуды , но есть обходной путь .

См. Также: Как написать драйвер для виртуального принтера

...