Я пытаюсь напечатать только конкретную строку на линейном принтере. Я пытаюсь запустить этот фрагмент, но ничего не распечатывается. Я также рассматриваю список ожидающих заданий для принтера, и ничего не отображается, когда я запускаю код.Печать текстового текста в C не печатает
Я могу распечатать документы только из Word, поэтому принтер доступен.
Может кто-нибудь намекнуть на то, что проблема может быть?
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE* printer = 0;
if((printer = fopen("lpt1", "a+")) == NULL)
{
puts("error opening printer");
}
char* text = "This is a test printing";
if ((fprintf(printer, "%s" , text)) < 0 ){
perror("Printing error");
}
fflush(printer);
fclose(printer);
return 0;
}
Это 'lpt1' какой-то специальный файл? – cnicutar
Нет, это параллельный последовательный порт. Он отображается в диспетчере устройств вместе с COM1 COM2 и т. Д. – Ann
Я думаю, что большинство людей выводят файл, а затем распечатывают его из Windows. Но сделать это за один шаг, вам нужно открыть программу для вывода, а не файл. Это объясняется здесь: http://stackoverflow.com/questions/450865/what-is-the-equivalent-to-posix-popen-in-the-win32-api – dcaswell