Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] скрипт для автоподключения CS:Source

Ответить
Настройки темы
[решено] скрипт для автоподключения CS:Source

Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


Писал в раздел про командную строку,посоветовали обратится в этот раздел, суть проблемы описана здесь:
суть проблемы
так как AutoIt не дружу совсем, прошу помочь тех кто в этом деле знаток.

Отправлено: 16:43, 24-03-2010

 

Аватара для madmasles

Ветеран


Сообщения: 812
Благодарности: 353

Профиль | Отправить PM | Цитировать


rustsss,
1. Порт у Вас всегда 27016?
2. Проверку наличия интернета надо делать?

Последний раз редактировалось madmasles, 24-03-2010 в 21:48.


Отправлено: 19:42, 24-03-2010 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


madmasles, вообще сервера два у одного порт 27016 у другого 1800, желательно для обоих, проверку можно не делать

Отправлено: 23:25, 24-03-2010 | #3


Аватара для madmasles

Ветеран


Сообщения: 812
Благодарности: 353

Профиль | Отправить PM | Цитировать


rustsss,
У меня так получилось
порт 27016
Код: Выделить весь код
#include <WinAPIEx.au3>
#include <Misc.au3>

Opt("TrayMenuMode", 1)
TraySetState(4)
$port = "27016"
If _Singleton(@ScriptName, 1) = 0 Then
    TrayTip("Подключение порт " & $port, "Уже работаем!", 0, 1)
    Sleep(3000)
    Exit
EndIf

If _WinAPI_IsNetworkAlive() = 0 Then
    TrayTip("Подключение порт " & $port, "Отсутствует подключение к интернету", 0, 1)
    Sleep(3000)
    Exit
EndIf

If Not FileExists(@ScriptDir & "\Launcher_CSS.exe") Then
    TrayTip("Подключение порт " & $port, "В этой папке отсутствует файл Launcher_CSS.exe", 0, 1)
    Sleep(3000)
    Exit
EndIf
TCPStartup()
$IP = TCPNameToIP("316774-local.dyn.ufanet.ru")
RunWait(@ComSpec & " /c start Launcher_CSS.exe -console +connect " & $IP & ":" & $port, "", @SW_HIDE)
$socket = TCPConnect($IP, $port)
If $socket <> -1 Then
    TrayTip("Подключение порт " & $port, "Подключение установлено.", 0, 1)
    Sleep(3000)
    Exit
Else
    TrayTip("Подключение порт " & $port, "Произошла ошибка подключения. Попробуйте еще раз.", 0, 1)
    Sleep(3000)
    Exit
EndIf

порт 1800
Код: Выделить весь код
#include <WinAPIEx.au3>
#include <Misc.au3>

Opt("TrayMenuMode", 1)
TraySetState(4)
$port = "1800"
If _Singleton(@ScriptName, 1) = 0 Then
    TrayTip("Подключение порт " & $port, "Уже работаем!", 0, 1)
    Sleep(3000)
    Exit
EndIf

If _WinAPI_IsNetworkAlive() = 0 Then
    TrayTip("Подключение порт " & $port, "Отсутствует подключение к интернету", 0, 1)
    Sleep(3000)
    Exit
EndIf

If Not FileExists(@ScriptDir & "\Launcher_CSS.exe") Then
    TrayTip("Подключение порт " & $port, "В этой папке отсутствует файл Launcher_CSS.exe", 0, 1)
    Sleep(3000)
    Exit
EndIf
TCPStartup()
$IP = TCPNameToIP("316774-local.dyn.ufanet.ru")
RunWait(@ComSpec & " /c start Launcher_CSS.exe -console +connect " & $IP & ":" & $port, "", @SW_HIDE)
$socket = TCPConnect($IP, $port)
If $socket <> -1 Then
    TrayTip("Подключение порт " & $port, "Подключение установлено.", 0, 1)
    Sleep(3000)
    Exit
Else
    TrayTip("Подключение порт " & $port, "Произошла ошибка подключения. Попробуйте еще раз.", 0, 1)
    Sleep(3000)
    Exit
EndIf

В прикрепленном архиве скомпилированные скрипты. Их надо положить в ту папку, в которой лежит Launcher_CSS.exe.

