ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #4491  
Старый 19.12.2009, 21:47
PandoraBox
Постоянный
Регистрация: 06.05.2007
Сообщений: 393
Провел на форуме:
1510937

Репутация: 398
Отправить сообщение для PandoraBox с помощью ICQ
По умолчанию

Какой компонент нужен для работы с графами в C++ Builder и рисование (карта сети) по хаб устройствам ?

Для C++ Builder v6 или RAD Studio 2010, или где посмотреть пример работы Boost Graph Library для виндовс ?
 
Ответить с цитированием

  #4492  
Старый 19.12.2009, 21:57
razb
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
Провел на форуме:
2868783

Репутация: 414


Отправить сообщение для razb с помощью ICQ
По умолчанию

Цитата:
или где посмотреть пример работы Boost Graph Library для виндовс
По графам в бусте даже небольшая книга написана, так и ищи в гугле "C++ Boost Graph Library book"
 
Ответить с цитированием

  #4493  
Старый 19.12.2009, 22:01
PandoraBox
Постоянный
Регистрация: 06.05.2007
Сообщений: 393
Провел на форуме:
1510937

Репутация: 398
Отправить сообщение для PandoraBox с помощью ICQ
По умолчанию

Цитата:
Сообщение от anasta  
Можно ли как-нибудь реализовать отправку e-mail по средствам C?
Код:
// Yuri Zarechny for News2News (c) 2006 
 
#include "stdafx.h"
//#include < windows.h >
#include < winsock2.h >  //link ws2_32.lib
#include "conio.h" 
 
struct _sendmail {
    LPSTR host;
    LPSTR IP;
    LPSTR sender;
    LPSTR recip;
    LPSTR subject;
    LPSTR body;
    SOCKET hSocket;
} sendmail;
 
BOOL InitSock(LPSTR Server)
{
    WSADATA wsd;
    if (WSAStartup(MAKEWORD(2,2), &wsd) > 0)
    {
        printf("Winsock init error: %d\n", WSAGetLastError());
        return false;
    }
    return true;
}
 
LPSTR GetIP(LPSTR h)
{
    in_addr ia;
    hostent* hbn;
    unsigned int addr;
 
    if (isalpha(h[0])) hbn = gethostbyname(h);
    else
    {
        addr = inet_addr(h);
        hbn = gethostbyaddr((char *)&addr, 4, AF_INET);
    }
 
    if (hbn==0) return "";
    ia.S_un.S_addr=*(DWORD *)hbn->h_addr_list[0];
    return inet_ntoa(ia);
}
 
BOOL ValidateEnvelope(LPSTR h, LPSTR r, LPSTR s, LPSTR *ip)
{
    if (h=="" || r=="" || s=="")
    {
        printf("Invalid host or sender/recipient email address\n");
        return false;
    }
    *ip=GetIP(h);
    if (*ip=="")
    {
        printf("Can not resolve host name %s to ip address\n", h);
        return false;
    }
    return true;
}
 
BOOL ConnectTo()
{
    const u_short SMTP_PORT=25;
    sockaddr_in sa;
    sa.sin_family=AF_INET;
    sa.sin_addr.S_un.S_addr=inet_addr(sendmail.IP);
    sa.sin_port=htons(SMTP_PORT);
    return (connect(sendmail.hSocket, (SOCKADDR *)&sa, sizeof(sa))==0); 
}
 
BOOL snd(LPSTR txt, bool resp)
{
    char tx[4096];
    sprintf(tx, "%s\r\n", txt);
 
    if (send(sendmail.hSocket, tx, strlen(tx),0)==SOCKET_ERROR)
    {
        printf("%s%s\n", tx, " - send operation failed.");
        return false;
    }
    if (!resp) return true;
 
    while (true)
    {
        char rcv[1024];
        char outp[255]="";
 
        HANDLE hEvent=WSACreateEvent();
        WSAEventSelect(sendmail.hSocket,hEvent,FD_READ);
        DWORD nWait=WSAWaitForMultipleEvents(1, &hEvent, 0, 1000, 0);
        WSACloseEvent(hEvent);
        if (nWait!=0) return false; 
        recv(sendmail.hSocket, rcv, sizeof(rcv),0);
 
        strncpy(outp, rcv, strcspn(rcv, "\n")+1);
        printf("%s\n", outp);
    }
    return true;
}
 
