Laden...

Forenbeiträge von DeNico Ingesamt 27 Beiträge

23.10.2012 - 12:14 Uhr

Genau.

Ich weiß nicht wie ich den WebService einbinden und benutzen kann und wie ich den MailClient deklarieren soll.

23.10.2012 - 11:24 Uhr

Hi,

ich bin gerade dabei eine Kontaktanfrage für eine Webseite zu programmieren.
Diese soll mit Silverlight laufen.

Jedoch ist mir aufgefallen, dass ich es das using System.Net.Mail in Silverlight gar nicht gibt.

Ich habe auch schon lange genug gegoogelt. Anscheinend kann man das mit einem WebService bewerkstelligen. Leider habe ich bis jetzt immer noch nicht verstanden, wie das ganze funktioniert.

Könnt ihr mir da eventuell eine Hilfestellung zu geben?

16.10.2012 - 14:04 Uhr

Habs gelöst.

Ich muss den Adobe Reader gar nicht direkt ansteuern. Dieser wird automatisch angesteuert, sobald die Pdf gedruckt werden soll.


            quelle = System.IO.File.ReadAllText("Pfad_Quelle.bin");
            drucker = System.IO.File.ReadAllText("Drucker.bin");
            
            try
            {

                pdf = new DirectoryInfo(quelle).GetFiles("*.pdf").OrderByDescending(fi => fi.CreationTime).First().FullName;



                try
                {



                    Process process = new Process();
                    process.StartInfo.Verb = "printto";
                    process.StartInfo.FileName = pdf;
                    process.StartInfo.Arguments = "\"" + drucker + "\"";
                    process.StartInfo.CreateNoWindow = true;
                    process.StartInfo.RedirectStandardOutput = true;
                    process.StartInfo.UseShellExecute = false;


                    process.Start();
                    process.CloseMainWindow();
                    process.Close();
                    notifyIcon1.BalloonTipText = "Auftrag " + pdf + " wird gedruckt.";
                    notifyIcon1.ShowBalloonTip(1000);
                  }


                catch
                {
                }

            }


            catch { }

16.10.2012 - 13:15 Uhr

Hallo alle zusammen,

Ich habe mir folgendes vorgenommen:

Ich bekomme in Outlook mehrmals am Tag Emails mit einer Pdf Datei als Anhang.
Diese muss ich dann alle von Hand abspeichern und ausdrucken.

Da das viel Arbeit ist habe ich mir überlegt, das ganze zu automatisieren.

Nun habe ich ein VBA Script für Outlook geschrieben, welches die Pdfs automatisch speichert.

Zum automatischen Drucken habe ich mir überlegt, ein Programm zu schreiben, welches in einem Timer die Pdfs druckt.


//quelle ist der Pfad zu den Pdf Dateien
//acrobat ist der Pfad zur Acrobat Reader.exe
            quelle = System.IO.File.ReadAllText("Pfad_Quelle.bin");
            acrobat = System.IO.File.ReadAllText("Pfad_Adobe.bin");

            try
            {
//pdf ist die zu druckende Pdf Datei
                pdf = new DirectoryInfo(quelle).GetFiles("*.pdf").OrderByDescending(fi => fi.CreationTime).First().FullName;



                try
                {



                    Process process = new Process();
                    process.StartInfo.FileName = acrobat;
                    process.StartInfo.Verb = "printto";
                    process.StartInfo.Arguments = "/p /s /h \"" + pdf + "\"";
                    process.StartInfo.CreateNoWindow = true;
                    process.StartInfo.RedirectStandardOutput = true;
                    process.StartInfo.UseShellExecute = false;


                    process.Start();
                    process.CloseMainWindow();
                    process.Close();
                    notifyIcon1.BalloonTipText = "Auftrag " + pdf + " wird gedruckt.";
                    notifyIcon1.ShowBalloonTip(1000);
                    
                }


                catch
                {
                }

            }


            catch { }

Das klappt alles wunderbar.

Mein Problem ist jetzt aber, dass immer der Standard Drucker genommen wird, jedoch müssen die Pdfs mit einem anderen Drucker gedruckt werden.

Für eine Idee, wie man den Drucker einstellen kann, ohne den Standard Drucker zu ändern, wäre ich sehr dankbar.

LG Nico

21.09.2012 - 10:43 Uhr

Hallo Fzelle,

du hattest Recht gehabt, danke. 😃

