Laden...

Forenbeiträge von iSteffen Ingesamt 16 Beiträge

19.07.2023 - 15:33 Uhr

Wie würde das am besten aussehen? Sry für meine dumme frage

19.07.2023 - 11:57 Uhr

Sry, wenn ich mich hier falsch ausgedrückt habe.

Ich habe eine Firewall vor mir und möchte hier folgendes ausführen.

  1. Ein SSH befehl senden "system register"
  2. Es wird dann eine Art abgespeckter Editor geöffnet, wo ich einen String (Firewall Lizenz) hineinschreibe.
  3. Um aus dem Editor raus zu kommen muss ich in Putty die Tastenkombi STRG+D senden. Ein andern weg ist mir nicht bekannt.

Meine Frage ist, ob ich das irgendwie in C# mit SSH.NET umsetzen kann? Ich hab schon gegoogelt und "\x04" ist gleichwertig wie STRG + D. Das geht aber leider nicht.

Vielleicht hat jemand eine Idee? 😃

19.07.2023 - 10:22 Uhr

Wie man befehle verschickt ist mir ja bekannt. Ich habe ja ein spezielles Problem und hier komm ich nicht weiter.

Trozdem danke 😃

18.07.2023 - 22:50 Uhr

Hallo,

ich möchte gerne einen SSH Befehl per c# SSH.NET an ein Gerät schicken. Ich bin leider in einem Fenster gefangen, wo ich nur mit STRG + D rauskomme.

Wie kann ich das am besten machen?

Mein Code:                     
using (var ssh1 = new SshClient(ipAdF, fwB, fwPW))
                    {
                        ssh1.Connect();

                        string logFilePath = Path.Combine(Path.GetTempPath(), "TEXT.log");
                        using (StreamWriter sw = File.AppendText(logFilePath))
                        {
                            string[] commands = new string[]
                            {
                            "system register",
                            fwlizenz,
                            "\x04",
                            };

                            var sshStream = ssh1.CreateShellStream("xterm", 80, 24, 800, 600, 1024);
                            foreach (var command in commands)
                            {
                                sw.WriteLine(command);
                                sshStream.WriteLine(command);
                                sshStream.Flush();

                                if (command == fwlizenz)
                                {
                                    Thread.Sleep(2000);
                                }
                            }
                        }

                        ssh1.Disconnect();
                    }

Vielen Dank schon mal!

Gruß 😃

11.07.2022 - 22:07 Uhr

Ich habe mir jetzt was zusammen gebastelt, bekomme aber immer folgenden Fehler: > Fehlermeldung:

System.InvalidOperationException: "Der aufrufende Thread kann nicht auf dieses Objekt zugreifen, da sich das Objekt im Besitz eines anderen Threads befindet."

Hier mein Code


        private async void Btn_senden_Click(object sender, RoutedEventArgs e)
        {
            // Mail wird verschickt mit allen Informationen
            await Task.Run(() => process1());
        }

 public async Task process1()
        {

            string TicketBetreff = "#" + Tb_KdNr.Text + " " + Tb_KdName.Text + " - " + Tb_Betreff.Text;

            var values = new Dictionary<string, string>
                {
                    { "phpSubject", TicketBetreff},
                    { "phpBody", [b]Tb_Inhalt.Text [/b]},
                    { "phpSendMail", "phpSendMail" }
                };

            var content = new FormUrlEncodedContent(values);

            var response = await client.PostAsync("https://URL/test/index.php", content);

            var responseString = await response.Content.ReadAsStringAsync();

        }

Ich habe mir auch das hier im Forum durchgelsen. Verstehe es aber nicht 🙁

[FAQ] Controls von Thread aktualisieren lassen (Control.Invoke/Dispatcher.Invoke)

Kann mir hier jemand helfen?

11.07.2022 - 19:26 Uhr

Ok, danke für die Anwort!

Also kann ich eigentlich bei WebClient bleiben?

Falls ja wie kann ich das am besten in ein eigenen Task schreiben? Er führt es bei mir einfach nicht aus.

11.07.2022 - 18:35 Uhr

Hallo Forum,

da Microsoft empfiehlt die Webclient Klasse nicht mehr zu verwenden bin ich auf der Suche nach Alternativen Lösungen.

Aktuell sende ich per WebClient meine Infos per POST an mein PHP Skript. Ich würde das gerne mit der HTTPClient Klasse Lösen da Microsoft das empfielt.

Wie bekomme ich das den am besten hin?

Mein PHP Script erwartet folgende Daten:

"phpSubject" = textBox1.Text,
"phpBody" = richTextBox2.Text.Replace("\n", "<br>");
"phpSendMail" = "phpSendMail"

Ich erhoffe mir dann auch das der Upload schneller läuft. Mit WebClient kann ich das zwar alles in einen Task schreiben, schneller ist es dadurch aber nicht.

Hier mein aktueller Code falls es jemand interessiert:


 private void button1_Click(object sender, EventArgs e)
        {
            string URL = "https://URL/test/index.php";
            WebClient wc = new WebClient();

                formData["phpSubject"] = textBox1.Text;
                formData["phpBody"] = richTextBox2.Text.Replace("\n", "<br>");
                formData["phpSendMail"] = "phpSendMail";

                byte[] responseBytes = wc.UploadValues(URL, "POST", formData);
                string responsefromserver = Encoding.UTF8.GetString(responseBytes);
                wc.Dispose();
            }


        }   

