Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von Tschebbe
Thema: Dateien in Setup einbinden - Setup in Setup einbinden (ClickOnce)
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hi red_dragon,
bin endlich mal dazugekommen an dem kleineren problemchen weiter zu machen und hat super funktioniert so wie du gesagt hast.

Ich hab das Dokument einfach wie beschrieben eingebunden und dann eine relative pfad angabe (ausgehend von der *.exe) gemacht.

Danke nochmal.

Gruss Tschebbe

Thema: Excel Visbile=false funktioniert nicht richtig.
Am im Forum: Office-Technologien

mh... damit kann ich aber ja nur einzelne Sheets verstecken.

Ich will das ganze Workbook oder das ganze Excel verstecken.

auch wenn ich

                this.openWB.Application.Visible = false;
mache bringt mich das nicht weiter, die Excel application ist zwar zum Startzeitpunkt nach wie vor nicht sichtbar, aber sobald man ein Excel workbook oeffnet, dann wird es sichtbar.

Was total bescheuert ist, da evtl. daten aus 5 excel files kopiert werden und wenn der user dann selbst eine andere Datei anschauen will oder so, dann werden sofort alle anderen 5 workbooks geoeffnet/angezeigt und in den einzelnen workbooks wird automatisch durch die sheets gesprungen, geprueft und und und ... (mein code eben)

Gibts sonst noch ideen? Ich versuch mal munter weiter :)

Thema: Excel Visbile=false funktioniert nicht richtig.
Am im Forum: Office-Technologien

joa, bisher habe ich auch noch keine Loesung gefunden wie ich es unterdruecken kann, weil wenn man eben eine Excel datei oeffnet, dann wird

this.openExcel.Visible = true;

gesetzt.

Vll. find ich ja noch was...

Thema: Excel Visbile=false funktioniert nicht richtig.
Am im Forum: Office-Technologien

Hat keiner eine Idee woran das liegen koennte und wie ich es beheben kann?

Gruesse Tom

Thema: Excel Visbile=false funktioniert nicht richtig.
Am im Forum: Office-Technologien

Hallo,
ich habe folgendes Problem. Ich starte mein Excel mit den folgenden Einstellungen:


        MSExcel.Application openExcel;
        MSExcel._Workbook openWB;
        MSExcel._Worksheet openSheet;
        this.openExcel = new MSExcel.Application();
        this.openExcel.Visible = false;
        this.openExcel.UserControl = false;

funktioniert dann auch alles wunderbar.

- Daten werden ausgelesen.
- Excel ist nicht sichtbar.

Wenn ich jetzt allerdings mein Programm laufen habe und dann eine Excel Datei oeffne, dann werden alle Dateien, welche grad ausgelesen werden sichtbar.

Was kann ich machen, damit dies nicht mehr der Fall ist?!

Wuensche euch Frohe Weihnachten und einen guten Rutsch.

Gruesse Tom

Thema: Dateien in Setup einbinden - Setup in Setup einbinden (ClickOnce)
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

so aehnlich oder so war der pfad meiner anwendung ist dies immer der selbe?
Was kommt nach ...?

Thema: Controls (zb Button) wärend Laufzeit erzeugen
Am im Forum: GUI: Windows-Forms

ok. ganz grosser fehler meinerseits ...

Thema: Controls (zb Button) wärend Laufzeit erzeugen
Am im Forum: GUI: Windows-Forms

gut die probleme waren auch gleich behoben.

Jetzt wird Excel aber tortzdem noch nicht gestartet.

Thema: Controls (zb Button) wärend Laufzeit erzeugen
Am im Forum: GUI: Windows-Forms

ok, also ich hab jetzt eine ganze weile herumprobiert und bin zu dem entschluss gekommen ein UserControl sei sinnvoll. Ich hab mein altes From in ein UserControl umgebaut und mir ein neue Host-Form gebaut mit dem ich mein UserControl immer wieder starten kann, dass funktioniert auch alles wunderbar.

