RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : Ответить на сообщение
Имя:
e-mail:
FIDO:
Home page:
сохранить данные о вас
Тема:
> Простая программа (см ниже) при выполнении fdopen говорит что, мол, access denied. Причем если убрать строчку со "********" в комментарии, то всё работает. Не мог бы кто-нибудь просветить, где прочитать, какая разница между HFILE hfile в оси и int handle в сях, и как из первого сделать второе? > > Компилятор WC++ 10.0 > > ----- begin ----- > #include "stdio.h" > #include "assert.h" > #include "stdlib.h" > #define INCL_DOS > #include "os2.h" > > int main () > { > int i; > HFILE hf; > ULONG ttt; > FILE *f; > > assert ( fopen ("tmp", "w") != 0 ); // сам файл нам не нужен ************* > > assert ( DosOpen ("tmp2", & hf, & ttt, 0, 0, > OPEN_ACTION_CREATE_IF_NEW | OPEN_ACTION_REPLACE_IF_EXISTS, > OPEN_SHARE_DENYREADWRITE | OPEN_ACCESS_READWRITE, 0) == 0 ); > > f = fdopen (hf,"r+"); > if (f==0) > { > printf ("fdopen error, errno=%d\n", errno); > return 1; > } > printf ("All ok"); > return 0; > } > ----- end ----- > > Примечание: Если есть чем сишным заменить DosCreateNPipe, то проблему можно считать почти решенной.
_, _, _, _, _ _ _,_
(_ | / \ |\ | | |_/
, ) | , \ / | \| | | \
~ ~~~ ~ ~ ~ ~ ~ ~
Programmed by
Dmitri Maximovich
,
Dmitry I. Platonoff
,
Eugen Kuleshov
.
25.09.99 (c) 1999,
RU/2
. All rights reserved.
Rewritten by
Dmitry Ban
. All rights ignored.