Gruß
iSteffen

30.06.2022 - 21:21 Uhr

Gibt es für sowas schon Beispielprojekte?

Ich tue mir extrem schwer den Anfang zu finden.

30.06.2022 - 21:19 Uhr

Ziel ist es, dass der Kunde ein Kontaktformular ausfüllen kann und das in der Applikation.

Also nein der User gibt keine eigenen Maildaten ein.

Das macht für mich ja das Thema so kompliziert 🙁

30.06.2022 - 18:04 Uhr

Hallo Forum,

ich möchte in meiner Anwendung die Möglichkeit anbieten, eine E-Mail zu verschicken. Ich möchte aber mein SMTP Passwort nicht im Code schreiben.

Was kann ich denn hier machen?

Gruß
iSteffen

27.06.2022 - 17:51 Uhr

Hallo Forum,

ich bin echt verzweifelt. Ich habe ein ICON im SVG (auch PNG) Format und habe das umgewandelt auf .ico. Auf meiner Desktop-Vorschau ist das ICON scharf und sieht gut aus. Sobald ich das in Visual Studio meiner .exe Datei zuweise und Debugge, sieht es verpixelt aus.

Bevor die Frage kommt, Format hab ich schon 256x256, 128x128 und 64x64 Pixel benutzt. Immer verpixelt.

Beispiel ist im Anhang 🙂

Es kann ja nicht sein, dass Windows selbst und andere Hersteller aufwändigere Icons erstellt, nur ich bekomme es nicht hin.

Gruß
iSteffen

25.06.2022 - 12:53 Uhr

Mega gut! Das ist genau das was ich gesucht habe.

Kann ich Version noch irgendwie automatisch abfragen?

Es wird in Zukunft bestimmt die Version 16,17,18… kommen.

25.06.2022 - 09:41 Uhr

Das ist ein Custom TeamViewer.

Wie könnte den die Regex Anfrage hierfür aussehen? Und bleib ich dann bei der „WebClient“ Klasse? Oder sollte ich etwas anderes nehmen?

Gruß
iSteffen

24.06.2022 - 22:15 Uhr

Hallo Forum,

ich habe ein für mich unlösbares Problem. Ich möchte immer die aktuelle TeamViewer Quick Version herunterladen. Leider ist die URL nach jedem Update eine andere.

Wie bin ich zu dieser URL gekommen? Ich habe auf folgender URL ein Rechtsklick auf "Erneut versuchen" gemacht und mir die URL gespeichert (

TeamViewer
). Diese ändert sich, wie zuvor erwähnt, nach jedem Update von TeamViewer. Wie kann ich eine Abfrage nach dieser URL machen? Das er mir immer die aktuelle nimmt?

Ziel ist es immer eine aktuelle TeamViewer QuickSupport Version herunterzuladen. Dies mache ich aktuell mit folgendem Code:


 public void TVLoad()
        {
            string desktopPath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
            string remoteUri = "https://customdesignservice.teamviewer.com/download/windows/v15/pc6axfs/TeamViewerQS.exe?sv=2020-04-08&se=2022-06-25T20%3A15%3A22Z&sr=b&sp=r&sig=AFFtrP5I8v0FxyZTJm9WCYQtH%2BtZ8vDl0rahfQ21%2BEo%3D&1656101722991";  <- DIESE URL ÄNDER SICH IMMER
            string filePath2;
            string desktopPath2 = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
            filePath2 = desktopPath + "/Fernwartung.exe";
            File.Delete(filePath2);
            WebClient myWebClient = new WebClient();
            myWebClient.DownloadFile(remoteUri, filePath2);
            Process.Start(filePath2);
        }

Gruß
iSteffen

16.05.2022 - 19:08 Uhr

Hallo Forum,

ich hätte gerne eine Schleife, die permanent Prüft, ob das Programm "TeamViewer" schon läuft, wenn ja, soll das Fenster sich schließen.

Wie könnte so was einfach aussehen?

Gruß
iSteffen

11.05.2022 - 19:08 Uhr

Hallo Forum,

ich habe mehrere Variablen, die immer dieselbe Prüfung unterlaufen sollen. Muss ich folgenden Code X mal kopieren oder kann ich das auch schöner machen:


ServiceController sc = new ServiceController("vmictimesync");
            Console.WriteLine("Der aktuelle Status vom Dienst ist {0}",
                              sc.Status.ToString());

             while (counter < 5)
            {
                if ((sc.Status.Equals(ServiceControllerStatus.Stopped)) || (sc.Status.Equals(ServiceControllerStatus.StopPending)))
                {  // Start the service if the current status is stopped.
                    Console.WriteLine("Versuche den Dienst zu starten...");
                    try { sc.Start(); } catch { Thread.Sleep(5000); counter++; }
                }
                else{}
            }

Die Variablen können auch Dienst1, Dienst2, Dienst3 und so weiter heißen. Hab nur keine Lust das X mal zu kopieren.

Gruß
iSteffen