Benutzer mit den meisten Antworten
Passwortgeschütze Textausgabe und externe Programme öffnen c++2010

Frage
-
Hallo,
ich möchte mit einer .net Windows Forms Anwendung folgendes machen:
Sie soll ein Textfeld haben, in dass ich ein Passwort eingeben kann. Wenn ich das richtige Passwort eingegeben habe soll ein Text erscheinen, am besten mit der MessageBox. Also im prinzip Text mit einem Passwort verschlüsseln
Und sie soll externe Programme öffnen können, also einfach ein Button mit verlinkung zu einer .exe.
Wäre sehr dankbar wenn mir einer den Code dafür geben könne bin Anfänger!
Antworten
-
Wenn Du schon C++/CLI machen musst, dann bitte konsequent: Also Anstall "ShellExecute" verwende bitte "System::Diagnostics::Process::Start"!
Und siehe auch:
http://blog.kalmbach-software.de/de/2010/03/05/ccli-und-winforms-macht-keinen-sinn/
Jochen Kalmbach (MVP VC++)- Als Antwort markiert Robert BreitenhoferModerator Freitag, 17. Juni 2011 12:03
-
Habs jetzt hinbekommen mit der Passwortabfrage! Danke nochmals an Visual CPlusPlus
String ^s = textBox1->Text;
String ^x = ("passwort");
if(s==x)
{ MessageBox::Show("Richtiges PW");
}
else
MessageBox::Show(" Falsches Passwort");Edit: Das einzige was ich irgendwie nicht gebacken bekomme ist die Sache mit dem externen Programm öffnen. Kann mir das mal jemand erklären? Was muss ich da alles machen?
- Als Antwort markiert Robert BreitenhoferModerator Freitag, 17. Juni 2011 12:03
Alle Antworten
-
Hallo,
ich möchte mit einer CLR/Windows Forms Anwendung folgendes machen:
Sie soll ein Textfeld haben, in dass ich ein Passwort eingeben kann. Wenn ich das richtige Passwort eingegeben habe soll ein Text erscheinen, am besten mit der MessageBox.
Und sie soll externe Programme öffnen können, also einfach ein Button mit verlinkung zu einer .exe.
Wäre sehr dankbar wenn mir einer den Code dafür geben könne bin absoluter Anfäger!
- Zusammengeführt Robert BreitenhoferModerator Freitag, 17. Juni 2011 12:50 Gleiches Thema
-
Programme starten kann man mit WinExec oder ShellExecute. Registrierte Anwendungen (Word, VS, Notepad, ...) brauchen keinen Pfad.
Möchtest du über deinem Editfeld diese Passwortansicht(********) haben, oder geht es dir um das Auslesen der Datenm aus dem Edit feld?
VisualCPlusPlus -
Danke für die Antwort!
Ja ich möchte die Passwortansicht haben, geht ja aber ganz einfach mit PasswordChar. Wie gesagt ich möchte in das Textfeld dass Passwort eingeben und dann per klick auf den Button soll über die MessageBox ein Text erscheinen. Also praktisch den Text mit nem Passwort verschlüsseln und.
Edit:
Hab mal ein bisschen mit dem ShellExecute rumprobiert kannst du mir ein Beispiel machen wie ich die richtige anwende. Ich will die Anwendung ja mit dem Klick auf den Button starten. Ist das auch für .net?
- Bearbeitet germanman Freitag, 3. Juni 2011 21:04
-
Ich kenn mich mit Windows Forms nicht so gut aus.
String^ s = textBox1->Text;
damit wird aus textBox1 der Inhalt in die Variable s kopiert.mit
if(strcmp(string1, string2))
{
//string1 == string 2
}kann man Strings vergleichen
in der MFC kann man Messageboxen mit
MessageBox(_T("Text\nNeue Zeile"), _T("Titel der MB"), MB_OK | MB_INFORMATION);
erzeugenbei einfachen Meldungen ginge auch
AfxMessageBox
wie man das aber bei Windows Forms geht weiß ich nicht.Um den Buttonklick abzufangen musst du einen Meldunghandler für den Button hinzufügen. Bei der MFC: Rechtsklick auf SE->Steuelement hinzufügen
VisualCPlusPlus -
Habs jetzt hinbekommen mit der Passwortabfrage! Danke nochmals an Visual CPlusPlus
String ^s = textBox1->Text;
String ^x = ("passwort");
if(s==x)
{ MessageBox::Show("Richtiges PW");
}
else
MessageBox::Show(" Falsches Passwort");Edit: Das einzige was ich irgendwie nicht gebacken bekomme ist die Sache mit dem externen Programm öffnen. Kann mir das mal jemand erklären? Was muss ich da alles machen?
- Als Antwort markiert Robert BreitenhoferModerator Freitag, 17. Juni 2011 12:03
-
Habs mal mit ShellExecute(0, "open", "run.exe", 0, 0, SW_SHOWNORMAL ); versucht. Allerdings bekomme ich folgende Fehlermeldung:
Fehler 1 error C2664: 'ShellExecuteW': Konvertierung des Parameters 2 von 'const char [5]' in 'LPCWSTR' nicht möglich
Was ist das?
-
Wenn Du schon C++/CLI machen musst, dann bitte konsequent: Also Anstall "ShellExecute" verwende bitte "System::Diagnostics::Process::Start"!
Und siehe auch:
http://blog.kalmbach-software.de/de/2010/03/05/ccli-und-winforms-macht-keinen-sinn/
Jochen Kalmbach (MVP VC++)- Als Antwort markiert Robert BreitenhoferModerator Freitag, 17. Juni 2011 12:03
-
MFC ist ein "native" C++ Framework für Windows. Es ist schwerer wie WinForms.
Wenn Du was einfaches machen willst, dann verwende C# und WinForms.
Wenn Du etwas machen willst, was überall ohne installation von .NET läuft, dann verwende MFC (oder ein anderes native GUI Framework, wie z.B. Qt).
Jochen Kalmbach (MVP VC++)