PS
По идее надо как-то проверку соединения организовать, но так как у меня всего этого нет, то не знаю как.

PPS
Может быть проверить вот так?
Код: Выделить весь код
$socket = TCPConnect($IP, $port)
If $socket <> -1 Then
    TrayTip("Подключение", "Подключение установлено.", 0, 1)
    Sleep(3000)
    Exit
Else
    TrayTip("Подключение", "Произошла ошибка подключения. Попробуйте еще раз.", 0, 1)
    Sleep(3000)
    Exit
EndIf

Последний раз редактировалось madmasles, 20-05-2010 в 14:42.

Это сообщение посчитали полезным следующие участники:

Отправлено: 08:24, 25-03-2010 | #4


Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


madmasles, Попробовал , сама CS:Source запускается но вот соединения с этим адресом и портом в игре не происходит, все проходит без ошибок. Спасибо что пытаетесь помочь!
А нельзя сделать по такой схеме 1) сначала узнается Ip 2) к нему прибавляется порт-получается готовая строка для консоли connect ip:port все это копируется в буфер 3) запускается CS с консолью и в эту консоль вставляется connect ip:port и эмулируется нажатие клавиши Энтер. Вот как то так или это из области научной фантастики?

Отправлено: 14:52, 25-03-2010 | #5


Аватара для madmasles

Ветеран


Сообщения: 812
Благодарности: 353

Профиль | Отправить PM | Цитировать


rustsss,
То есть Вам надо, чтобы в командной строке было выполнено следующее:
Код: Выделить весь код
start Launcher_CSS.exe connect ip:port
Я правильно понял?

И еще, для того, чтобы сделать проверку соединения, прикрепите, пожалуйста, скриншот окна ком.строки.

Последний раз редактировалось madmasles, 25-03-2010 в 15:24.


Отправлено: 15:08, 25-03-2010 | #6


Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


madmasles,
Даже не знаю как объяснить, скажем если создать такой батник:

Код: Выделить весь код
set commandline=-console +connect 172.27.21.85:1800 
set execute=Launcher_CSS.exe 
start %execute% %commandline%
то запустится CS с консолью и сразу же пойдет подключение к этому ip но поскольку ip динамический, а наш провайдер раз в сутки делает дисконнект то ip меняется, поэтому и нужно брать ip с DNS вставлять его между connect и:1800 и запускать игру с авто подключением.

а что именно должно быть отображено на скриншоте?

Отправлено: 15:43, 25-03-2010 | #7


Аватара для madmasles

Ветеран


Сообщения: 812
Благодарности: 353

Профиль | Отправить PM | Цитировать


rustsss,
То есть должно быть так?
Код: Выделить весь код
start Launcher_CSS.exe -console +connect 172.27.21.85:1800
Или нет? Вы сделайте батник, который точно подключает. Последней строкой напишите pause? запустите его и, не нажимая любую кнопку, сделайте скриншот окна.

Отправлено: 15:56, 25-03-2010 | #8


Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


madmasles, Да должно быть так тока ip из должен браться от 316774-local.dyn.ufanet.ru

скриншот батника

если его запустить то CS запускается и происходит подключение к серверу по данному ip

Отправлено: 16:08, 25-03-2010 | #9


Аватара для madmasles

Ветеран


Сообщения: 812
Благодарности: 353

Профиль | Отправить PM | Цитировать


rustsss,
Я в 4-ом посте код и вложения поменял. Попробуйте. А скриншот мне был нужен, так как я думал, что в консоли какой-то ответ будет, а его нет.

Отправлено: 16:56, 25-03-2010 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] скрипт для автоподключения CS:Source

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] батник для автоподключения cs:source rustsss Скриптовые языки администрирования Windows 6 25-03-2010 17:12
Open source программы для большого бизнеса. Часть 4 OSZone News Новости информационных технологий 0 16-11-2009 18:30
Open source программы для большого бизнеса. Часть 3 OSZone News Новости информационных технологий 1 14-11-2009 23:57
Open source программы для большого бизнеса. Часть 2 OSZone News Новости информационных технологий 0 12-11-2009 20:30
Open source программы для большого бизнеса. Часть 1 OSZone News Новости информационных технологий 0 12-11-2009 17:30




 
Переход