Составители:
Рубрика:
(HANDLE hFile,
LPVOID lpBuffer,
DWORD nNumberOfBytesToRead,
LPDWORD lpNumberOfBytesRead,
LPOVERLAPPED lpOverlapped);
BOOL WriteFile
(HANDLE hFile,
LPCVOID lpBuffer,
DWORD nNumberOfBytesToWrite,
LPDWORD lpNumberOfBytesWritten,
LPOVERLAPPED lpOverlapped);…
Чтобы закрыть файл, используется функция CloseHandle(). Эту функцию
можно использовать не только для закрытия дескрипторов файлов.
С ее помощью можно закрыть любой другой дескриптор:
BOOL CloseHandle( HANDLE hObject);…
Для примера приведен исходный код простой программы, использующей
файловые операции для отображения на экране содержимого одного или несколь-
ких файлов [4]. Вызов CreateFile() открывает файл для чтения. После этого вызов
GetStdHandle() возвращает дескриптор стандартного вывода. Затем при помощи
функций ReadFile() и WriteFile() блоками по 4 Кбайт происходит передача содер-
жимого файла с жесткого диска в стандартный поток вывода. Передача продолжа-
ется до тех пор, пока программа не обнаружит конец файла:
#include < windows.h >
// для удобства используем вместо MessageBox MB()
void MB(char *s)
{ MessageBox(NULL, s, NULL, MB_OK | MB_ICONSTOP);
}
// основная подпрограмма
void docat(char *fname)
{
HANDLE f = CreateFile (fname, GENERIC_READ, 0, NULL,
OPEN_EXISTING, 0, NULL);
HANDLE out = GetStdHandle(STD_OUTPUT_HANDLE);
if (f == INVALID_HANDLE_VALUE)
{
MB(«He могу открыть файл»);
exit(1);
}
char buf[4096];
unsigned long n;
do
62
(HANDLE hFile,
LPVOID lpBuffer,
DWORD nNumberOfBytesToRead,
LPDWORD lpNumberOfBytesRead,
LPOVERLAPPED lpOverlapped);
BOOL WriteFile
(HANDLE hFile,
LPCVOID lpBuffer,
DWORD nNumberOfBytesToWrite,
LPDWORD lpNumberOfBytesWritten,
LPOVERLAPPED lpOverlapped);…
Чтобы закрыть файл, используется функция CloseHandle(). Эту функцию
можно использовать не только для закрытия дескрипторов файлов.
С ее помощью можно закрыть любой другой дескриптор:
BOOL CloseHandle( HANDLE hObject);…
Для примера приведен исходный код простой программы, использующей
файловые операции для отображения на экране содержимого одного или несколь-
ких файлов [4]. Вызов CreateFile() открывает файл для чтения. После этого вызов
GetStdHandle() возвращает дескриптор стандартного вывода. Затем при помощи
функций ReadFile() и WriteFile() блоками по 4 Кбайт происходит передача содер-
жимого файла с жесткого диска в стандартный поток вывода. Передача продолжа-
ется до тех пор, пока программа не обнаружит конец файла:
#include < windows.h >
// для удобства используем вместо MessageBox MB()
void MB(char *s)
{ MessageBox(NULL, s, NULL, MB_OK | MB_ICONSTOP);
}
// основная подпрограмма
void docat(char *fname)
{
HANDLE f = CreateFile (fname, GENERIC_READ, 0, NULL,
OPEN_EXISTING, 0, NULL);
HANDLE out = GetStdHandle(STD_OUTPUT_HANDLE);
if (f == INVALID_HANDLE_VALUE)
{
MB(«He могу открыть файл»);
exit(1);
}
char buf[4096];
unsigned long n;
do
62
Страницы
- « первая
- ‹ предыдущая
- …
- 60
- 61
- 62
- 63
- 64
- …
- следующая ›
- последняя »
