This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Multiple fopens fails with permission denied


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.

cgf

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
>tomas.pihl@netinsight.net     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       http://www.netinsight.net
>
>--
>Want to unsubscribe from this list?
>Send a message to cygwin-unsubscribe@sourceware.cygnus.com
>

-- 
cgf@cygnus.com                        Cygnus Solutions, a Red Hat company
http://sourcware.cygnus.com/          http://www.redhat.com/

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]