Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > C++ > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 01.04.2012, 05:45   #1
Madmaxisss
Форумчанин
 
Регистрация: 12.07.2011
Сообщений: 158
Репутация: 10
По умолчанию ReadFile()

Люди добрые помогите с функ. ReadFile()
как заставить перем. tt вывести строку "werrwerwerwerwerwer", а не коляболя??


Код:
void CMy123Dlg::OnBnClickedButton1()
{
	char t[]="werrwerwerwerwerwer";
	DWORD pdd;
	HANDLE hF=CreateFile(_T("C:\\file\\1Cfile.txt"),
							GENERIC_READ|GENERIC_WRITE,
							0,
							NULL,
							CREATE_ALWAYS,
							0,
							NULL
						);

		WriteFile(hF, t, sizeof(t), &pdd, NULL);
		char tt[12];
		SetFilePointer(hF,sizeof(tt),NULL,FILE_BEGIN);
		ReadFile(hF, tt, sizeof(tt), &pdd, NULL);
		CString ss(tt);
		m_s=ss; // m_s тип CString выводит на экран "статик текст"
		CloseHandle(hF);
		UpdateData(false);
}

Последний раз редактировалось Stilet; 01.04.2012 в 13:29.
Madmaxisss вне форума   Ответить с цитированием
Старый 01.04.2012, 19:21   #2
microbit
Форумчанин
 
Аватар для microbit
 
Регистрация: 26.09.2011
Адрес: Новороссийск
Сообщений: 176
Репутация: 39

icq: 374739480
По умолчанию

не могу понять что вы хотите добиться этим кодом?
microbit вне форума   Ответить с цитированием
Старый 01.04.2012, 22:07   #3
Madmaxisss
Форумчанин
 
Регистрация: 12.07.2011
Сообщений: 158
Репутация: 10
По умолчанию

все просто есть строка char t[]="werrwerwerwerwerwer";
она записывается в файл. потом она прочитывается функцией ReadFile потом прочитанная информ. заносится в перем m_s но в m_s заноссятся непонятные символы, а мне нужно чтоб заносилась строка "werrwerwerwerwerwer"

Последний раз редактировалось Madmaxisss; 01.04.2012 в 22:20.
Madmaxisss вне форума   Ответить с цитированием
Старый 01.04.2012, 22:56   #4
microbit
Форумчанин
 
Аватар для microbit
 
Регистрация: 26.09.2011
Адрес: Новороссийск
Сообщений: 176
Репутация: 39

icq: 374739480
По умолчанию

не понятно зачем вы смещаете на 12 байт указатель от начала файла, и почему у вас массив приёмный меньше чем вы хотите прочитать данных.

Код:
void CMy123Dlg::OnBnClickedButton1()
{
	char t[]="werrwerwerwerwerwer";
	DWORD pdd;
	HANDLE hF=CreateFile(_T("C:\\file\\1Cfile.txt"),
							GENERIC_READ|GENERIC_WRITE,
							0,
							NULL,
							CREATE_ALWAYS,
							0,
							NULL
						);

		WriteFile(hF, t, sizeof(t), &pdd, NULL);
		char tt[100];
		SetFilePointer(hF,NULL,NULL,FILE_BEGIN);
		ReadFile(hF, tt, sizeof(t), &pdd, NULL);
		CString ss(tt);
		m_s=ss; // m_s тип CString выводит на экран "статик текст"
		CloseHandle(hF);
		UpdateData(false);
}
microbit вне форума   Ответить с цитированием
Старый 02.04.2012, 01:01   #5
Madmaxisss
Форумчанин
 
Регистрация: 12.07.2011
Сообщений: 158
Репутация: 10
По умолчанию

аааа воно-но чё.... второй аргумент функции указателя сдвигает его. Ну спасибо.
Madmaxisss вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблема с ReadFile Fog Win Api 4 01.02.2011 13:51
Использование динамического массива в функции ReadFile (WinAPI). Korrado Помощь студентам 7 29.11.2009 14:38
ReadFile nazavrik Общие вопросы C/C++ 14 22.11.2009 16:11


00:01.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.