Darauf wäre ich nie gekommen.

21.09.2012 - 08:47 Uhr

verwendetes Datenbanksystem: SQL Server 2008 R2

Hi,

ich habe ein Problem mit meiner dataGridView. Ich habe diese dataGridView an eine Datenbanktabelle gebunden. das Abrufen funktioniert einwandfrei. Wenn ich jedoch nun von einer Reihe, die ausgefüllt ist, in eine leere Zeile wechsle, zählt ein int(identity 1, 1) immer minus 1, obwohl überhaupt nichts in der Zeile stehen sollte.

Im Anhang findet ihr ein Bild von meinem Problem. Wenn man nun von der leeren Zeile in eine ausgefüllte springt, verschwindet die negative Zahl.
Wechselt man jedoch nun wieder in die leere Zeile steht anstatt -1 nun -2 da. Wenn man das ganze nochmals wiederholt steht -3 in der leeren Zeile usw.

Kann mir jemand sagen wo das Problem her kommt? Ich habs schon mit F11 durch den Debugger laufen lassen um zu schauen ob da irgendwas steht. Tut es aber nicht.

14.09.2012 - 09:38 Uhr

verwendetes Datenbanksystem: MS SQL Server 2008 R2

Hallo,

ich bin gerade dabei ein kleines Verwaltungsprogramm zu schreiben, womit man Lagerbestände verschiedener Artikel einsehen und verändern kann.

Nun habe ich für verschiedene Artikelgruppen verschiedene Tabellen in meiner Datenbank angelegt.

Wenn ich nun mit der datagridView eine Tabelle einfüge funktioniert das auch super.

Ich möchte es gerne so realisieren, dass man über eine comboBox die verschiedenen Kategorien auswählen kann. Sobald diese ausgewählt ist möchte ich, dass in der datagridView die passende Tabelle angezeigt wird.

Ich habe es mit dem MSDN Beispielcode probiert. Hat aber leider nicht funktioniert.


 private void GetData(string selectCommand)
        {
            try
            {
                BindingSource bindingSource1 = new BindingSource();
                // Specify a connection string. Replace the given value with a 
                // valid connection string for a Northwind SQL Server sample
                // database accessible to your system.
                String connectionString ="Data Source=localhost;Initial Catalog=Inventur;Persist Security Info=True;User ID=testuser;Password=test123";
                // Create a new data adapter based on the specified query.
               SqlDataAdapter dataAdapter = new SqlDataAdapter(selectCommand, connectionString);

                // Create a command builder to generate SQL update, insert, and
                // delete commands based on selectCommand. These are used to
                // update the database.
                SqlCommandBuilder commandBuilder = new SqlCommandBuilder(dataAdapter);

                // Populate a new data table and bind it to the BindingSource.
                DataTable table = new DataTable();
                table.Locale = System.Globalization.CultureInfo.InvariantCulture;
                dataAdapter.Fill(table);
                bindingSource1.DataSource = table;

                // Resize the DataGridView columns to fit the newly loaded content.
                dataGridView1.AutoResizeColumns(
                    DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);
            }
            catch (SqlException)
            {
                MessageBox.Show("To run this example, replace the value of the " +
                    "connectionString variable with a connection string that is " +
                    "valid for your system.");
            }
        }


private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {

            kategorie = Convert.ToString(comboBox1.SelectedItem);
            dataGridView1.DataSource = inventurDataSet1BindingSource;
            GetData("select * from " + kategorie);
        }

Kann mir jemand vielleicht eine Hilfestellung dazu geben?

/edit

habs jetzt so gemacht. Da die Spaltennamen immer gleich sind, habe ich diese statisch gemacht.

Dann habe ich eine SQL Connection gemacht und die Werte in die datagridView geschrieben.

Wenn man jetzt die Kategorie in der comboBox wechselt, wird alles aus der datagridView gelöscht und wieder aus der neuen Tabelle eingefügt.

28.08.2012 - 09:00 Uhr

Habs hinbekommen. Flüchtigkeitsfehler. 😕

Hab vergessen in den Ereignissen des PrintDocuments die PrintPage hinzuzufügen.

Jetzt gehts 😃

Danke für die Hilfe.

28.08.2012 - 08:23 Uhr

Hi,

