Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
 Аватар для Gus
26 / 37 / 10
Регистрация: 17.02.2009
Сообщений: 364

То что читал то не помогло! Не смог исправить ошибку

18.10.2010, 23:36. Показов 1480. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Все в интернете перечитал, ничего не получается исправить ! в исходниках тот же код, но билдер ругается на него !
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#include <vcl.h>
#pragma hdrstop
 
#include "Unit1.h"
#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 
 
 
 
 
 
void __fastcall TForm1::N5Click(TObject *Sender)
{
 if(Form2->ComboBox1->Text == "Чеб21")
 {
 Client->Address = "10.20.123.58";
 Client->Port = 556;
 Client->Active = true;
 Client->Open() ;
 }
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::ClientConnect(TObject *Sender,
      TCustomWinSocket *Socket)
{
 
 Memo1->Lines->Add("Вы присоеденились ;");
}
void __fastcall TForm1::ClientRead(TObject *Sender,
      TCustomWinSocket *Socket)
{
 Memo1->Lines->Add(Client->Socket->ReceiveText());
 }
//---------------------------------------------------------------------------
 
 
void __fastcall TForm1::N6Click(TObject *Sender)
{
Form2->Show();
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
if (Client->Active == false)
{
Memo1->Lines->Add("Вы даже не подключились к серверу! Как вы можете отправить сообщение ????");
if (Edit1->Text == "")
{
Memo1->Lines->Add("Пожалуйста не отправляйте пустые сообщения!");
}
}
Form1->Client->Socket->SendText(Form2->Edit1->Text + Edit1->Text);
}
//---------------------------------------------------------------------------
Кто может помогите, счас к исходнику видео билдера добавлю

Добавлено через 15 минут
Если можно причину возникновения этой ошибки !

Добавлено через 14 минут
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.10.2010, 23:36
Ответы с готовыми решениями:

Не работает ссылка, самостоятельно найти и исправить ошибку не смог.
Всем привет. Если на сайт http://bigsys.ru/ войти, используя Google Chrome, не работает ссылка mailto: в botbar нижней части сайта....

подскажите как исправить код что бы я смог обратиться к папке с дальнейшим чтением файлов в ней?
подскажите как исправить код что бы я смог обратиться к папке с дальнейшим чтением файлов в ней? int main() { WIN32_FIND_DATA...

Создание простого приложения для Windows 9x/NT, решил как смог. Пожалуйста подскажите что исправить или добавить
задание: окно фон зелёный размер 500х400 курсор IDT_HAND При закрытии окна вывести ФИО Мой вариант: ...

11
 Аватар для oxotnik
1665 / 1134 / 80
Регистрация: 21.08.2008
Сообщений: 4,734
Записей в блоге: 1
18.10.2010, 23:45
че хоть за ошибка то? или весь фильм в 3Д надо смотреть?
по мойму легче было скопировать текст ошибки сюда, нежели к продюсеры играться
0
 Аватар для Gus
26 / 37 / 10
Регистрация: 17.02.2009
Сообщений: 364
18.10.2010, 23:48  [ТС]
C++
1
[C++ Error] Unit1.cpp(44): E2316 '_fastcall TForm1::ClientRead(TObject *,TCustomWinSocket *)' is not a member of 'TForm1'
Вам всем не угодишь =) я сделал эту видео запись для, более коректного понимания мой ошибки
0
Эксперт С++
 Аватар для MikeSoft
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
19.10.2010, 00:53
Gus, опять та же ошибка?
Я последний раз предупреждаю: В следующий раз за N-ый дубляж одинаковых ошибок в разных темах я выдам карточку.

Объясняю ещё раз то, что объяснял всегда:
1. Копируя исходный код откуда-то вы забываете о том, что функции не привязаны к событиям.
2. Выполнив простую копию вы указываете, что функция находится в классе, но не декларируете эту функцию в заголовочном файле.

А вы никак это не хотите понять, хотя на заголовочный (*.h) файл я намекаю вам уже сотый раз.

Выход:
1. Писать самому! И вставлять важные моменты из чужого кода, если по подобию не можете написать свой.
2. По поводу данной ошибки:
2.1. В данном файле добавить прототип функции в заголовочный файл.
2.2. Перейти наконец-то в событиям компонента и указать ему данную функцию.
0
 Аватар для Gus
26 / 37 / 10
Регистрация: 17.02.2009
Сообщений: 364
19.10.2010, 01:09  [ТС]
Можно по проще намекать т.к нету у меня знаний полного программирования (т.е я самоучка) а копирую я код, набиваю руку.
Просто я кое каких вещей недопонимаю ClientConnect работает, буилдер не ругается...
Как же ClientRead то тут же выдает ошибку. !

Добавлено через 7 минут
Удобненький понятненький примерчик поможет мне
0
Эксперт С++
 Аватар для MikeSoft
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
19.10.2010, 01:26
Цитата Сообщение от Gus Посмотреть сообщение
а копирую я код, набиваю руку.
Никогда вы так руку не набъёте, если и после моих слов просите код.
Какой тут может быть код? Прототип функции добавьте в public зону класса.

Тут не ClientServer "виноват", а отсутствие описания любой используемой функции в классе.

Вот этого:
C++
1
void _fastcall ClientRead(TObject *,TCustomWinSocket *);
в public области.
0
 Аватар для Gus
26 / 37 / 10
Регистрация: 17.02.2009
Сообщений: 364
19.10.2010, 01:31  [ТС]
Цитата Сообщение от MikeSoft Посмотреть сообщение
Никогда вы так руку не набъёте, если и после моих слов просите код.
Какой тут может быть код? Прототип функции добавьте в public зону класса.

Тут не ClientServer "виноват", а отсутствие описания любой используемой функции в классе.

Вот этого:
C++
1
void _fastcall ClientRead(TObject *,TCustomWinSocket *);
в public области.
Прощу прощенья, но я с классами не очень дружу. Т.к не дочитал их. я умею объявлять их и использовать. Что то я тут не вижу класс и где тут ставить метку publuc: ?

Добавлено через 2 минуты
О все догнал.
C++
1
2
3
4
void _fastcall ClientRead(TObject *,TCustomWinSocket *)
{
 Form1->Memo1->Lines->Add(Form1->Client->Socket->ReceiveText());
 }
этот код корректен ?
0
Эксперт С++
 Аватар для MikeSoft
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
19.10.2010, 01:38
Цитата Сообщение от Gus Посмотреть сообщение
этот код корректен ?
Нет. Так как он не относится к классу TForm1, на которой расположен компонент.
Не изменяйте то, что в *.cpp файле. Отредактируйте класс TForm1, расположенный в хидере.
1
 Аватар для Gus
26 / 37 / 10
Регистрация: 17.02.2009
Сообщений: 364
19.10.2010, 01:44  [ТС]
Цитата Сообщение от MikeSoft Посмотреть сообщение
Нет. Так как он не относится к классу TForm1, на которой расположен компонент.
Не изменяйте то, что в *.cpp файле. Отредактируйте класс TForm1, расположенный в хидере.
Во, это подсказка. Так бы сразу.... Откомпилила родная =))
0
Эксперт С++
 Аватар для MikeSoft
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
19.10.2010, 01:50
Цитата Сообщение от Gus Посмотреть сообщение
Во, это подсказка. Так бы сразу.... Откомпилила родная =))
Да я уже устал вам говорить о хидере. Почитайте свои темы. Везде ж одно и то же пишу.

