Frage von sonnig140, 9

Batchchat mit Sonderfunktionen?

Hallo, ich wollte mal fragen ob es möglich ist Batchchat zu programmieren und das es da möglich ist eine Gruppe zu erstellen und mit einem Passwort zu schützen, wenn man also der Konversation beitreten möchte, muss man das Passwort wissen. Ich würde mich sehr über Hilfe bei der Programmierung freuen.

Antwort
von LustenLu, 5

Ist möglich aber sehr eingeschränkt. Ich habe das ganze mal gemacht und als "Chatroom" ein Textfile erstellt. Jedoch kann jeder das File öffnen und sich Passwörter direkt aus dem Code holen oder nachschauen wo die Files mit den Passwörtern liegen. Ich würde dir mindestens Powershell wenn nicht sogar C# empfehlen...

Falls nicht, wäre hier mein Code:

@echo off

title BatchChat by Lukas Lustenberger

:Start
color b0
set "username="
set "chatlobby="
set "networkpath="
set "admin="
set "a_username="
set "a_passwort="
set "a_logon="

cls
set /p username=Dein Username:
cls
set /p chatlobby=Chatlobby:
cls

REM Hier kannst du deinen Pfad angeben auf den die User zugreifen wollen (Dort werden die Chats erstellt)
REM -----------------------------------------------------------------------------------------------------
set networkpath="HIER NETZWERKPFAD EINGEBEN (z.B \\Server\c$\Chat)"
REM -----------------------------------------------------------------------------------------------------
echo ________________________________________________________________________________
echo Angemeldet als [%username%] in [%chatlobby%]
echo --------------------------------------------------------------------------------
echo "[%username%]>>>" >> %networkpath%\%chatlobby%.txt

:reload
set "message="
cls

type %networkpath%\%chatlobby%.txt
echo.
echo ________________________________________________________________________________
echo Angemeldet als [%username%] in [%chatlobby%]
echo (Optionen: /Help, /Leave, /Clearchat[ADMIN], /delchat[ADMIN],
echo /adminlogon, /adminlogoff[ADMIN]
echo ________________________________________________________________________________
set /p message=[%username%]:

if "%message%"=="/leave" (
echo "<<<[%username%]" >> %networkpath%\%chatlobby%.txt
goto start
) else if "%message%"=="/clearchat" (
if "%admin%"=="true" (
echo. > %networkpath%\%chatlobby%.txt
goto reload
) else (
goto Adminlogin
)
) else if "%message%"=="/delchat" (
if "%admin%"=="true" (
del %networkpath%\%chatlobby%.txt
goto start
) else (
goto Adminlogin
)
) else if "%message%"=="/help" (
goto HELP
) else if "%message%"=="/adminlogoff" (
set "admin="
color b0
title BatchChat by Lukas Lustenberger
goto reload
) else if "%message%"=="/adminlogon" (
goto Adminlogin
) else (
if "%message%"=="" (
goto reload
) else (
echo [%username%]: %message% >> %networkpath%\%chatlobby%.txt
goto reload
)
)

:HELP
cls
echo ________________________________________________________________________________
echo [HELP]
echo --------------------------------------------------------------------------------
echo - Schreib etwas und druecke Enter um die Nachricht zu versenden.
echo - Um den Chat zu aktualiseren Enter klicken ohne etwas zu schreiben.
echo - Kommandos werden dir unterhalb der Anmeldedaten aufgelistet(/....).
echo - ["Name"]>>> = verbunden / <<<["Name"] = verlassen
echo.
echo.
echo "Enter" um die Hilfe zu verlassen
pause>nul
goto reload

:Adminlogin
if "%admin%"=="true" (
goto reload
) else (
:a_versuch
color b0
cls
echo ________________________________________________________________________________
echo [Admin-Login]
echo --------------------------------------------------------------------------------
set /p a_username=Admin Username:
set /p a_passwort=Admin Passwort:

if "%a_username%"=="Administrator" (
if "%a_passwort%"=="1234qwert" (
set admin=true
title [ADMINISTRATOR] BatchChat by Lukas Lustenberger
color 9f
goto reload
)
) else (
color c0
cls
echo ________________________________________________________________________________
echo [Admin-Login FEHELR]
echo --------------------------------------------------------------------------------
choice /M "Falsche Logindaten. Nochmals?" /c JN
if errorlevel 1 (
goto a_versuch
) else if errorlevel 2 (
color b0
goto reload
)
)
)
pause>nul

Achte darau, dass du im Code den Netzwerkpfad eingeben musst. Dort werden die Textfelder erstellt. Jeder der mitchatten will, muss auf diesen Pfad Schreibzugriff haben. Beim Einloggen einen Chatlobby Namen eingeben. Die andern müssen dann genau den gleichen Namen einegeben. Mit Enter aktualisierst du den Chat. Es gibt noch Adminoptionen wie /clearchat, etc... Dazu einfach /adminlogon in den Chat eingeben und Username: Administrator, Passwort: 1234qwert (Kann im Code geändert werden). Leider habe ich keinen Passwortschutz für die Lobbys. Kann aber einfach noch ergänzt werden.

MFG

Lukas

Kommentar von sonnig140 ,

Vielen Dank für deine super Hilfe!!! Ich hätte nicht gedacht, dass mir jemand hilft. Ich habe mal gesehen das ein Batch Chat eine Datei anlegt mit der Endung .chat diese Datei konnte man nicht öffnen aber der Chat konnte damit etwas anfangen.

Keine passende Antwort gefunden?

Fragen Sie die Community