Zum Inhalt springen

Code Poet

Mitglieder
  • Gesamte Inhalte

    320
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Code Poet

  1. Jetzt verstehe ich Dein Problem: Du weißt nicht, wie man diese Batch antriggert! Schau mal hier: http://techsupt.winbatch.com/TS/T000001048F90.html
  2. Code Poet

    XP Miniaturansicht

    Das hätte nun eigentlich funktionieren müssen. Andere Möglichkeiten: die Bilddateien markieren, Rechtsklick und dann "Miniaturansicht akutalisieren" klicken.
  3. Wieso nimmst Du dazu nun kein Datagridview?
  4. Code Poet

    DirectX und .NET

    Im Prinzip nur mangelnde Erfahrung mit DirectX in Verbindung mit .NET. Wenn hier der allgemeine Tenor gewesen wäre "Mach das lieber mit C++", dann hätte ich mich wohl daran gehalten. Da ich hier noch nichts Gegenteiliges gehört habe, werde ich jetzt erstmal versuchen, die .NET-Schnittstelle zu benutzen. Danke auf jeden Fall für Euer Feedback!
  5. Welcher Art soll Deine Tabelle sein? Eine Art "Variablenmatrix", die Du mit den Werten der Listbox füllst? Oder eine sichtbare Tabelle? Du kannst das DataGridView übrigens durchaus auch ohne eine Datenbanktabelle benutzen! Stichwort "VirtualMode". Wenn das dennoch nichts für Dein Ziel ist, müsstest Du ein UserControl basteln.
  6. Code Poet

    XP Miniaturansicht

    Geh mal aus dem Verzeichnis raus und dann wieder rein. Sodann müssten die Miniaturansichten aktualisiert (und damit die Thumbs.db neu angelegt) werden.
  7. Code Poet

    DirectX und .NET

    Das ist klar. C++ ist ja eine meiner nativen Programmiersprachen, allerdings benötigt man damit, wenn man es sauber programmieren will, für gleiche Ziele meist erheblich mehr Zeit. Da die "Mutteranwendung" sowieso in VB.NET 2005 entwickelt werden muss, wäre auch allerhöchstens jenes Panel eine C++-Library, die ich dann in die Applikation einbinden würde. Danke auf jeden Fall für den Link. Da meine Graphiken ja doch nicht allzu kompliziert sind, dürfte ich wohl mit den unter .NET zur Verfügung stehenden Funktionen alles abbilden können!
  8. Hüsis Vorschlag funktioniert doch genau so, wie Du beschreibst! Die Batchdatei musst Du nicht mehr händisch antriggern, sondern sie wird beim Ausloggen vom Rechner gestartet. In ihr müsstest Du dann einen Aufruf starten, die Euer "Zeiterfassungssystem" mit der Information "Gehen" füttert. Den Zeitstempel sollte es ja intern holen. Die Frage ist, willst Du Dich wirklich bei jeder Abmeldung ausstempeln? Es kann ja durchaus sein, dass Ihr wartungsbedingt die Rechner ausschalten müsst und Du gehst z.B. so lange in ein Meeting. Diese Zeit würde dann als ausgestempelt erfasst...
  9. Wieso steht sie standardmäßig dabei? Du kannst natürlich im Explorer die IP benutzen, um zu definieren, auf welchen Rechner das WebDAV-Directory liegt Gibst Du also im Windows-Explorer ein \\1.2.3.4\WebDavDir\ Dann müsste, sofern Du das Verzeichnis richtig (und mit Windows-Authentifizierung) konfiguriert hast ein Fenster aufgehen, in dem Du nach Benutzername und Passwort gefragt wirst. Hier dann eingeben User: RECHNERODERDOMAINNAME\UserName Password: xyz Ist jetzt alles richtig eingestellt, und die Rechte korrekt vergeben, solltest Du ganz normal die Dateien angezeigt bekommen, die in dem WebDAV-Ordner liegen. Oder was hast Du genau vor?
  10. Hmm, ich bezweifle, dass bei der Windows-Authentifizierung die IP des Rechners als Domänenname durchgeht! Schließlich kann ein Rechner ja mehrere IPs besitzen, aber immer nur einen AD-Namen! Wenn Deine User sowieso einen eigenen AD-Benutzernamen haben und die Domain Deines Rechners "WebDAVWelt" heißt, dann müsste es so aussehen User: WebDAVWelt\User1 Password: xyz usw... Ist Dein Server nicht Teil einer Windows-Domäne, dann entsprechend den Rechnernamen: User: WebDAVRechner\User1 Password: xyz Mit der IP geht das ziemlich sicher in die Windel!
  11. Eine vielleich blöde Frage, aber hast Du bei der Windows-Authentifizierung die Domäne (oder den Rechnernamen des WebDAV-Servers) angegeben? Ich habe mir damit mal einen abgebrochen, nur um dann festzustellen, dass ich statt "administrator" schlicht "SERVER05\administrator" hätte eingeben müssen. Danach lief alles ohne Probleme. Ein beliebtes Problem bei derlei Dingen ist auch die Password-Policy. Wenn Du für den WebDAV-Zugriff z.B. einen extra User anlegst (z.B. "WebDAVUser") und dem gleich ein Passwort zuteilst, so ist in den meisten Fällen per Default eingestellt, dass dieser sein Passwort beim ersten Anmelden ändern muss! In diesem Falle ist die erste Anmeldung allerdings nicht auf dem Desktop, sondern über WebDAV und geht folglich in die Hose, ohne, dass Du über den Grund informiert werden kannst...
  12. Code Poet

    DirectX und .NET

    Hallo Freunde, hat jemand Euch Erfahrung im Umgang mit DirectX? Im Moment falle ich da ins kalte Wasser; habe noch nie Spiele oder dergleichen programmiert, allerdings stoße ich jetzt mit einer Visualisierungsapplikation an meine Grenzen. Ich muss (flüssig) innerhalb eines Fensters/Panels 3-Dimensionale Objekte darstellen, die sich ja nach Dateninput verändern und bewegen. Macht es überhaupt Sinn, derlei in .NET zu entwickeln oder sollte ich diesen Teil lieber gleich in C++ abfackeln? Wenn .NET, wie integriere ich DirectX dort am besten?
  13. Viele Wege führen nach Rom. Ich habe derweil ein ähnliches Problem. Ein Programm soll Daten aus einem Excelsheet auslesen. An sich ja nichts, was mit der Anzeige zu tun hat... :ratlos: Jedenfalls führt es dazu, dass das aktuelle Fenster sich minimiert(!) ... Keine Ahnung woran das liegt. Leider ist der originale Code auch nicht von mir, deshalb kann ich nicht ausschließen, dass an irgendeiner versteckten Stelle noch ein Befehl abgeschossen wird. :confused:
  14. Du kannst der Mainform Deines Programms beim Anzeigen explizit das Kommando "BringToFront" mitgeben. Ansonsten wird die Sache wohl an Outlook liegen. Hast Du den Link einfach als Hyperlink im Emailtext stehen?
  15. Hmm, Deinem Code zufolge würde ich jetzt mit einem Indexfehler rechnen. An einigen Stellen habe ich mich schon sehr geärgert, dass manche vordefinierten Indizes bei 0 beginnen und andere dann wieder bei 1. Wie weit kommst Du denn auf den Anfang zurück? Einige Zeilen? Was passiert? Wird Dir als erste Zeile eine angezeigt, die nicht die erste ist? Inzwischen würde ich schon fast dazu übergehen, ein Usercontrol zu entwerfen, bei dem man die Zeilen direkt mit angeben kann.
  16. Ach so, nein sie war gar nicht darauf bezogen! Man kann durchaus weit mehr als 300 Datensätze in ein DGV laden, das ist kein Problem! Dein Link beinhaltet allerdings auch einen Tipp, mit dem man das DGV dahingehend "besänftigen" kann, dass man Transaktionfehler wie den hier aufgetretenen nicht mehr bekommt. Edit: @Afr0: Mir ist noch nicht ganz klar, wie Du die Löschung/ das Anfügen machst! Hierzu wäre etwas Code ganz hilfreich!
  17. In Bezug auf was entscheidend? Der Fehler hat etwas damit zu tun, dass das Control denkt, mit Datenbankeinträgen umzugehen, was es in diesem Fall ja nicht tut!
  18. Habe jetzt leider kein VS hier installiert. Aber ich meine, mich dunkel erinnern zu können, dass man im DataGridView eine Spalte als Button definieren kann, oder?
  19. Den Link kann ich nur weiter empfehlen: Das wäre in Deiner Situation äußerst ratsam, weil Du ja nicht mit einer Datenbank arbeitest! Das Laden der Zeilen würde ich in eine eigene Klasse auslagern, der Du die Fähigkeit verleihst, an das DGV anzudocken!
  20. Code Poet

    Datei drucken

    Hallo Matthias, die Funktion ShellExecute steht in der Library shell32.dll und wird extern implementiert. Ohne das Projekt und den Rechner zu kennen würde ich vermuten, dass mit der selben Library und dem selben Call unter jeder anderen Programmiersprache auch derselbe Fehler ausgelöst würde. Es wäre hilfreich, die komplette Fehlermeldung zu sehen, aber offensichtlich gab es hier eine ungültige Stackoperation ("...Ungleichgewicht im Stapel..."). Es ist generell nicht so empfehlenswert, derartige Aufrufe in der Windows-API zu starten, wenn man damit nicht so heimisch ist. Ein Kollege meinte gerade, es gibt für .NET eine Komponente, die Dir Arbeiten mit PDF erleichtert: Hier findest Du Näheres. Direktes Drucken aus einer Applikation ist damit in jedem Fall möglich! Wenn sichergestellt ist, dass auf allen Rechnern der AcroReader installiert ist, dann würde ich alternativ mal dort nachforschen, ob es dazu eine API gibt, mit der Du den Reader direkt anweisen kannst, ein bestimmtes Dokument zu drucken. Gibt es die, wird das auch relativ einfach sein! Gruß, Das Füchslein
  21. Ich bekomme davon immer Kopfschmerzen. Dachte bisher immer, Programmierer müssten nicht programmieren, das macht doch der Computer!
  22. Der einfachste Weg dazu sind Properties. In VB sähe das dann so aus: ' Das eigentliche Klassenfeld private FEineZahl as Integer ' Die Property Public Property EineZahl as Integer Get return Me.FEineZahl End Get Set(ByVal value as Integer) Me.FEineZahl = value End Set Du kannst eine Property auch ReadOnly deklarieren. In diesem Fall kann man nur einen Wert auslesen, aber nicht zuweisen! ' Das eigentliche Klassenfeld Private FEineZahl As Integer ' Die Property Public ReadOnly Property EineZahl As Integer Get Return Me.FEineZahl End Get
  23. Code Poet

    Datei drucken

    Hi Matthias, Ein PDF zu drucken setzt voraus, dass auf dem Rechner ein entsprechendes Programm installiert ist (logisch). Willst Du das per Code tun, musst Du eine Schnittstelle zu diesem Programm haben, mit deren Hilfe Du damit kommunizieren kannst! Die primitivste wäre die Shell, in der Du einfach die EXE dieses Programms (ich nehme an es ist der AcroReader von Adobe) mit einem Parameter aufrufst, der diesem dann sagt, dass nur das File gedruckt (nicht geöffnet, nicht die GUI gestartet) werden soll. Das ist natürlich nicht unbedingt die eleganteste Lösung und das Programm muss sie wie gesagt auch unterstützen; womöglich sieht Dein PDF-Reader ja gar keinen solchen Parameter vor! Es gibt aber zum Glück noch andere Schnittstellen als gerade mal die Shell. OLE ist z.B. immer noch weit verbreitet. Hier kannst Du, wenn Du das OLE-Objekt kennst, in Deinem Programm eine Instanz davon erstellen und seine Methoden benutzen, um z.B. das PDF zu drucken. Hierbei musst Du schauen, ob Dein PDF-Reader OLE unterstützt. (Ich weiß nicht, ob der von Adobe das tut, aber ist gut möglich) Nicht zuletzt, bei einem verbreiteten Format wie PDF, ist es nicht unwahrscheinlich, dass sich mal jemand die Mühe gemacht hat, das ganze selbst zu programmieren und der Öffentlichkeit zugänglich zu machen. Dann könntest Du den Code dazu in Dein Programm einbinden und das PDF-File selbst parsen und drucken! Vorteil dieser Lösung wäre: Dein Programm würde auch funktionieren, wenn auf dem Zielrechner kein PDF-Reader installiert ist! Eine schöne Suchmaschine für Codeschnipsel aller möglichen Lizenzen findest Du hier! Viel Glück!
  24. Hallo Afr0, Wie geht bei Dir das Einlesen der Dateien vonstatten, also wie holst Du sie in Dein DataGridView? Hierzu wäre ein Codeschnipsel wirklich hilfreich! Das DGV ist eigentlich und hauptsächlich für Datenbankoperationen gedacht, also bekommst Du diesen Fehler! Eine Datenbanktransaktion wird in der bank erst dann wirksam, wenn Du sie mit dem Befehl "Commit" abschließt. Du kannst sie auch mit "Rollback" wieder rückgängig machen. Dass Deinem DGV hierbei keine Datenbank zugrunde liegt, ist dabei egal, denn es hat - grob betrachtet - genau dieselben Beschränkungen, die eine DB auch hätte. Nun versuchst Du, eine Zeile zu löschen, die Du innerhalb der Transaktion (für das DGV ist es eine solche!) erstellt hast, wieder zu löschen, ohne sie vorher zu committen. Poste mal bitte den Code, wie Du an der Stelle die Zeile löschen und wieder anfügen willst!
  25. Hallo! Mir ist noch nicht ganz klar, was Du erreichen willst... Du hast es ja schon geschafft, mit einem DataGridView an die Daten Deiner Tabelle zu kommen. Hier kannst Du, wie in Access direkt, auch Datensätze anfügen! Natürlich kannst Du das auch im Code tun, wenn Du Dein Programm etwas ansprechender/individueller designen möchtest. Die Hilfe vom Visual Studio stellt Dir dafür schon ein HowTo bereit! Das Dataset anlegen hast Du ja schon hinbekommen. Wenn Du nun z.B. eine Tabelle im DataSet markierst und F1 drückst, müsstest Du irgendwo in der Hilfe für den Workflow landen. Dort gibt es einen Punkt "Der Tabelle Daten hinzufügen" (oder so ähnlich, kenne das nur auf Englisch), unter dem ganz genau beschrieben ist, welche Möglichkeiten Du dazu hast! Liebe Grüße, Das Füchslein

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...