ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
|

14.02.2009, 13:18
|
|
Участник форума
Регистрация: 06.05.2008
Сообщений: 161
Провел на форуме: 1289087
Репутация:
59
|
|
Ну помоему это логично, он подцепил в себя библиотеки. А с тебе настройками, что раньше были (когда прога не запускалась на других компах) библиотеки искались в системе. Можешь ради инетереса поставить виртуальную машину и на нее визуал студию и тогда там прога должна запустится.
|
|
|

15.02.2009, 15:44
|
|
Познающий
Регистрация: 22.12.2008
Сообщений: 82
Провел на форуме: 107509
Репутация:
6
|
|
Сообщение от n4e/\@
Ну помоему это логично, он подцепил в себя библиотеки. А с тебе настройками, что раньше были (когда прога не запускалась на других компах) библиотеки искались в системе. Можешь ради инетереса поставить виртуальную машину и на нее визуал студию и тогда там прога должна запустится.
Это я понимаю , но меня мучиет вопрос : про вирус весом 11 кб написаный на C++ , как так ? Если даже Hello World 56кб когда ставлю /mt параметр ибо без него моя проги незапустится там где нет VC++ =|
|
|
|

15.02.2009, 22:08
|
|
Участник форума
Регистрация: 26.12.2004
Сообщений: 188
Провел на форуме: 1495357
Репутация:
107
|
|
Сообщение от Fl0dER
Это я понимаю , но меня мучиет вопрос : про вирус весом 11 кб написаный на C++ , как так ? Если даже Hello World 56кб когда ставлю /mt параметр ибо без него моя проги незапустится там где нет VC++ =|
не использовать crt.. это malloc printf fopen и тд.
|
|
|

16.02.2009, 01:59
|
|
Участник форума
Регистрация: 25.08.2008
Сообщений: 187
Провел на форуме: 2066562
Репутация:
86
|
|
return массива
Всем здрасьте)
Возникла проблема =[ можно ли в пользовательской функции сделать ретурн массива,пример:
Код:
string test()
{
string names[1];
names[0] = "test";
return names;
}
при таком раскладе пишет ошибку(неверный параметр в ретурне как-то так)
пробовал делать так:
Код:
string[] test()
{
string names[1];
names[0] = "test";
return names;
}
и так:
Код:
string test()
{
string names[1];
names[0] = "test";
return names[];
}
всеравно пишет ошибку...
Собственно и вопрос как правильно реализовать ретурн массива?
|
|
|

16.02.2009, 09:11
|
|
Познающий
Регистрация: 22.12.2008
Сообщений: 82
Провел на форуме: 107509
Репутация:
6
|
|
Сообщение от FoX's
не использовать crt.. это malloc printf fopen и тд.
Я так понял значит и функции sprintf wsprintf и т.д ?
Но какже без них О_о
|
|
|

16.02.2009, 09:27
|
|
Участник форума
Регистрация: 26.12.2004
Сообщений: 188
Провел на форуме: 1495357
Репутация:
107
|
|
Сообщение от Fl0dER
Я так понял значит и функции sprintf wsprintf и т.д ?
Но какже без них О_о
wsprintf - это и есть замена sprintf..
посмотри в мсдн
|
|
|

16.02.2009, 13:02
|
|
Познающий
Регистрация: 22.12.2008
Сообщений: 82
Провел на форуме: 107509
Репутация:
6
|
|
А как вобще отключить CRT ?
Компилю
Код:
#include <iostream>
using namespace std;
int main()
{
cout << "hello ";
}
и вижу
Код:
'Consol.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_d08d0375\msvcp90.dll'
'Consol.exe': Loaded 'C:\WINDOWS\WinSxS
\x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_d08d0375\msvcr90.dll'
|
|
|

16.02.2009, 13:13
|
|
Участник форума
Регистрация: 25.08.2008
Сообщений: 187
Провел на форуме: 2066562
Репутация:
86
|
|
Сообщение от Fl0dER
А как вобще отключить CRT ?
Компилю
Код:
#include <iostream>
using namespace std;
int main()
{
cout << "hello ";
}
return не забывай прописывать...
Код:
int main()
{
cout << "hello ";
return 0;
}
|
|
|

16.02.2009, 19:53
|
|
Познающий
Регистрация: 22.01.2007
Сообщений: 40
Провел на форуме: 179857
Репутация:
4
|
|
#include "stdafx.h"
#include "windows.h"
#include <iostream>
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;
HANDLE newin, writein;
CreatePipe(&newin,&writein,&secat,0);
si.dwFlags = STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW;
si.wShowWindow = SW_SHOWNORMAL;
si.hStdInput=newin;
GetStartupInfoA(&si);
si.cb;
CreateProcessA(NULL, "cmd.exe", NULL, NULL, TRUE, CREATE_NEW_CONSOLE, NULL, NULL, &si, &pi);
DWORD bytes;
char command[100] = "mkdir 1254655553";
WriteFile(writein, command, 100, &bytes, NULL);
std::cin.get();
}
Уважаемые отцы объясните боту патчему не создаётся папка )
|
|
|

16.02.2009, 19:59
|
|
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
Провел на форуме: 2238549
Репутация:
1318
|
|
Универсальный дебагер тебе в руки:
Код:
LPVOID lpMsgBuf;
FormatMessage(
FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM |
FORMAT_MESSAGE_IGNORE_INSERTS,
NULL,
GetLastError(),
0,
(LPTSTR) &lpMsgBuf,
0,
NULL
);
MessageBox(NULL, (LPCTSTR)lpMsgBuf, TEXT("Error"), MB_OK | MB_ICONERROR);
LocalFree(lpMsgBuf);
Вызови этот код после CreatePipe, после CreateProcess и сам всё узнаешь. А вообще для кого придумали обработку ошибок?
|
|
|
|
 |
|
|
Здесь присутствуют: 4 (пользователей: 0 , гостей: 4)
|
|
|
|