HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

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

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

  #2401  
Старый 20.02.2009, 13:13
ss88
Участник форума
Регистрация: 27.11.2008
Сообщений: 161
Провел на форуме:
298300

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

переделал, просто искал, где она определена,
вобщем, #include <sys/utsname.h>
Еще раз спасибо

Последний раз редактировалось ss88; 20.02.2009 в 13:15..
 
Ответить с цитированием

  #2402  
Старый 20.02.2009, 13:19
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
Провел на форуме:
2238549

Репутация: 1318


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

Цитата:
Сообщение от _nic  
Подскажите по этому коду, почему невыводится ип подконектившегося клиента?
Код:
struct datas
{
SOCKET ss;
SOCKADDR_IN sadr;
};
DWORD WINAPI twins(LPVOID lParam)
{
datas *params=(datas*)lParam;
SOCKET s;s=params->ss;
char *buf=new char[1024];
for(;;)
{
recv(s,buf,1024,0);
Sleep(500);
send(s,buf,strlen(buf),0);
if(strcmp(buf,"exit")==0){break;}
memset(buf,NULL,strlen(buf));
}
delete []buf;
}
int main()
{
DWORD id;
SOCKET sin,sout;WSADATA wsd;
SOCKADDR_IN ladr,cadr;
datas params;
WSAStartup(MAKEWORD(2,0),&wsd);
ladr.sin_family=AF_INET;
ladr.sin_port=htons(250);
ladr.sin_addr.s_addr=0;
sin=socket(AF_INET,SOCK_STREAM,0);
bind(sin,(sockaddr*)&ladr,sizeof(ladr));
for(;;)
{
Sleep(300);
listen(sin,10);
int sz=sizeof(cadr);
sout=accept(sin,(sockaddr*)&cadr,&sz);
params.ss=sout;
params.sadr=cadr;
getpeername(sout,(sockaddr*)&cadr,&sz);
printf("\n",inet_ntoa(cadr.sin_addr));
CreateThread(0,0,&twins,(void*)&params,0,&id);
}
//WSACleanup();
}
Код:
printf("\n",inet_ntoa(cadr.sin_addr));
А куда делся спецификатор типа вывода в printf?
 
Ответить с цитированием

  #2403  
Старый 20.02.2009, 14:11
Kuzya
Участник форума
Регистрация: 27.04.2008
Сообщений: 224
Провел на форуме:
140661

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

Недавно занялся C++(совсем недавно), и сегодня попытался написать обычную работу с сокетами - открытие порта и его прослушиваение. Подключил winsock2.h, вроде сделал все как нужно, но на вызове функции socket компилятор выдаёт ошибку.
Цитата:
1>------ Build started: Project: test, Configuration: Debug Win32 ------
1>Compiling...
1>test.cpp
1>Linking...
1>test.obj : error LNK2028: unresolved token (0A00000F) "extern "C" unsigned int __stdcall socket(int,int,int)" (?socket@@$$J212YGIHHH@Z) referenced in function "int __clrcall main(cli::array<class System::String ^ >^)" (?main@@$$HYMHP$01AP$AAVString@System@@@Z)
1>test.obj : error LNK2028: unresolved token (0A000010) "extern "C" int __stdcall WSAStartup(unsigned short,struct WSAData *)" (?WSAStartup@@$$J18YGHGPAUWSAData@@@Z) referenced in function "int __clrcall main(cli::array<class System::String ^ >^)" (?main@@$$HYMHP$01AP$AAVString@System@@@Z)
1>test.obj : error LNK2019: unresolved external symbol "extern "C" unsigned int __stdcall socket(int,int,int)" (?socket@@$$J212YGIHHH@Z) referenced in function "int __clrcall main(cli::array<class System::String ^ >^)" (?main@@$$HYMHP$01AP$AAVString@System@@@Z)
1>test.obj : error LNK2019: unresolved external symbol "extern "C" int __stdcall WSAStartup(unsigned short,struct WSAData *)" (?WSAStartup@@$$J18YGHGPAUWSAData@@@Z) referenced in function "int __clrcall main(cli::array<class System::String ^ >^)" (?main@@$$HYMHP$01AP$AAVString@System@@@Z)
1>C:\Projects\test\Debug\test.exe : fatal error LNK1120: 4 unresolved externals
1>Build log was saved at "file://c:\Projects\test\test\Debug\BuildLog.htm"
1>test - 5 error(s), 1 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
А вот сам исходник.