Aber mein UserControl funktioniert nicht mehr zu 100%. eigentlich sollte es daten aus Excel bearbeiten und in eine Output datei schreiben. Mein OpenFileDialog und mein SaveFileDialog gehen noch. Dann start das UserControl einen Backgroundworker und da scheint irgendwie der hund begraben zu sein, weil er arbeitet und arbeitet und ich weiss nicht so richtig, wie ich einsehen kann was gearbeitet wird.

Gibt es eine moeglichkeit die Outputs des UserControls anzuschauen, weil bisher hatte ich meine ganzen sortier prozesse einfach mit Console.WriteLine() ausgegeben, aber das sehe ich ja jetzt nicht mehr, weil man auch mehrer starten kann.

Hier auch noch der Code, weil meistens sagt der mehr ;)


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ButtonArrayproject
{
    class ButtonArray : System.Collections.CollectionBase
    {
        private readonly System.Windows.Forms.Form HostForm;

        public ButtonArray(System.Windows.Forms.Form host)
        {
            HostForm = host;
            this.AddNewButtonArray();
        }

        public void AddNewButtonArray()
        {
            ECOUserControl aUserControl = new ECOUserControl();
            this.List.Add(aUserControl);
            HostForm.Controls.Add(aUserControl);
            aUserControl.Top = Count * 400;
            aUserControl.Left = 100;
            aUserControl.Tag = this.Count;
        }

        public System.Windows.Forms.UserControl this[int Index]
        {
            get
            {
                return (System.Windows.Forms.UserControl)this.List[Index];
            }
        }
        public void Remove()
        {
           if (this.Count > 0)
           {
              HostForm.Controls.Remove(this[this.Count -1]);
              this.List.RemoveAt(this.Count-1);
           }
        }
    }
}

host Form


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ButtonArrayproject
{
    public partial class Form1 : Form
    {
        ButtonArray MyControlArray;

        public Form1()
        {
            InitializeComponent();
            MyControlArray = new ButtonArray(this);

        }

        private void btnAdd_Click(object sender, EventArgs e)
        {
            MyControlArray.AddNewButtonArray();
        }

        private void btnRemove_Click(object sender, EventArgs e)
        {
            MyControlArray.Remove();
        }
    }
}


[EDIT]
Ich hab gerade festgestellt, dass Excel gar nicht mehr gestartet wird. Obwohl es davor in einem Form ging.

Thema: Controls (zb Button) wärend Laufzeit erzeugen
Am im Forum: GUI: Windows-Forms

ja, also ich wollte mehrmals das selbe form in einem form aufrufen.
Das funktioniert bisher auch recht gut mit:


            ECOUserForm subform = new ECOUserForm();
            subform.TopLevel = false;
            subform.Parent = this;
            subform.Show();

und

IsMdiContainer=True;

Ist das keine so gaengige Methode ein from in ein anderes einbinden?

Jetzt muss ich das nur noch optisch irgendwie hinbkommen, aber das sollte ja kein problem werden.

Danke fuer die anregungen

Thema: Controls (zb Button) wärend Laufzeit erzeugen
Am im Forum: GUI: Windows-Forms

mh... das ist aber ungeschickt, ich dachte ich koennte mir jetzt einfach ein neues Form erstellen und dann darin mehrmals einfach mein altes bestehendes form hinzufuegen und auch wieder loeschen. d.h. ja jetzt fuer mich, ich muss meine komplette oberflaeche neu schreiben und dann ganz neu anfangen...

Gibts eine andere moeglichkeit, dass ich z.b. meine Forms halt zwei mal aufrufe und sich eben zwei fenster oeffnen und ich in beiden parallel arbeiten kann?

Tom

Thema: Controls (zb Button) wärend Laufzeit erzeugen
Am im Forum: GUI: Windows-Forms

Hallo,
ich hab ein aehnliches Problem und zwar moechte ich ein ganzes bestehndens Form immer wieder untereinander per Button_Click einfuegen.

