Здравствуйте уважаемые гуру.
Представляю вашему вниманию чат для локальной сети. Автор не я, нашел в сети.
Нужна ваша помощь в допиливании батничка чата для локальной сети.
Батник хорош тем что все реализованно в одном файле и только встроенными средствами!
Вот он сам - (тестировал на win XP, если кто может протестируйте пож-ста на win7)
Код: @echo off
color 1F
title Chat v 1.2
cls
pushd "%~dp0"
if "%~1" == "talk_widget" goto talker
set sndMsg=%SystemRoot%\Media\chimes.wav
:auth
echo.
echo.********************************************************************************
echo. —Ђ „‹џ ‹ЋЉЂ‹њЌЋ‰ ‘…€ V 1.2
echo.********************************************************************************
echo.
echo.
echo.
echo.
echo ‚ўҐ¤ЁвҐ -®¬Ґа Є®¬- вл ¤«п з в ў зЁб«®ў®¬ д®а¬ ⥠(1-999):
echo.
set /p chat=^>
echo.
echo ЏаЁ¤г¬ ©вҐ бў®Ґ Ё¬п ¤«п з в (Ђ-џ \ A-Z):
echo.
set /p nick=^>
start call %0 talk_widget %chat% %nick%
:listener
cls
call title "| Љ®¬- в з в : %chat% | Џ®«м§®ў ⥫м: %nick% |"
if exist %chat%_history type %chat%_history
if not exist %chat% echo. 2>%chat%
:listener_loop
ping 127.0.0.1 -n 1 -w 20 > nul
set oldtext=%text%
set /p text=<%chat%
if not "%text%" == "%oldtext%" type %chat% & echo.
goto listener_loop
:talker
set chat=%~2
set nick=%~3
cls
call title "| Љ®¬- в з в : %chat% | Џ®«м§®ў ⥫м: %nick% |"
call ::cs_in
echo [%time:~0,-3%] Ї®«м§®ў ⥫м "%nick%" ЇаЁб®Ґ¤Ё-Ё«бп Є з вг.>%chat%
call ::cs_out
echo [%time:~0,-3%] Ї®«м§®ў ⥫м "%nick%" ЇаЁб®Ґ¤Ё-Ё«бп Є з вг.>>%chat%_history
echo. %msg% >>%chat%_history
:talker_loop
cls
echo.
echo ‚ и ⥪бв б®®ЎйҐ-Ёп:
echo.
set /p msg=^>
call ::cs_in
echo [%time:~0,-3%] - %nick%: >%chat%
echo - %msg% >>%chat%
start /min sndRec32.exe /play /close %sndMsg% 1>nul 2>nul
call ::cs_out
echo [%time:~0,-3%] - %nick%: >>%chat%_history
echo - %msg% >>%chat%_history
echo. >>%chat%_history
goto talker_loop
:cs_in
if exist "%chat%_cs" ping 127.0.0.1 -n 1 -w 50 > nul
set cs_value=%RANDOM%
:cs_in_loop
echo %cs_value%>%chat%_cs
set /p ret=<%chat%_cs
if "%ret%" == "%cs_value%" exit /b
ping 127.0.0.1 -n 1 -w 10 > nul
goto :cs_in_loop
:cs_out
del %chat%_cs
exit /b
Представляю вашему вниманию чат для локальной сети. Автор не я, нашел в сети.
Нужна ваша помощь в допиливании батничка чата для локальной сети.
Батник хорош тем что все реализованно в одном файле и только встроенными средствами!
Вот он сам - (тестировал на win XP, если кто может протестируйте пож-ста на win7)
Код: @echo off
color 1F
title Chat v 1.2
cls
pushd "%~dp0"
if "%~1" == "talk_widget" goto talker
set sndMsg=%SystemRoot%\Media\chimes.wav
:auth
echo.
echo.********************************************************************************
echo. —Ђ „‹џ ‹ЋЉЂ‹њЌЋ‰ ‘…€ V 1.2
echo.********************************************************************************
echo.
echo.
echo.
echo.
echo ‚ўҐ¤ЁвҐ -®¬Ґа Є®¬- вл ¤«п з в ў зЁб«®ў®¬ д®а¬ ⥠(1-999):
echo.
set /p chat=^>
echo.
echo ЏаЁ¤г¬ ©вҐ бў®Ґ Ё¬п ¤«п з в (Ђ-џ \ A-Z):
echo.
set /p nick=^>
start call %0 talk_widget %chat% %nick%
:listener
cls
call title "| Љ®¬- в з в : %chat% | Џ®«м§®ў ⥫м: %nick% |"
if exist %chat%_history type %chat%_history
if not exist %chat% echo. 2>%chat%
:listener_loop
ping 127.0.0.1 -n 1 -w 20 > nul
set oldtext=%text%
set /p text=<%chat%
if not "%text%" == "%oldtext%" type %chat% & echo.
goto listener_loop
:talker
set chat=%~2
set nick=%~3
cls
call title "| Љ®¬- в з в : %chat% | Џ®«м§®ў ⥫м: %nick% |"
call ::cs_in
echo [%time:~0,-3%] Ї®«м§®ў ⥫м "%nick%" ЇаЁб®Ґ¤Ё-Ё«бп Є з вг.>%chat%
call ::cs_out
echo [%time:~0,-3%] Ї®«м§®ў ⥫м "%nick%" ЇаЁб®Ґ¤Ё-Ё«бп Є з вг.>>%chat%_history
echo. %msg% >>%chat%_history
:talker_loop
cls
echo.
echo ‚ и ⥪бв б®®ЎйҐ-Ёп:
echo.
set /p msg=^>
call ::cs_in
echo [%time:~0,-3%] - %nick%: >%chat%
echo - %msg% >>%chat%
start /min sndRec32.exe /play /close %sndMsg% 1>nul 2>nul
call ::cs_out
echo [%time:~0,-3%] - %nick%: >>%chat%_history
echo - %msg% >>%chat%_history
echo. >>%chat%_history
goto talker_loop
:cs_in
if exist "%chat%_cs" ping 127.0.0.1 -n 1 -w 50 > nul
set cs_value=%RANDOM%
:cs_in_loop
echo %cs_value%>%chat%_cs
set /p ret=<%chat%_cs
if "%ret%" == "%cs_value%" exit /b
ping 127.0.0.1 -n 1 -w 10 > nul
goto :cs_in_loop
:cs_out
del %chat%_cs
exit /b