Создание приложений и игр на Visual C++

  • Автор темы Zau4ka
  • Дата начала
Статус
Закрыто для дальнейших ответов.
E

European

<!--QuoteBegin-Seva+11:08:2007, 15:33 -->
<span class="vbquote">(Seva @ 11:08:2007, 15:33 )</span><!--QuoteEBegin-->вот часть кода, который в консольном приложении (без первой и последней строки)успешно работает:
[snapback]75092" rel="nofollow" target="_blank[/snapback]​
[/quote]
CWnd::UpdateData
Call this member function to initialize data in a dialog box, or to retrieve and validate dialog data.
Данный метод предназначен для обмена данными с диалоговым окном.
Остальной код правильный, заголовочный файл atlstr.h подключен (#include <atlstr.h>)?
 
S

Seva

нет, не был подключён, я попробовал его включить и в файле программы и в StdAfx.cpp, не помогает- ошибка остаётся! в чём дело- не пойму и в инете не могу найти ответ... помогите, если кто знает как! спасибо.
 
E

European

Подключаешь его в том *.срр-файле, в котором пишешь этот код
 
S

Seva

:) ну так я и говорю, что подключал и в файле с программой (с кодом программы) тоже! ничего не меняется!
 
E

European

Для: Seva
У тебя МСДН есть? Вот поставь его, и убедись что нет у CString метода Substr нет.
 
S

Seva

да нет у меня МСДН (и на диске с VC6 тоже), а что есть в CString, чтобы часть строки копировать (вырезать и пр.)?
 
S

Seva

Ссылка интересная... только зачем давать ссылку на страницу, на которой НЕТ ответа? с тем же успехом можно дать ссылку на msdn.com , дальше, мол, сам ищи!
 
E

European

Мдя... После таких заяв, все желание помогать отпадает:
Код:
CStringT::Left - Extracts the left part of a string.
CStringT::Mid - Extracts the middle part of a string.
CStringT::Right - Extracts the right part of a string.
Это нет ответа?
 
S

Seva

Извиняюсь за резкое высказывание, НО я действительно не видел и не вижу на той странице такого текста.
 
E

European

CStringT::Mid - Extracts a substring of length nCount characters from this CStringT object, starting at position iFirst (zero-based).

CStringT Mid( int iFirst, int nCount ) const;
CStringT Mid( int iFirst ) const;

Parameters
iFirst - The zero-based index of the first character in this CStringT object that is to be included in the extracted substring.

nCount - The number of characters to extract from this CStringT object. If this parameter is not supplied, then the remainder of the string is extracted.

Return Value
A CStringT object that contains a copy of the specified range of characters. Note that the returned CStringT object may be empty.

Remarks
The function returns a copy of the extracted substring. Mid is similar to the Basic Mid function (except that indexes in Basic are one-based).
For multibyte character sets (MBCS), nCount refers to each 8-bit character; that is, a lead and trail byte in one multibyte character are counted as two characters.
 
S

Seva

продолжаю разбираться в С++... появилась необходимость, чтобы при нажатии на кнопку создавался файл. нашёл в интернете пример кода для этого:
Код:
char* pszFileName = "c:\\myfile.dat";
CFile myFile;
CFileException fileException;

if ( !myFile.Open( pszFileName, CFile::modeCreate |  
CFile::modeReadWrite, &fileException ) )
{
TRACE( "Can't open file %s, error = %u\n",
pszFileName, fileException.m_cause );
вставил, как обычно, в класс onButton (MFC), чтобы он выполнялся при нажатии кнопки, компилятор выдаёт ошибку

D:\Program Files\Microsoft Visual Studio\WinProjects\Файл\Файл.rc(199) : fatal error RC1015: cannot open include file 'l.rus\afxres.rc'.
Error executing rc.exe.
в принципе, я догадываюсь, что не может открыть какой-то файл... а вот почему- не знаю, подскажете? ведь другие программы компилируются нормально... может, в коде что-то не то? спасибо!
 
N

North

Очень забавно наблюдать за процессом написания программы путем копирования фрагментов чужого исходного кода. Поражают удивленные возгласы о том что оно не компилируется !
Могу посоветовать два варианта:

либо
 
S

Seva

Этот ответ Вы считаете информативным??? говнокод... культурные люди, блин. и это в стране языка Пушкина!
 
S

Seva

Здравствуйте! сегодня я не буду просить о помощи... нужен просто совет: при помощи какой функции лучше создать файл, в который можно записать переменную типа int? (MFC, visual C++ 6.0)цель: нужно сделать так, чтобы при нажатии кнопки создавался файл (*.txt), в котором бы сохранялась переменная int n, при каждом последующем нажатии переменная должна перезаписываться на n++ пробовал реализовать с помощью CFile, но ничего, кроме char[] я не могу записать в создаваемый файл, а нужно int! просто подскажите, пожалуйста- с помощью какой функции, а как, постараюсь сам разобраться... спасибо!
 
G

gerich

Здравствуй Seva, заходи на форум VisualBasic -> Присоединяйтесь к совместному написанию программы!
Мне хочется организовать группу программистов. Нужна любая поддержка и идеи.
Язык программирования, на котором ты пишешь значения не имеет!
 
E

European

<!--QuoteBegin-Seva+25:08:2007, 18:44 -->
<span class="vbquote">(Seva @ 25:08:2007, 18:44 )</span><!--QuoteEBegin-->пробовал реализовать с помощью CFile, но ничего, кроме char[] я не могу записать в создаваемый файл
[snapback]76348" rel="nofollow" target="_blank[/snapback]​
[/quote]
Значит неправильно записываешь
 
S

Seva

разве вот так не правильно:?
Код:
CFile sss;

char nBuf[100]="Здравствуйте, программисты!";

sss.Open("c:/bооt.ini", CFile::modeCreate | CFile::modeWrite);
sss.Write(nBuf, 100);
всё работает и в файл записывается, но стоит написатьint вместо char:
CFile sss;

int nBuf=1;

sss.Open("c:/bооt.ini", CFile::modeCreate | CFile::modeWrite);
sss.Write(nBuf, 10);
как сразу при компиляции ошибка:
error C2664: 'Write' : cannot convert parameter 1 from 'int' to 'const void *'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
и что тут неправильного?? я думал, что разобрался с CFile...
 
E

European

Компилятор же конкретно тебе говорит, что у тебя несоответствие типов. У тебя переменная, а функция хочет указатель на нее
 
N

North

Код:
int nBuf=1;

sss.Open("c:/bооt.ini", CFile::modeCreate | CFile::modeWrite);
sss.Write(&nBuf, 10);
Вот так должно компилироваться

Код:
int nBuf=1;

sss.Open("c:/bооt.ini", CFile::modeCreate | CFile::modeWrite);
sss.Write(&nBuf, sizeof(int));
Должно даже правильно работать

И ещё, предупреждаю что если nBuf равна скажем 1, то при данном способе записи в файл, эту самую единицу в файле ты не увидишь(имею ввиду символ "1"). Просто чтобы не искал.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!