Ist das so einfach moeglich oder muss ich quasi jedes Control element neu einfuegen? Weil ich koennte mir denke ich menge arbeit ersparen, wenn ich einfach ein ganzes Form an eine bestimme stelle "kopieren" koennte.

Vielen Dank fuer die Ideen.

Tom

Thema: LINQ - Arrays sortieren, welche buchstaben und zahlen enthalten
Am im Forum: Datentechnologien

@yngwie: Die Loesung die ich geposted habe funktioniert. Ich schneide die Zahlen ab convertiere sie in int und lass sie dann sortieren. Funktioniert wunderbar.

Thema: LINQ - Arrays sortieren, welche buchstaben und zahlen enthalten
Am im Forum: Datentechnologien

ok super danke! Der denk anstoss hat mir geholfen. In meinem Fall war es so, dass immer das erste Element ein Buchstabe ist, somit konnte ich es wie folg realisieren:

var refDesOfNewSheet = from refdes in installationPoints_new
                        where refdes != "" && refdes != null
                        orderby Convert.ToInt32(refdes.Substring(1))
                        select refdes;

Gruesse Tom

Thema: LINQ - Arrays sortieren, welche buchstaben und zahlen enthalten
Am im Forum: Datentechnologien

Hallo,
ich hab folgendes Problem und zwar moechte ich String arrays sortieren, welche buchstaben und zahlen enthalten.


var refDesOfNewSheet = from refdes in installationPoints_new
                        where refdes != "" && refdes != null
                        orderby refdes
                        select refdes;

funktioniert alles ohne Fehlermeldung. Das Problem ist aber, dass meine Strings wie folgt aussehen:
"R10", "R9", "R8"
Wenn ich das nun sortiere sollte R8, R9, R10 heraus kommen, es kommt aber eben
R10, R8, R9 raus.

Wie kann ich das beheben? Das R gehoert mit zum string, d.h. ich brauche die inforamation und kann sie nicht einfach wegschneiden.

Danke fuer anregungen und ideen

Tom

Thema: Dateien in Setup einbinden - Setup in Setup einbinden (ClickOnce)
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

hat keiner eine idee :(

Thema: Dateien in Setup einbinden - Setup in Setup einbinden (ClickOnce)
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hi Bernd,
erstmal danke fuer die schnelle Antwort, aber iwie habe ich noch grundsaetzliche fragen auf die ich im internet keine antworten finde.

Wie kann ich den Kontrollieren ob die Datei da ist, weil ich waehle ja auch keinen Pfad wohin das Programm installiert werden soll, das kommt glaube ich daher, dass es eine ClickOnce installation ist.

Ich hab gerade die ganze festplatte durchsucht und das pdf file an keiner stelle gefunden, wo ich es nicht erwartet haette...

Wohin installiert sich mein Programm?

Tom

Thema: Dateien in Setup einbinden - Setup in Setup einbinden (ClickOnce)
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Ich bin quasi kurz davor von ersten Projekt meine setup zu erstellen.

Jetzt stellen sich aber ein paar fragen und zwar habe ich in meinem Projekt eine Hilfe (pdf-file) eigebunden.

Diese kann ich mit dem absoluten Pfad in meinem Program auch aufrufen und anzeigen lassen (acrobat reader).

Jetzt stellt sich fuer mich die Frage, wie ich diese PDF file in den Ordner bekomme?
Bzw. wohin installiert sich mein Projekt, welches momentan soviel ich nachgelesen habe von meinem ClickOnce setup installiert wird.

Eine weitere Frage ist auch noch, ich verwende PIA, kann ich das in die installation "einfach" einbinden, ansonsten wuerde ich mir das sparen und der user soll es selbst installieren.


Gruesse Tom

Thema: Excel - selbst arbeiten und programm C# code ausfuehren geht nicht
Am im Forum: Office-Technologien

ok, also das mit den ressourcen freigeben macht natuerlich Sinn.

Kryptische Variabeln:
oWB = Excel Workbook
oSheet = Excel Sheet
oXL = Excel Application

Diese ganze Block ist meine Exception. Das Problem ist quasi das ich Methoden habe:
header(oWB);
difference(oWB);
added(oWB);
deleted(oWB);
checkRevs(oWB);
checkDesignators(oWB);

welche in dem Excel File arbeiten. Wenn ich solange der prozess laeuft eine weitere Excel file aufmache, kann es sein / muss aber nicht. Das mein Programm einfach so abstuerzt.

Werde evtl. heute nachmittag an dem Problem weiter arbeiten. Wo kann ich mir die Stack Trace anschauen? Und welche Vorteile habe ich dann?

Ich hab selbst noch nicht soviel Fehler suche betrieben, da ich bisher nur uebungs aufgaben Programmiert habe und die immer recht simpel waren.

Danke Tomtom

Thema: Excel - selbst arbeiten und programm C# code ausfuehren geht nicht
Am im Forum: Office-Technologien

naja die Exception ist eine von mir programmierte:


            try
            {
                Console.WriteLine(path);
                // Start Excel and get Application Object
                object m = System.Reflection.Missing.Value;

                /*Excel.Application*/
                this.oXL = new Excel.Application();
                this.oXL.Visible = true;
                this.oXL.UserControl = true;
                System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo("en-US");
                this.oWB = this.oXL.Workbooks.Open(path, 0, true, 5, "", "", true, Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
                oSheet = (Excel._Worksheet)oWB.ActiveSheet;

                //Settings for RTF-File
                writeString2file(rtfsettings); 

                // Alle items which has in Difference != 0
                header(oWB);
                difference(oWB);
                added(oWB);
                deleted(oWB);
                checkRevs(oWB);
                if (this.refdes)
                {
                    checkDesignators(oWB);
                }

                // TEST AML
                //aml(oWB, "10231297");

                // Write end of file
                writeString2file("\\par}");

                // Close EXCLE
                oXL.Quit();

                Marshal.ReleaseComObject(oWB);
                Marshal.ReleaseComObject(oSheet);
                Marshal.ReleaseComObject(oXL);
                oWB = null;
                oSheet = null;
                oXL = null;
            }
            catch (System.Runtime.InteropServices.COMException ce)
            {
                MessageBox.Show("Error during opening the Excel import file!", ce.Message);
                Console.WriteLine("{0}", ce);
}

ich hab gerade gemerkt, dass die aber nur der fall ist, wenn ich eine neue datei oeffne, wenn ich in bereits geoeffnetten dateien arbeite oder diese speichere ist das meinem program egal.

Thema: Excel - selbst arbeiten und programm C# code ausfuehren geht nicht
Am im Forum: Office-Technologien

Hallo,
Ich hab ein utility geschrieben, das Daten aus Excel bearbeitet. Wenn ich jetzt nun gleichzeitig selbst was in Excel bearbeiten moechte, also eine andere Excel Datei oeffne stuerzt mein Programm ab und ich bekomme meine exception.

hat jmd. eine idee wie ich das aendern kann? ich meine es kann ja nicht sein, dass ich dan excel nicht verwenden kann oder?

Danke schoneinmal fuer die Anregungen.
Tom

Thema: ueberprufen ob ein array ein element enthaelt
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

mh... das ist natuerlich eine feine art. ok. kannte ich gar nicht... das haette mir evtl. viel code erstpart ;)

ich werde das mal einbauen und mal schauen ob es dann besser/schneller geht.

danke mal.

Thema: ueberprufen ob ein array ein element enthaelt
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

also in meinem fall will ich quasi wissen, welche Element in dem einen array enthalten sind und nicht in dem anderen und genau das selbe fuer das andere array.

d.h. ich suche die element die nur in einem der beiden arrays vorkommen.

ich bemerke gerade, dass in meinem beispiel ein fehler ist und zwar koennen die arrays unterschiedlich viele elemente haben.

Sortieren bringt das dann noch was? Weil die element stehen dann ja sehr wahrscheinlich an unterschiedlicher stelle.

Thema: ueberprufen ob ein array ein element enthaelt
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

@gfoidl ich will nur wissen ob das element im anderen array vorhanden ist oder nicht.

@herbivore ok, aber es macht ja sicher keinen sinn sie vorher zu sortieren oder?

Thema: ueberprufen ob ein array ein element enthaelt
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,
ich hab folgendes Problem. Ich hab zwei String arrays und wollte ueberprufen ob ein wert auch in dem anderen enthalten ist.

Bsp:

string[] ar1 = new string[] { "a", "b", "c", "d", "e", "f", "g" };
string[] ar2 = new string[] { "a", "b", "i", "d", "e", "f", "g" };

Mein string sind genau wie in deisem Beispiel leicht "vorsortiert" d.h. sie sind nicht sortiert, aber ich wuerde sagen zu 80% trifft es zu.

Was genau zu trifft ist einfach, dass das ar1 sehr wahrscheinlich ar2 ist.
Wenn ich nun bei ar2[4] bin macht es also wenig Sinn bei ar1[0] mit dem vergleichen zu starten.
Es waere sehr viel sinnvoller evtl. erst den vergleich ar1 == ar2 anzustellen und dann im array "nach hinten" weiter zu laufen.

Gibt es da evtl. eine bessere methode oder klingt das sinnvoll?

Ich habe leider gar keine erfahrung in sachen sortieren und habe es bisher mit zwei forschleifen gemacht.

Da es aber ca. 2 * 3000 arrays sind mit mindestens 100 elementen ist das sehr aufwendig und dauert lange.

Ich freu mich ueber jede idee und Anregung.

Und noch eine kleine frage. Wie kann ich den Quelltext von String.Contain() einsehen ?

Danke Tschebbe

Thema: EXCEL wirklich schliessen
Am im Forum: Office-Technologien

Also ich schliess mich mal Rainbird an. Hab alles sauber zugemacht und Excel wird geschlossen.

gute und hilfreiche Diskussion hier.

Thema: 2 dimensionale String array elemente vergleichen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Ok. Danke

Thema: 2 dimensionale String array elemente vergleichen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

ich dachte mir auch, dass solche fragen sicher oefters vorkommen. Leider habe ich nichts im Forum gefunden und komme auch irgendwie nicht zupotte.

Ich kann auch leider kein Ansatz hier reinschrieben, weil das sind ja nur for schleifen und irgendwie hab ich den voelligen knoten im kopf.

Kannst du vll. ein Link aus dem Forum posten.
Danke schonmal

Thema: 2 dimensionale String array elemente vergleichen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,
ich hab eine frage. Und zwar habe ich zwei zwei dimensionale String arrays, welche ich miteinander zeilenweise vergleichen moechte.

und zwar moechte ich wissen ob ein element der xten zeile ein element der xten zeile des anderen Array ist.

ich komme jetzt irgendwie nicht richtig zustreich, weil ein string ist ja ein char array. Das verwirrt mich grad voellig, weil ich dachte ich kann mit

foreach(string element 2dim[i,])

irgendwie durchlaufen. Das geht nun aber gar nicht.

Danke fuer die Hilfe schonmal.

Thema: inhalt einer excel zelle in ein zahlen wertetyp konvertieren
Am im Forum: Office-Technologien

ach aergerlich kaum gepostet eine neue Idee gekommen und die geht...


            for (int i=1; ((Excel.Range)oSheet.Cells[i, "B"]).Value2 != null; i++)
            {
                double doubleData;
                Excel.Range Difference = (Excel.Range)oSheet.Cells[i, "I"];
                string strData = Difference.get_Value(Missing.Value).ToString();
                double.TryParse(strData, out doubleData);
             }  

Hier die Loesung fuer alle die noch vergeblich suchen...