BOOL SendMail()
{
    if (!ValidateEnvelope(sendmail.host, sendmail.recip, 
        sendmail.sender, &sendmail.IP)) return false;
 
    char tmp[255];
    if (sendmail.sender=="" || sendmail.recip=="" ||
        sendmail.body=="" || sendmail.subject=="") return false;
 
    sendmail.hSocket=socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
    if (sendmail.hSocket==SOCKET_ERROR) return false; 
 
    if (!ConnectTo())
    {
        printf("Unable to connect to the server.\n");
        return false;
    }
    snd("HELO", true);
 
    sprintf(tmp, "%s%s%s", "MAIL FROM:<", sendmail.sender, ">");
    snd(tmp, true);
    sprintf(tmp, "%s%s%s", "RCPT TO:<", sendmail.recip, ">");
    snd(tmp, true);
 
    snd("DATA", true);
    sprintf(tmp, "%s%s", "From: ", sendmail.sender);
    snd(tmp, false);
    sprintf(tmp, "%s%s", "To: ", sendmail.recip);
    snd(tmp, false);
    sprintf(tmp, "%s%s", "Subject: ", sendmail.subject);
    snd(tmp, false);
    snd("", false);
    snd(sendmail.body ,false);
    snd(".", true);
 
    snd("NOOP", true);
    snd("QUIT", true);
    closesocket(sendmail.hSocket);
 
    return true;
}
 
void _tmain() {
    // provide valid host name and email addresses 
    sendmail.host = "smtp.myisp.ca";
    sendmail.sender = "sender@myisp.ca";
    sendmail.recip = "recipient@myisp.ca";
 
    sendmail.subject = "Testing Winsock SMTP functionality";
    sendmail.body = "Test message:\n\n" 
        "Windows Sockets (Winsock) provides a general-purpose networking " 
        "application programming interface (API) based on the socket "
        "interface from the University of California at Berkeley.\n";
 
    if (InitSock(sendmail.host))
    {
        SendMail();
        WSACleanup();
    }
 
    printf("\nPress ENTER to quit");
    getch(); 
    return;
}
 
Ответить с цитированием

  #4494  
Старый 19.12.2009, 22:04
PandoraBox
Постоянный
Регистрация: 06.05.2007
Сообщений: 393
Провел на форуме:
1510937

Репутация: 398
Отправить сообщение для PandoraBox с помощью ICQ
По умолчанию

Цитата:
Сообщение от razb  
По графам в бусте даже небольшая книга написана, так и ищи в гугле "C++ Boost Graph Library book"
есть какая то альтернатива постройки карты сетей (+ подсети из Switch тоже выводить) ?

Последний раз редактировалось PandoraBox; 19.12.2009 в 22:30..
 
Ответить с цитированием

  #4495  
Старый 19.12.2009, 22:33
«Adult Holding»
Banned
Регистрация: 07.10.2009
Сообщений: 128
Провел на форуме:
725524

Репутация: 63
Отправить сообщение для «Adult Holding» с помощью ICQ
По умолчанию

Господа, напишите код на Visual С++:
Вывождение графика ф-ций: y=3x-cos(x) - 1

Буду дико благодарен!
 
Ответить с цитированием

  #4496  
Старый 19.12.2009, 23:59
Lee_fx
Познающий
Регистрация: 27.09.2008
Сообщений: 57
Провел на форуме:
265628

Репутация: 23
По умолчанию

Вывождение ну зачем так людей пугать)
 
Ответить с цитированием

  #4497  
Старый 20.12.2009, 00:29
SaiRus
Постоянный
Регистрация: 24.11.2008
Сообщений: 416
Провел на форуме:
910902

Репутация: 100
По умолчанию

Цитата:
Сообщение от «Adult Holding»  
Господа, напишите код на Visual С++:
Вывождение графика ф-ций: y=3x-cos(x) - 1

Буду дико благодарен!
как раз пишу, только на билдере, могу дать сам функцию подставишь...только она не только график выводит...


Собственно мой вопрос
- язык с++ билдер
-имеется юнит1.h, юнит2.h
-в юнит1.cpp прописан класс, в классе функция fx(х) вычисляет функцию по х

немогу заюзать класс в юнит2.h как понял надо extern'ом тащить, класс вытаскиваю, дальше пытаюсь определить переменную для этого класса ни хера кароче...как правильно подключить этот класс? спасибо
 
Ответить с цитированием

  #4498  
Старый 20.12.2009, 01:08
razb
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
Провел на форуме:
2868783

Репутация: 414


Отправить сообщение для razb с помощью ICQ
По умолчанию

Цитата:
Господа, напишите код на Visual С++:
Вывождение графика ф-ций: y=3x-cos(x) - 1

Буду дико благодарен
Подобные запросы пишем в соседнюю тему с лабами, тут задаем конкретные вопросы.

Цитата:
есть какая то альтернатива постройки карты сетей (+ подсети из Switch тоже выводить) ?
Немного не ясно что тебе необходимо сделать, поподробней ...

Цитата:
Собственно мой вопрос
- язык с++ билдер
-имеется юнит1.h, юнит2.h
-в юнит1.cpp прописан класс, в классе функция fx(х) вычисляет функцию по х

немогу заюзать класс в юнит2.h как понял надо extern'ом тащить, класс вытаскиваю, дальше пытаюсь определить переменную для этого класса ни хера кароче...как правильно подключить этот класс? спасибо
У тебя в юнит1.h обьявление класса, в юнит1.срр реализация так?
Цитата:
немогу заюзать класс в юнит2.h
инклюдь сюда первый хэдэр.

Последний раз редактировалось razb; 20.12.2009 в 01:13..
 
Ответить с цитированием

  #4499  
Старый 20.12.2009, 01:23
SaiRus
Постоянный
Регистрация: 24.11.2008
Сообщений: 416
Провел на форуме:
910902

Репутация: 100
По умолчанию

юнит1:
грубо говоря

Код:
class myClass
	{
	 float x;


	 public:
	 float adr,bdr,n,a1,b1,c,x2,x3,x1,Xmin,Ymin,h1,eps1,num;
	 bool flagForm3,FlagF;
	 int k;
	 float AllEx[3];


 //--------------------------Функция---------------------
	 float fx(float num)
	 {
      x=num;
      return (2*x*x-12.5)*cos(x);
	 }
//тут еще функции

}
myClass calculate;

//........и дальше текст еще проги..............
юнит2
Код:
#include "Unit1.h"

void __fastcall TForm3::FormShow(TObject *Sender)
{float a,b,h,Y;
	int x0,y0;
a=StrToFloat(Form1->Edit1->Text);
b=StrToFloat(Form1->Edit2->Text);
Y=calculate.fx(a);
h=StrToFloat(Form1->Edit3->Text);
}
говорит не определенный символ calculate и в юнит2 если написать myClass calculate; в объявлении переменных говорит ошибка описания переменных, хотя инклудить не рекомендуют но мне уже чет пофиг, но как то можно еще extern'ом, ваще инфу не могу найти...
ПС: реализация в юнит2, а описание в юнит1...

Последний раз редактировалось SaiRus; 20.12.2009 в 01:26..
 
Ответить с цитированием

  #4500  
Старый 20.12.2009, 01:36
Ra$cal
Постоянный
Регистрация: 16.08.2006
Сообщений: 640
Провел на форуме:
1354067

Репутация: 599


По умолчанию

зачем объект объявляешь прямо в хидере с описанием класса? его обычно объявляют в том классе, который будет его использовать. так же у тебя будут проблемы, когда ты проинклюдишь этот класс более чем в одном файле. нужно будет ставить модификатор static.
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Часто задаваемые вопросы по MySQL Серый PHP, PERL, MySQL, JavaScript 5 28.12.2006 18:26
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Форумы 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


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




ANTICHAT.XYZ