Pisanie polecen basha w c++

0

Witam,
nie jestem zbyt biegły w programowaniu, ale chciałem ukryć hasło do dysku sieciowego w .exe'ku. Mam taki kod w .bat, który działa jak należy:

@net use m: \192.168.0.**\NazwaDyskuSieciowego /user:LoginDoDysku HasłoDoDysku /y
m:\Program.exe
@net use m: /d /y

(.bat mapuje dysk, loguje się na niego, włącza program a na końcu usuwa zmapowany dysk)

wrzuciłem go do .cpp

#include <iostream>
using namespace std;

int main()

{
system("cmd /c net use m:\192.168.0.**\NazwaDyskuSieciowego /user:LoginDoDysku HasłoDoDysku /y");
system("m:\Program.exe");
system("net use m: /d /y");

return 0;

}
dostaje informacje zwrotną :

Wystąpił błąd systemu 67.

Nie można odnaleźć nazwy sieciowej.

Nie można odnaleźć dysku.
Nie można odnaleźć połączenia sieciowego.

Dostępne są dalsze informacje Pomocy; aby je uzyskać, wpisz NET HELPMSG 2250.

1
  1. Backslash to znak specjalny, który służy do "escapowania" innych znaków, więc jeśli chcesz go użyć, musisz podać go dwukrotnie.
system("cmd /c net use m:\\192.168.0.**\\NazwaDyskuSieciowego /user:LoginDoDysku HasłoDoDysku /y");
system("m:\\Program.exe");
system("net use m: /d /y");
  1. Wywołanie funkcji system wymaga dołączenia pliku nagłówkowego <cstdlib>.
1

i tak to hasło można w twoim exeku banalnie podejrzeć.

0

Wielkie dzięki. Nie myślałem, że błąd jest tak banalny;-)
Wiem, że można podejrzeć i może dam radę coś z tym zrobić później. Chodzi głównie o to, żeby powstrzymać mało zorientowane osoby

dodam jeszcze, że miałem mały problem ze spacjami i tak go rozwiązałem:

system("\"C:\\Program Files (x86)\\folder\\program.exe\"");

1 użytkowników online, w tym zalogowanych: 0, gości: 1