Не по теме:

И поверьте мне на слово: Если я ворчу, то в большинстве случаев, делаю это не зря.

0
 Аватар для Gus
26 / 37 / 10
Регистрация: 17.02.2009
Сообщений: 364
19.10.2010, 01:50  [ТС]
еще 1 вопрос есть. Не по теме но вопрос же =)

как конкретно узнать пользователя. К примеру имеются исходники посыла текста с клиента к серверу
Сервер должен определить какой это клиент, и отправить ему отдельное сообщение описанное в файле (готов уже кусок программы)
0
Эксперт С++
 Аватар для MikeSoft
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
19.10.2010, 02:00
Цитата Сообщение от Gus Посмотреть сообщение
как конкретно узнать пользователя.
Когда на сервере возбуждается событие OnRead (или подобное), в функцию-обработчик передаётся класс, который содержит в себе нужный сокет. В него и нужно записывать ответ.

Я работаю в новой IDE, поэтому код привести смогу только из новых реализаций...
Но в старых должны быть примерно такие же действия, посмотрите в доступных методах...

Вот такой прототип у функции-обработчика события OnExecute для сервера.
C++
1
void __fastcall TMainControl::TCPServerExecute(TIdContext *AContext)
AContext - указатель на объект класса, о котором я говорил.

Получить IP адрес и порт клиента можно так:
C++
1
String PeerInfo = AContext->Binding->PeerIP + ":" + IntToStr(AContext->Binding->PeerPort;
И послать ответ этому клиенту так:
C++
1
AContext->Connection->Socket->WriteLn("Message");
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.10.2010, 02:00
Помогаю со студенческими работами здесь

Скачал Clion, установил MinGW, пытался настроить, но так и не смог. Clion говорит, что Cmake выдаёт ошибку
Скачал Clion, установил MinGW, пытался настроить, но так и не смог. Clion говорит, что Cmake выдаёт ошибку -- The C compiler...

Не смог найти ошибку
Добрый день. Мне дано следующее задание: Дано натуральное число n (n ≤ 9999). Верно ли, что все четыре цифры числа различны? Я...

Что делать что-бы исправить ошибку!
Привет Всем!!!! Установил я шаблон на Prestashop. Хочу зайти в админку, но вижу белый экран и это: Fatal error: Class...

Выдает ошибку, подскажите что исправить
from tkinter import * from math import sqrt #sqrt(x) from math import sin #sin(x) def qwerty1(): alementa1 =...

Не могу найти ошибку в программе. Что исправить?
Программа проходит все мои тесты, однако проверку на сайте не проходит, выкидывает следующее сообщение: Ошибка времени выполнения ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru