Don418 Posted March 19, 2006 Report Share Posted March 19, 2006 (edited) :sm(100): Edited September 4, 2006 by Don418 Link to comment Share on other sites More sharing options...
Kobi Posted March 19, 2006 Report Share Posted March 19, 2006 Мне нужно определить ip приложения!!! Тоесть когда оно запущено! Чего? Ты сам то понял что спросил? Link to comment Share on other sites More sharing options...
Siberex Posted March 19, 2006 Report Share Posted March 19, 2006 Don418: Можеть ты имеешь в виду определение порта, которое приложение использует для связи? Link to comment Share on other sites More sharing options...
Форматцевт Posted March 19, 2006 Report Share Posted March 19, 2006 (edited) Don418: может PID приложения/процесса? Вообщем пиши конкретно угадывать сложно что ты именно хочешь определить, но IP приложение это только порты которые он юзает. Об этом было написанно выше. Это совсем не то ...ошибся ============ Для CMD.exe если идёт определение процесса (уровня, номера и тд.) %PROCESSOR_LEVEL% - Возвращает номер модификации процессора. %PROCESSOR_IDENTFIER% - Возвращает описание процессора. ================ или же читай http://www.windowsfaq.ru/faq/cmdxp/ Edited March 19, 2006 by Indomito Link to comment Share on other sites More sharing options...
Форматцевт Posted March 19, 2006 Report Share Posted March 19, 2006 вот нашел исходник определения PID по имени процесса bool GetProcessByExeName(DWORD* Pid,AnsiString ExeName){ HANDLE hProcessSnap = NULL; PROCESSENTRY32 pe32 = {0}; AnsiString temp=""; hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPALL, NULL); if(hProcessSnap == (void*)-1) { MessageBox(NULL, "oblom", "oblom", MB_OK|MB_ICONWARNING|MB_SYSTEMMODAL); return false; } pe32.dwSize=sizeof(PROCESSENTRY32); if(Process32First(hProcessSnap,&pe32)) temp=pe32.szExeFile; if((temp.UpperCase()).Pos(ExeName)) { *Pid= pe32.th32ProcessID; CloseHandle (hProcessSnap); return true; } pe32.dwSize=sizeof(PROCESSENTRY32); while(Process32Next(hProcessSnap,&pe32)) { temp=pe32.szExeFile; if((temp.UpperCase()).Pos(ExeName)) { *Pid= pe32.th32ProcessID; CloseHandle(hProcessSnap); return true; } pe32.dwSize=sizeof(PROCESSENTRY32); } CloseHandle(hProcessSnap); *Pid=0; return false; } Link to comment Share on other sites More sharing options...
Siberex Posted March 19, 2006 Report Share Posted March 19, 2006 вот нашел исходник определения PID по имени процесса Мне кажется, это не совсем в тему - здесь вопрос не по API-программированию на Си. Не надо флудить Для того чтобы узнать какие порты открыты в данный момент тем или иным приложением, или на какой порт/ИП удаленной системы обращается приложение, можно использовать Agnitum Outpost Firewall, хотя для просмотра открытых портов есть и встроенные средства. Link to comment Share on other sites More sharing options...
Loader Posted March 19, 2006 Report Share Posted March 19, 2006 Don418: Экстрасенсов здесь нет. Выражайся яснее IP может быть у одного из сетевых устройств (сетевой карты, модема) но к приложениям это никак не относится Link to comment Share on other sites More sharing options...
mojioko Posted March 20, 2006 Report Share Posted March 20, 2006 Может имелось в виду АЙПИ сервера куда конектится приложение? Как то поточнее нужно сформулировать Link to comment Share on other sites More sharing options...
MaSteR Posted March 20, 2006 Report Share Posted March 20, 2006 i Уведомление:Может хватит флейм разводить?Нечего сказать, молчите. Дальше будут меры. Link to comment Share on other sites More sharing options...
Don418 Posted March 20, 2006 Author Report Share Posted March 20, 2006 (edited) :D Edited September 4, 2006 by Don418 Link to comment Share on other sites More sharing options...
mojioko Posted March 20, 2006 Report Share Posted March 20, 2006 Если точнее мне надо поставить БОТА а чтоб его постаавить надо узнать ip сервера игры... Тоесть я захожу в игру выбираю один из 4 серверов и начинаю играть!Как мне узнать адрес ip сервака на котром я играю... Ну не понятно что за игра. Если КС то просто консоль открыть нужно там все пишется. Если не КС то на роутере можно пасматреть по каким портам кикие пакеты летят с ентого адреса и на какие адреса tcpdump -i имя интефейса | grep апишник клиета Link to comment Share on other sites More sharing options...
Симаргл Posted March 20, 2006 Report Share Posted March 20, 2006 (edited) Мой метод: 1. Запомни (запиши на листочке) :D адрес игрового сервера к к. подключаешься. 2. Выйди из игры. 3. Пуск -> выполнить -> CMD 4. Набери ping <имя_сервера> (без ковычек) В первой строчке будет: Обмен данным с сервером ... [ip - адрес] - это то, что тебе нужно То? З.Ы. Надо конкретней формулировать вопрос... Edited March 20, 2006 by Симаргл Link to comment Share on other sites More sharing options...
Don418 Posted March 20, 2006 Author Report Share Posted March 20, 2006 (edited) :D Edited September 4, 2006 by Don418 Link to comment Share on other sites More sharing options...
Симаргл Posted March 20, 2006 Report Share Posted March 20, 2006 Don418, уже выписал и тихонько следую твоему мудрому совету! А тебе следует учить грамматику, ибо ты невладах с русским языком! Link to comment Share on other sites More sharing options...
Shurr Posted March 20, 2006 Report Share Posted March 20, 2006 Don418 "netstat -b" покажет все текущие сетевые подключения (включая удаленный адрес и номера портов), с указанием породивших их процессов. Игра при этом, соответственно, должна быть запущена и подконнекчена к игровому серверу. Превратить же текстовый адрес сервера в IP проще всего, действительно, при помощи пинга. Link to comment Share on other sites More sharing options...
Don418 Posted March 20, 2006 Author Report Share Posted March 20, 2006 (edited) :D Edited September 4, 2006 by Don418 Link to comment Share on other sites More sharing options...
Симаргл Posted March 20, 2006 Report Share Posted March 20, 2006 (edited) Don418: Поясню немного Shurr'а. Говоря текстовый адрес сервера он верояней всего имел ввиду его DNS-имя, к примеру текстовый адрес это - www.rambler.ru, а 84.80.98.45 его числовой эквивалент - IP-адрес. З.Ы. Shurr: м.б. ты имел ввиду "netstat -а"? А если ввести "netstat -an", то он покажет ip-адреса внешних подключений. Edited March 20, 2006 by Симаргл Link to comment Share on other sites More sharing options...
Shurr Posted March 20, 2006 Report Share Posted March 20, 2006 Don418: Поясню немного Shurr'а. Говоря текстовый адрес сервера он верояней всего имел ввиду его DNS-имя, к примеру текстовый адрес это - www.rambler.ru, а 84.80.98.45 его числовой эквивалент - IP-адрес. З.Ы. Shurr: м.б. ты имел ввиду "netstat -а"? А если ввести "netstat -an", то он покажет ip-адреса внешних подключений. Да, я имел ввиду DNS-имя. А насчет параметров - "-b" чтобы узнать имя процесса, мало ли кто еще куда подконнекчен в данный момент. Ну и ты прав, можно ввести -bn чтобы смотреть сразу IP-адреса. "-a" ИМХО, излишне. Don418 ХМКак я писал выше в игре можно выбрать несколько серверов...Да к тому же откуда я знаю текстовый айпи!Так что думай! Я же говорю, запусти игру, подключись в интересующему тебя серверу, а потом запускай netstat, и смотри куда законнекчена твоя игра. Можешь повторить процедуру для каждого из интересующих тебя серверов. Давай на примере. Допустим, я хочу узнать, куда коннектится Opera, когда я загружаю страницу с этим топиком. Я нажимаю "обновить страницу" и в соседнем окне запускаю "netstat -bn". Среди всего прочего я вижу: Имя Локальный адрес Внешний адрес Состояние PID TCP 192.168.241.7:1711 217.16.27.104:80 ESTABLISHED 2680 [Opera.exe] TCP 192.168.241.7:1744 83.222.5.38:80 ESTABLISHED 2680 [Opera.exe] Это из тех, где имя процесса указано как Opera.exe - т.е. тот, который меня интересует. По логу видно, что Opera в данный момент соединилась с двумя серверами по 80 порту, т.е. http. 217.16.27.104 - это softbn.ru. это баннеры вверху форума. 83.222.5.38 - это softboard.ru. Link to comment Share on other sites More sharing options...
Don418 Posted March 20, 2006 Author Report Share Posted March 20, 2006 (edited) :sm(100): Edited September 4, 2006 by Don418 Link to comment Share on other sites More sharing options...
Симаргл Posted March 20, 2006 Report Share Posted March 20, 2006 Shurr: Странно, а у меня такого параметра нет (-b); - winxp, sp2 Зато есть "netstat -o" Имя Локальный адрес Внешний адрес Состояние PIDTCP SEN:netbios-ssn 192.168.36.56:1172 ESTABLISHED 4TCP SEN:3715 server01:5900 TIME_WAIT 0 З.Ы. У тебя какая система? Или это у меня глючный netstat? Link to comment Share on other sites More sharing options...
Shurr Posted March 20, 2006 Report Share Posted March 20, 2006 Win XP SP2. netstat.exe, 37376 байт от 18.08.04 Отображение статистики протокола и текущих сетевых подключений TCP/IP.NETSTAT [-a] [-b] [-e] [-n] [-o] [-p протокол] [-r] [-s] [-v] [интервал] -a Отображение всех подключений и ожидающих портов. -b Отображение исполняемого файла, участвующего в создании каждого подключения, или ожидающего порта. Иногда известные исполняемые файлы содержат множественные независимые компоненты. Тогда отображается последовательность компонентов, участвующих в создании подключения, либо ожидающий порт. В этом случае имя исполняемого файла находится снизу в скобках [], сверху - компонент, который им вызывается, и так до тех пор, пока не достигается TCP/IP. Заметьте, что такой подход может занять много времени и требует достаточных разрешений. -e Отображение статистики Ethernet. Он может применяться вместе с параметром -s. -n Отображение адресов и номеров портов в числовом формате. -o Отображение кода (ID) процесса каждого подключения. -p протокол Отображение подключений для протокола, задаваемых этим параметром. Допустимые значения: TCP, UDP, TCPv6 или UDPv6. Используется вместе с параметром -s для отображения статистики по протоколам. Допустимые значения: IP, IPv6, ICMP, ICMPv6, TCP, TCPv6, UDP или UDPv6 -r Отображение содержимого таблицы маршрутов. -s Отображение статистических данных по протоколам. По умолчанию данные отображаются для IP, IPv6, ICMP, ICMPv6, TCP, TCPv6, UDP и UDPv6. Параметр -p позволяет указать подмножество выводящихся данных. -v При использовании с параметром -b, отображает последовательность компонентов, участвующих в создании подключения, или ожидающий порт для всех исполняемых файлов. интервал Повторный вывод статистических данных через указанный промежуток времени в секундах. Для прекращения вывода данных нажмите клавиши CTRL+C. Если параметр не задан, сведения о текущей конфигурации выводятся один раз. Link to comment Share on other sites More sharing options...
Симаргл Posted March 20, 2006 Report Share Posted March 20, 2006 Shurr: thanks! У меня старенький netstat... :sm(100): Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now