Код:
#include "stdafx.h"
#include "Form1.h"
#include "winsock2.h"

using namespace test;

[STAThreadAttribute]
int main(array<System::String ^> ^args)
{
	WSADATA wsaData;
        SOCKET s;

        WSAStartup(MAKEWORD(2,2), &wsaData);
	s = socket(AF_INET,SOCK_STREAM,0);
    
	// Enabling Windows XP visual effects before any controls are created
	Application::EnableVisualStyles();
	Application::SetCompatibleTextRenderingDefault(false); 

	// Create the main window and run it
	Application::Run(gcnew Form1());

	return 0;
}
Помогите пожалуйста разобраться.
 
Ответить с цитированием

  #2404  
Старый 20.02.2009, 16:07
4y4o
Познающий
Регистрация: 22.01.2007
Сообщений: 40
Провел на форуме:
179857

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

Итак попытка номер пять ). Патчему вывод из смд не перенаправляется? Паапки! Куку )

#include "stdafx.h"
#include "windows.h"
#include <iostream>
#include <windows.h>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#pragma hdrstop


int main()
{
STARTUPINFOA si;
PROCESS_INFORMATION pi;
ZeroMemory( &si, sizeof(si) );
ZeroMemory( &pi, sizeof(pi) );
SECURITY_ATTRIBUTES secat;
secat.nLength = sizeof(SECURITY_ATTRIBUTES);
secat.bInheritHandle = TRUE;
secat.lpSecurityDescriptor = NULL;
HANDLE read_stdout,newstdout;
CreatePipe(&read_stdout,&newstdout,&secat,0)
si.dwFlags = STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW;
si.wShowWindow = SW_HIDE;
si.hStdOutput=newstdout;
//si.cb;
GetStartupInfoA(&si);

CreateProcessA("C:\\WINDOWS\\system32\\cmd.exe", " /k dir", NULL, NULL, TRUE, CREATE_NEW_CONSOLE, NULL, NULL, &si, &pi);


DWORD bytes; //кол-во прочитанных байт
DWORD avail; //кол-во доступных байт
char buf[1023];
PeekNamedPipe(read_stdout, buf, 1023, &bytes, &avail, NULL);
ReadFile(read_stdout, buf, 1023, &avail, NULL);
std::cout << buf;


std::cin.get();
}
 
Ответить с цитированием

  #2405  
Старый 20.02.2009, 16:39
Unregistered
Познающий
Регистрация: 15.01.2009
Сообщений: 37
Провел на форуме:
628486

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

Объясниет на пальцах как в 6м Борланд Билдере определять количесво памяти и делать консольные приложения не привязаные к либам на данном кампутере? С синтаксисом я там буду сам уже ковырять, пока самое начало.
 
Ответить с цитированием

  #2406  
Старый 20.02.2009, 17:20
Unregistered
Познающий
Регистрация: 15.01.2009
Сообщений: 37
Провел на форуме:
628486

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

woohoo! Hello world!
 
Ответить с цитированием

  #2407  
Старый 20.02.2009, 18:19
Kuzya
Участник форума
Регистрация: 27.04.2008
Сообщений: 224
Провел на форуме:
140661

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

Понял ошибку. Не добавил
#pragma comment( lib, "wsock32.lib" )
 
Ответить с цитированием

  #2408  
Старый 21.02.2009, 16:36
Kuzya
Участник форума
Регистрация: 27.04.2008
Сообщений: 224
Провел на форуме:
140661

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

Как конвертировать массив char в тип String?
массив могу создавать или так
char buf[1024];
или так
char *buf = new char[1024];
 
Ответить с цитированием

  #2409  
Старый 21.02.2009, 16:49
rudvil
Участник форума
Регистрация: 25.08.2008
Сообщений: 187
Провел на форуме:
2066562

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

Цитата:
Сообщение от Kuzya  
Как конвертировать массив char в тип String?
массив могу создавать или так
char buf[1024];
или так
char *buf = new char[1024];
Если не ошибаюсь то все очень просто.
Код:
char buf[1024];
или так
char *buf = new char[1024];

string test = buf;
 
Ответить с цитированием

  #2410  
Старый 21.02.2009, 18:17
.ATK
Участник форума
Регистрация: 20.02.2009
Сообщений: 224
Провел на форуме:
5075819

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

или так:
Цитата:
char buff[]="Hello word!";
string str(buff);
 
Ответить с цитированием
Ответ



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



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


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




ANTICHAT.XYZ