Multiple fopens fails with permission denied

Chris Faylor
Thu Mar 16 08:45:00 GMT 2000

I don't believe that Windows allows you to open a com port twice
with both read and write access.

The usual way to deal with this is to open the file with "w+b"
options.  That provides a file pointer which can be both read to
and written from.

Be advised that the com port handling in B20.1 is not great, however.


On Thu, Mar 16, 2000 at 11:31:17AM +0100, Tomas Pihl wrote:
>I've installed B20.1 (full.exe) on a NT4.0 SP6 machine. When I try
>running the below included program I get:
>bash-2.02$ ./a.exe
>Couldn't open '/dev/com1' for input
>open: Permission denied
>It doesn't matter in which order I make the calls - fopen() always fail
>on the second fopen. Any ideas?
>int main()
>   FILE *fdin;
>   FILE *fdout;
>   char* device = "/dev/com1";
>   if ((fdout = fopen(device, "wb")) == NULL) {
>      printf("Couldn't open '%s' for output\n", device);
>      perror("open");
>      exit(1);
>   }
>   if ((fdin = fopen(device, "rb")) == NULL) {
>      printf("Couldn't open '%s' for input\n", device);
>      perror("open");
>      exit(1);
>   }
>Tomas Pihl                    Net Insight AB
>     Box 42093, SE-126 14 STOCKHOLM, SWEDEN
>Phone:  +46-8-685 04 95       Visiting address: Västberga Allé 9
>Fax:    +46-8-685 04 20
>Want to unsubscribe from this list?
>Send a message to

--                        Cygnus Solutions, a Red Hat company

Want to unsubscribe from this list?
Send a message to

More information about the Cygwin mailing list