ich versuche gerade eine komplette listView zu drucken. Habe vorher noch nie etwas mit der Druckfunktion programmiert. Für den Anfang versuche ich nur einen vorgeschriebenen Text zu drucken.
Am Anfang hat der Druck nicht einmal reagiert. Doch jetzt bin ich schon soweit, dass der Drucker immerhin drauf reagiert 🤔

Jetzt versuche ich einen im Code vorgeschriebenen Text zu drucken, aber der Druck spuckt, egal was ich mache, nur leere Seiten aus.

Hier der Code:


 private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
            {
                String textToPrint = "Test-Ausdruck";
                Font printFont = new Font("Arial", 18, FontStyle.Bold);
                e.Graphics.DrawString(textToPrint, printFont, Brushes.Black, 10, 25);
            }

        private void button8_Click(object sender, EventArgs e)
        {
            printDocument1.Print();
        }

Bitte um Hilfe. Ich bin langsam echt am verzweifeln. X(
Bin schon seit ein paar Tagen leere Seiten am drucken und habe schon das komplette Internet gelesen.

Ein Papierkarton ist schon durchgelaufen. 🙁

24.08.2012 - 09:38 Uhr

Hab ich gerade versucht. Leider nein.

Habe ich eventuell etwas bei meinem Code falsch gemacht?

Die Option KeyPreview habe ich in meiner Form aktiviert. Allerdings wird die Form2, in der sich das Event befindet, durch einen Button in Form1 geöffnet. Muss ich die KeyPreview dort auch aktivieren oder spielt das keine Rolle?

24.08.2012 - 08:52 Uhr

Hi
Ich habe ein Problem mit dem KeyDown Event.
Ich möchte, wenn ich die entfernen Taste drücke das aktuelle listView Element auslesen lassen und dann aus einer SQL Tabelle löschen lassen.
Das löschen, sowie das auslesen funktioniert einwandfrei-also mit einem Button.

Folgendes Event habe ich erstellt.


private void listView1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Delete)
            {
                MessageBox.Show("Geht");
                e.Handled = true;
            }
        }

Kann mir jemand evtl. sagen wo mein Fehler liegt?
Ich bin schon seit gestern Mittag verzweifelt am googlen und probieren, ob es irgendwie geht...

23.08.2012 - 16:05 Uhr

Hi

Ich bin gerade dabei ein Programm zu schreiben und habe bis jetzt 10 verschiedene Windows-Forms.
Nun wollte ich gerade eben eine 11. Form hinzufügen und diese über

new Form11().Show();

anzeigen lassen doch mein Visual Studio findet diese Form einfach nicht. Ich habe schon mehrere verschiedene Namen für die Form ausprobiert doch keine wurde gefunden.

Was kann man da tun?

21.08.2012 - 17:06 Uhr

Hi,

ich bin schon seit heute morgen dabei einen MMS n-tv Stream in mein Programm einzubinden(mms://217.118.170.203/ntvlive).
Wenn ich es mit einem Webbrowser mache öffnet sich der Media Player. Wenn ich es in einem Panel wie ein Video mit Directx AudioVideoPlayback öffnen lasse bekomme ich immer die Exception "Fehler in der Anwendung".

Das habe ich wie folgt gemacht.


ntvstream.Owner = panel3;
ntvstream.Size = new Size(1000, 600);
Video ntvstream = new Video(@"mms://217.118.170.203/ntvlive");
ntvstream.Play();

Kann mir bitte jemand einen Denkanstoß geben wie ich vorgehen kann damit ich den stream zum laufen bekomme?

27.06.2012 - 13:49 Uhr

Vielen Dank für die Hilfe.

Mir ist gerade eingefallen, dass normale Benutzer garnicht die Prozesse anderer Benutzer sehen können, sondern nur Administratoren die Rechte dazu besitzen. Von daher hat sich das erledigt.

27.06.2012 - 13:08 Uhr

Hi,

ich habe folgendes Problem. Ich möchte mit meinem c# programm ein beliebiges Programm beenden(bspw. Outlook). Wenn ich das mit


                Process[] processes2 = Process.GetProcessesByName("outlook");
                processes2[0].Kill();

mache schließt sich Outlook auch ganz normal. Jetzt möchte ich aber outlook benutzerspezifisch beenden. Wenn z.B. zwei Benutzer auf einem PC angemeldet sind(z.B. Klaus und Peter) beendet mein Programm bei beiden Outlook. Nun möchte ich aber, dass sich Outlook nur bei einem Benutzer schließt.

Also wenn Klaus und Peter Outlook offen haben, dass sich nur bei Klaus Outlook schließt.

Könnt ihr mir eventuell dabei helfen?

21.06.2012 - 10:12 Uhr

Hi Alf Ator

Danke für deine Antwort. Ich hab es jetzt mit file.copy gemacht. Funktioniert einwandfrei, sogar noch besser. Wenn ich das Programm vorher geöffnet hab ist kurz die DOS-Box aufgegangen. Jetzt kommt nichts mehr also sieht es auch schöner aus.

21.06.2012 - 09:43 Uhr

Habs hinbekommen. Hier die Lösung.

datei = new DirectoryInfo(tmp).GetFiles("pre*.tmp").OrderByDescending(fi => fi.CreationTime).First().FullName;

System.Diagnostics.Process.Start("xcopy", datei + " c:\\Testordner\\" + user + "\\" + dateiname + ".paf* /d /e /y /i");

System.Threading.Thread.Sleep(2000);


string pafdatei = "C:\\OnlineBestellung\\" + user + "\\" + dateiname + ".paf";

Attachment attachment = new Attachment(pafdatei);

Email.Attachments.Add(attachment);

Das Probelm dabei war jetzt, dass mein Programm das Attachment schon einfügen wollte, mein PC aber die Datei noch nicht erstellt hatte. Mit dem Wartebaustein funktioniert das einwandfrei.

Ich habs gerade auch schon getestet. Die Dateien kommen komplett an und es fehlt nichts.

21.06.2012 - 09:26 Uhr

Hi

Ich bin gerade dabei eine .tmp Datei, die von einem anderen Programm erzeugt wird, in eine .paf Datei zu schreiben und diese dann als Email Anhang zu versenden.

Zuerst habe ich es mit einem Streamwriter gemacht. Ich habe die .tmp Datei in einer richTextbox auslesen lassen und diesen Text habe ich dann in eine .paf Datei speichern lassen.

richTextBox1.Text = File.ReadAllText(new DirectoryInfo(tmp).GetFiles("pre*.tmp").OrderByDescending(fi => fi.CreationTime).First().FullName);

StreamWriter WcStream = new StreamWriter(@"c:\Testordner\" + user + @"\" + dateiname + ".paf");
WcStream.Write(File.ReadAllText(new DirectoryInfo(tmp).GetFiles("pre*.tmp").OrderByDescending(fi => fi.CreationTime).First().FullName));
WcStream.Close();

Das hat soweit funktioniert aber das Problem dabei war, dass er irgendwie nicht die ganze Datei gespeichert hat. In der Datei waren auch Bilder. Zuerst habe ich gedacht, dass in der richTextbox nicht genügend Platz ist, da, wenn ich eine Datei mit 2MB gespeichert hab, die gespeicherte Datei nur noch 1,2MB groß war.

/edit
Aber, auch wenn ich das mit kleineren Dateien, die z.B. nur 300kb groß sind mache, passiert genau dasselbe.

Jetzt habe ich versucht, die .tmp Datei zu speichern und umzuschreiben mit cmd xcopy

datei = new DirectoryInfo(tmp).GetFiles("pre*.tmp").OrderByDescending(fi => fi.CreationTime).First().FullName;

System.Diagnostics.Process.Start("xcopy", datei + " c:\\OnlineBestellung\\" + dateiname + ".paf /E /Y");

Attachment attachment = new Attachment(@"c:\Testordner\" + dateiname + ".paf");

Email.Attachments.Add(attachment);

Jetzt habe ich da das Problem, dass mich die DOS Box fragt, ob es eine Datei oder ein Verzeichnis ist und bis ich das nicht beantworte wird die Datei nicht erstellt und mein Programm findet dadurch natürlich nicht die Datei.

19.06.2012 - 12:24 Uhr

Ich habe jetzt folgendes gemacht:

  static void Main(string[] args)
        {
            MessageBox.Show(Convert.ToString(args));
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1(args));
        }

Wenn ich dann mein Testdokument mit dem pdfmailer drucke, öffnet sich mein programm und in der messagebox steht:

System.String[]

19.06.2012 - 12:13 Uhr

Was meinst du genau und wie mache ich das?
In meinem Mailprogramm oder bei dem pdfmailer oder wo?

Danke für die schnelle Antwort.

19.06.2012 - 12:02 Uhr

Hi

Ich habe ein Programm geschrieben, um E-mails zu versenden. Jetzt möchte ich es gerne so machen wie bei Outlook. Wenn ich zum Beispiel in Word einen Ausdruck mit einem PDF Mailer mache, öffnet sich automatisch Outlook und der Ausdruck befindet sich im Anhang.
Mittlerweile bin ich so weit, dass sich mein Mailprogramm, anstatt Outlook, zum versenden öffnet . Jedoch steht dann im Anhang anstatt dem Namen der Datei einfach nur -Embedding

Das habe ich mit DragDrop hinbekommen.

  this.listBox1.DragDrop += new
            System.Windows.Forms.DragEventHandler(this.listBox1_DragDrop);
            this.listBox1.DragEnter += new
            System.Windows.Forms.DragEventHandler(this.listBox1_DragEnter);

Im Screenshot seht ihr noch, wie das genau da steht.

Wenn ich die E-Mail dann so verschicke kommt kein Anhang an.
Könnt ihr mir da weiterhelfen?

11.06.2012 - 13:46 Uhr

Welche Komponente soll ich denn benutzen und wie? Kannst du mir da sagen was ich benutzen soll?

11.06.2012 - 13:31 Uhr

Ich hab es jetzt hinbekommen E-Mails zu empfangen. Und zwar hab ich es so gemacht:


   WriteBuffer = enc.GetBytes("RETR 1\r\n");
                netStream.Write(WriteBuffer, 0, WriteBuffer.Length);
                nachricht = strReader.ReadLine();
                richTextBox1.Text += "Server sagt:\r\n" + strReader.ReadLine() +  "\r\n\r\n";
                for (int i = 0; i < 250; i++)
                {
                    richTextBox1.Text = richTextBox1.Text + strReader.ReadLine() + "\r\n\r\n";
                }

                StreamWriter WcStream = new StreamWriter(@"c:\users\nbastian\desktop\test.html");
                WcStream.Write(richTextBox1.Text);
                WcStream.Close();

Gibt es da eine andere Lösung?

Das Problem ist allerdings jetzt, wenn ich meine E-Mail mit dem Betreff test und dem Inhalt test aufrufe zeigt er mir alles an. Von welcher IP das gesendet wurde und dann noch Millionen Zeichen die total überflüssig sind und mittendrin dann die eigentliche E-Mail.

Könnt ihr mir dabei helfen, wie ich das rausfiltern kann?

11.06.2012 - 11:57 Uhr

Danke ich werde es ausprobieren. Danach hatte ich nicht gesucht weil ich nicht wusste, dass das das ist.

11.06.2012 - 11:23 Uhr

Leider weiß ich nicht, wie ich jetzt eine bestimmte Nachricht abfragen kann.
Ich möchte jetzt z.B. die Nachricht in rot in einer Textbox anzeigen lassen.

11.06.2012 - 11:11 Uhr

Mein Problem liegt darin, dass ich nicht weiß, wie ich die einzelnen E-Mails auslesen kann, sodass sie in einem normalen Text erscheinen...Am liebsten würde ich es in einer TextBox anzeigen lassen, aber ich weiß nicht wie ich dem Server sagen soll, dass ich den Inhalt der E-Mail haben möchte.

Ich habe auch schon auf Seiten wie Codeproject etc. geschaut aber konnte damit nicht wirklich was anfangen.

ich meins nicht böse, aber wie suchst du denn? Mit Pop3 hast du doch schon nen richtigen Suchbegriff. Du sagst du hast gegoogelt, mit welchen Begriffen denn? Alleine "C# pop3" liefert sofort massig Ergebnisse von einfachen Beispielen, bis Beispielclients.

Ich habe mit folgendem auf Google und Youtube gesucht:

Google:
c# pop 3 email lesen
c# pop3 email abrufen
und noch weitere

Youtube dasselbe

11.06.2012 - 11:00 Uhr

Hi

Ich bin gerade dabei meinen eigenen E-Mail Client zu schreiben. Bis jetzt kann ich E-Mails mit Text und Dateianhang versenden, sowie mein E-Mail Konto abfragen, ob ich E-Mails in meinem Konto habe.

Mein Problem ist jetzt, wie ich diese Mails auslesen kann. Habe schon mehrere Stunden gegoogelt und auch über die Sufu geguckt aber leider nichts passendes gefunden. Könnt ihr mir da weiter helfen?

Wenn ihr irgendwelche Quellcodes braucht, sagt welche ihr braucht.

Lg Nico