Zum Inhalt springen

flashpixx

Mitglieder
  • Gesamte Inhalte

    8.302
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von flashpixx

  1. Kannst Du dies bitte einmal belegen, denn ich habe kein Information dazu gefunden, warum es unter Windows 8 Probleme geben sollte.
  2. Zur technischen Seite: Ich würde eine Component Object Model bzw Distributed Component Object Model entwickeln, die lediglich den Aufruf an den TeX Compiler (ich würde zu LatexMK raten) anstößt und Fehlermeldungen ggf sammelt und zurück sendet, d.h. die Komponente müsste nur eine dieser drei Funktionen für den Aufruf implementieren: CreateProcess function (Windows) / ShellExecute function (Windows) / ShellExecuteEx function (Windows) Ich würde generell das ganze nicht auf das Erzeugen von Listen reduzieren, sondern eine allgemeingültige Schnittstelle schaffen, mit der Textdokumente generiert werden können.
  3. Je nach Distribution kann man die Installation auch kompakt gestalten. Aber sorry 160 MB sind nicht viel, schau Dir mal dagegen entsprechende Office Installationen an. Und außerdem musst ja nicht jeder eine TeX Installation haben, im Grunde reicht eine Installation auf einem zentralen Server, für den User reicht dann ein PDF Viewer.
  4. Es ist ja kein direktes Shellcommand, Du startest letztendlich ein Executable mit Parametern. Wie man dies konkret macht, müsste man von der Architektur abhängig machen. Ich würde hier den Schritt mittels LatexMK wählen (was ein Perlscript ist). Da sehe ich jetzt nicht das Problem mit TeX. Das sehe ich ähnlich, wobei aus Sicht von XML das natürlich deutlich besser wäre, weil man eben rein XML Transformationen beschreiben würde. LaTeX Project Public License Wo siehst Du denn Problem? Was evtl wichtig wäre, zu wissen, um welche Art von Berichten geht es primär, was für Anforderungen werden an die Schrifterzeugnisse gestellt. Wie sieht der Arbeitsprozess des Users aus.
  5. Miktex ist eine LaTeX Distribution es gibt mehrere. Eine DLL für .NET brauchst Du nicht, denn Du musst nur pdflatex oder latexmk als Kommando ausführen und das PDF wird generiert. Das Anzeigen kann dann mit einem Viewer Deiner Wahl geschehen. Ob das eine Alternative ist, ist wohl eher etwas subjektiv. Ich persönlich ziehe ein LaTeX Dokument vor, denn es reiner Plaintext und kann mit einem einfachen Texteditor bearbeitet werden. Wenn man die Struktur des TeX-Dokumentes entsprechend wählt, lassen sich auch dynamisch Layoutstrukturen sehr leicht verändern. Nach meiner Erfahrung ist der Satz eines TeX Dokumentes bisher "ungeschlagen", die Erweiterungen sind im Grunde weit über dem Maß was Bundelsoftware wie z.B. OO, MS Office bieten. Es reicht ja nicht nur "ein Format" zu verwenden, Du musst ja letztendlich auch eine Anwendung haben mit der Du das Texterzeugnis auch setzen kannst. Am Bsp LaTeX: Da TeX reiner Plaintext ist, kann man ihn z.B. in einer Datenbank lagern, wobei man da z.B. dann direkt sehr schön auch eine Versionierung machen kann. Ein Bericht ist ja meist modular aufgebaut, d.h. Du hast irgendwie einen Teil, der das Basislayout definiert und ggf diverse Unterstrukturen. TeX selbst bietet include Mechanismen, so dass Du eben den Bericht einfach als ein TeX File aus der Datenbank generieren kannst, Du kannst ggf eben via Include Verweise erzeugen, so dass Du auch Teile des Berichtes cachen kannst. Als weitere Option kannst Du den TeX Code z.B. mittels XSLT aus XML Daten erzeugen lassen. Zum Schluss generiert z.B. LatexMK das PDF, wobei er eben auch Referenzen zu einem Glossar, Indizes, Literaturverzeichnis, etc automatisch erkennt. Ggf bietet es sich an dies auch zentralisiert zu machen, d.h. Du benötigst nur auf einem Server eine TeX Installation, wenn nun der Aufruf des User kommt, dass ein Bericht generiert werden muss, dann werden die Daten auf dem Server aus der Datenbank extrahiert (LaTeX kann natürlich selbstverständlich Daten direkt aus einer Datenbank lesen und in den Bericht einfügen), auf dem Server werden dann die notwendigen Dateien temporär abgelegt und der TeX Interpreter gestartet, der das PDF generiert. Ist dies dann fertig wird dem User nur das PDF gesendet bzw der Pfad, der dann direkt lokal beim User geöffnet werden kann. Vorlagen müssen natürlich in TeX Code erzeugt werden, aber es gibt für TeX sehr viele gute Editoren, die man verwenden kann bzw. nimm als Basis XHTML und transformiere dieses per XSLT in TeX Code, dann würde sich ein HTML Editor für das Editieren eignen. Zusätzlich braucht der User für die Anzeige nur einen PDF Viewer und keine weiteren Tool. TeX lässt sich im Grunde sehr einfach automatisieren, da es eben "nur" aus dem Aufruf eines Shellcommandos besteht. Natürlich kannst Du nicht erwarten, dass Du eine fertige einfache Komponente bekommst, denn das ist nicht das Ziel von TeX. TeX ist eben dafür gedacht, komplexe Dokumente in einem hervorragenden Satz zu erstellen, alles was Du als "Usability" haben willst, dafür musst Du selbst sorgen. Für mich sind in solchen Dingen folgende Punkte sehr wichtig: Ich brauche ein System, das hervorragende Layoutstrukturen beherrscht (diverse DIN, C ... Formate, Einseitig / Doppelseitig, ...) Weiterhin benötige ich einen Modularen Aufbau meiner Dokumente, da ich nicht überall immer den gleichen Header / Footer rein kopieren möchte. Ich brauche Skalierfähigkeit, d.h. das Dokument soll in DIN A 4 genauso aussehen wie in DIN A 5. Verzeichnisstrukture (Tabellen, Bilder, Indizes, Glossare, ...) müssen direkt automatisiert vom System generiert werden. Im PDF müssen die Hyperlinks (Referenzen) direkt mit gesetzt werden können. Ich will mich nicht mit Layoutproblemen rum schlagen. Ich will keine großen externen Komponenten installieren müssen, um Berichte anzupassen bzw. anzuzeigen. Ich will bei Austausch der PC / Server, dass die Dokumente vorher genauso aussehen, wie nach dem Austausch. Migration auf ein anderes OS muss jederzeit ohne Probleme möglich sein. Mehrere 100 Seiten müssen ohne Probleme erzeugbar sein. Graphiken z.B. Plots sollen in beliebiger Komplexität möglich sein und auch mit dem Layout passend skalieren (ohne dabei Qualität einzubüßen). Dazu dann natürlich immer noch der Punkt der Kosten für ein solches System. Ich habe über einige Jahre hinweg diverse Tools ausprobiert, sicherlich gibt es da je nach Geschmack durchaus auch sinnvolle Ansätze (kenne selbst auch CR), aber bisher habe ich kein Tool gefunden, was auch nur annähernd an TeX heranreicht. TeX erfordert durchaus etwas Einarbeitungszeit, aber es gibt da viele sehr gute Tutorials und Editoren. Ich habe z.B. TeX in einer Webanwendung eingebaut, der User gibt via HTML Editor im Browser seinen Text ein und via PHP Scripte wird dann auf dem Server ein PDF geniert und es zurück an den Browser des Users geschickt. Ich habe auch zu Beginn Zeit investieren müssen, um den TeX Syntax zu lernen, aber die Community ist wirklich hilfsbereit und es gibt entsprechende Literatur. Ob es nun für Deine Zwecke passend ist, müsstest Du Dir halt mal überlegen, das was mich überzeugt ist eben, dass TeX selbst mit komplexesten Dokumenten (> 500 Seiten, Graphiken, etc) absolut keine Probleme hat.
  6. Du kannst Doxygen + ggf einen eigenen Parser verwenden. Andernfalls schreib Dir eben selbst einen Parser, der die Dokumentation extrahiert und z.B. mittels Extensible Stylesheet Language oder LaTeX in ein Dokument umwandelt. Mittels Welcome to MetaUML, UML for LaTeX/MetaPost , TikZ and PGF | TeXample.net oder DOT (GraphViz) kannst Du Graphiken erzeugen. Featurerequest / Bug Referenzen können z.B. ebenso geparst und mittels Commit Referenz vermerkt werden, z.B. in dem man bei Git den Commit-Hash des Commits verwendet, dies kann über die Hooks realisiert werden. Du liefert nur wenige Informationen, die die Möglichkeit einschränken. Dokumentationerzeugung bzw. Referenzierung auf Features / Issues geschieht anhand irgendwelcher Referenznummern, die im Quellcode durch den Entwickler abgelegt werden müssen. Diese müssen dann mittels Parser verarbeitet werden.
  7. Du lieferst keine nennenswerten Informationen und im Grunde ist Dein Post nur ein "es geht nicht" und das reicht nicht aus. Wenn es sich um identische Dateien handelt, wird das Problem an dem Server liegen, d.h. Du solltest die Konfiguration der Server vergleichen und ggf die Ausgabe. Hilfreich dazu ist cURL
  8. *ggg* das funktioniert leider meist nur bei Schulaufgaben, ist aber definitiv ein guter Ansatz. Deshalb generell mit Vorsicht genießen, denn bei vielen realen Problemen funktioniert das nicht mehr. Ist aber auf jeden Fall ein guter Ansatz die "Schwäche" zu beseitigen
  9. @dnullr: Ich verweise mal auf Sieb des Eratosthenes Deinen Code kann man noch kompakter schreiben (nutze bitte die Code-Tags, damit's dann auch optisch passt). Real würde ich das ganze wohl via Fermat-Zahl machen (nur mal zur Info)
  10. Kannst Du einmal erklären wie Du mit Hilfe von Modulo bestimmst, ob eine Zahl eine Primzahl ist ? Du würdest dann voraussetzen, dass der OP weiss was eine Restklasse und ein endlicher Körper ist, was man aber wohl eher dem Stoff einer Mathematikvorlesung an der Uni entspricht.
  11. Wenn man 3 Jahre für die Ausbildung rechnet, dann hat man einen gewisses solides Grundwissen bekommen, selbst nach einem Studium wirst Du nicht alle Aufgaben lösen können. Der Stoff in einer Prüfung ist deutlich etwas anderes, wie ein reales Problem. Man sollte es jedenfalls so hinbekommen, dass man die Prüfung besteht. Ansonsten setz Dich hin, such Dir eine Nachhilfe und lerne eben abends 3-4 Stunden das was Du nicht kannst. Übe genau die Sachen, die Du nicht kannst, bearbeite Übungsaufgaben ( z.B. Bundeswettbewerb Informatik:Â Aufgabensammlung ). Viele Einführungsbücher enthalten Anfängerbeispiele, die man eben üben kann. Typische Beispiele sind z.B.: Prüfe ob eine Zahl Teiler von einer anderen Zahl ist. Du hast n Leute im Kreis stehen und jeder k-te soll getötet werden, wer bleibt übrig? Entwickle ein Lottospiel, das eben 6 Zufallszahlen erzeugt und gegen eine von Dir eingegebene Lösung prüft. Versuche n Damen auf einem Schachbrett so zu positionieren, dass keine Dame eine andere schlagen kann. Programmiere einen Algorithmus der das Spiel Türme von Hanoi für eine beliebige Anzahl an scheiben löst. Sortiere n Zahlen aufsteigend / absteigen. Sortiere Wörter lexikographisch case-sensitiv / case-insensitiv. Prüfe ob in einer Zeichenkette eine andere enthalten ist, case-sensitive & -insensitive Prüfung. Du musst lernen ein Problem abstrakt zu formulieren und so zu formulieren, dass es das Problem vollständig löst, d.h. einfach den Aufgabentext in Quellcode gießen reicht nicht. Der Schritt von einer abstrakten Lösung in Quellcode ist recht einfach, sofern die Lösung eben gut formuliert ist. Bei Schulaufgaben kann man durchaus den Hammer holen und eine Lösung durch draufhauen erzeugen, das funktioniert aber bei komplexeren Dingen nicht mehr. Sprich die Lösung liegt im Nachdenken und das musst Du eben trainieren. Wie schon geschrieben, versuche die Lösung erstmal vollständig zu beschreiben, wenn Du das hast, dann übersetzt Du dieses mittels Pseudocode in einzelne Anweisungen, dies wiederholst Du so lange bis Du jede Anweisung so zerlegt hast, dass Du sie in einen einzelnen Befehl für eine Programmiersprache formulieren kannst. Schaffbar ist das im Grunde schon, nur kann Dir hier niemand sagen, wie viel Arbeit und wie lange Du dafür benötigst.
  12. Schau genau in Dein Log, der "user unkown" kommt bevor das Saslwarning kommt, außerdem warning != error. Die Alias macht keinen Sinn, weil Du keinen Alias definiert hast. Ein Alias ist ein Match von "irgendetwas" auf einen User, eben der User "postmaster" wird auf root umgeleitet. Deine Umleitung von rhuen zu rhuen ist somit völlig sinnlos. Ich betreibe bei meinem Postifx (das für mehrere Domains) zuständig ist, eine Kombination von so genannten Virtual-Tables & Systemusern, d.h. mein Postfix liest die Mailadressen aus einer mySQL Tabellen und kann anhand des Datensatzes entscheiden ob er die Mail einem im System angelegten User zustellt oder in eine so genannte virtuelle Mailbox wirft. Denn man sollte nicht jeden User im System anlegen, der "nur" eine Mailadresse braucht. Wenn der User keinen Zugang am System haben muss, dann brauchst Du keinen Systemaccount, sondern dann reicht eine Virtuelle Mailbox. Als Client für IMAPs und POP3s setze ich Dovecot ein, das dann die Daten aus der mySQL Tabelle verwendet, um den User zu authentifizieren. Postfix selbst authentifiziert den User ebenfalls mittels mySQL Tabelle. In der Tabelle steht drin, ob der User ein Systemuser ist, wenn ja, dann wird das Passwort via PAM genutzt. Wenn es sich um einen Virtuellen User handelt, dann steht das Passwort in einem Tabellenfeld als Hash, wenn es sich nur um einen Alias oder Forward handelt, dann ist kein Login möglich. Zusätzlich kann Postfix anhand dieser Daten auch feststellen unter welcher Mailadresse der User senden darf. Der Fehler bei Dir weist darauf hin, dass Dir nicht klar ist, wie Postfix arbeitet. Ich empfehle Dir, dass Du erst einmal auf einem System zu Hause dieses lernst, denn wenn Du durch eine fehlerhafte Konfiguration ein offenes Relay erzeugst dann landet Deine IP auf diversen Blacklisten und vor allem bist Du juristisch haftbar. Ich würde ebenso dazu übergehen, dass Du zuerst einmal versuchst eine lauffähige Postfix Installation zu erstellen, d.h. der Versand & Empfang funktioniert fehlerlos und ungültige Mails werden abgelehnt. Weiterhin sind solche Konfigurationen wie smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key wirklich ganz fahrlässig. Auch der Eintrag in Deiner passwd mail.meinedomain.de rhuen:rhuen ist inkorrekt, denn es fehlen Homeverzeichnis, Shell, UID & GID. Wenn das Deine komplette Postfix Konfiguration von Postfix ist, dann ist sie sehr dünn gehalten. Mir sieht die Konfiguration eher nach der Standardkonfiguration des Paketes aus und die ist hier nicht ausreichend, vor allem aber sollte sie bei einem Produktivsystem, das im Internet mit einer statischen IP erreichbar ist, deutlich mehr Aspekte zur Sicherheit haben. Bevor Du Deinen eigenen Mailserver betreibst, solltest Du das notwendige Wissen haben, dies tun zu können. Das installieren von entsprechenden Paketen ist für eine solche Administration bei weitem nicht ausreichend und für in den meisten Fällen zu einem offenen Relay. So lange Du das notwendige Administrationswissen nicht hast, solltest Du eher vermeiden den Server zu administrieren, denn es bringt für Dich nur Nachteile mit entsprechender Haftung
  13. Ich sehe da jetzt nicht wirklich den Zusammenhang zu Mathe, aber okay. Am Beispiel der Primzahl verweise ich mal auf Wikipedia Primzahl und dort steht Da steht eine Primzahl hat genau (==2) Teiler, die 1 und sich selbst, d.h. daraus folgt das Komplement, dass ich prüfen muss, ob eine Zahl durch eine andere Zahl teilbar ist, wenn dies der Fall ist, dann ist es keine Primzahl. Ich nehme z.B. die Zahl 18, die ist, sicherlich durch sich selbst und 1 teilbar, daraus folgt aber nicht, dass es eine Primzahl ist, denn sie hat als Teiler 2,3,6,9. Bei der Primzahl musst Du als prüfen, ob es genau 2 Zeiler sind und die dürfen eben nur 1 und die Zahl selbst sein. Wie Du nun eine solche Prüfung in Quellcode formulierst ist eine andere Frage. Der Ansatz ist, sich klar zu machen, was dort gefordert ist. Die Aufgabenstellung ist richtig und auch fehlerfrei formuliert, man muss halt die Definitionen durchaus kennen, wenn man sie nicht kennt, dann muss man sie nachlesen (Wikipedia ist da durchaus hilfreich). Das Erkennen der wichtigen Punkte ist durchaus Übung, d.h. 1-2 Jahre dauert das schon. Es ist für die Praxis hilfreich eben generelle Definitionen im Kopf zu haben, d.h. einmal die Definition selbst und das Komplement. Für das Primzahlenproblem solltest Du einmal wissen, dass die Zahl eben genau 2 Teiler hat und falls sie das nicht hat, es eben keine Primzahl ist. Wenn man sich das bildlich vorstellt, Du hast die unendliche Menge an natürlichen Zahlen, ich nehme daraus eine und will wissen, ob es eine Primzahl ist, das geht nur dadurch dass ich eben ausschließe dass ein anderer Teiler existiert. Denn wenn die negierte Aussage (Komplement) negiert wird, erhalte ich die positive Aussage (Doppelteverneinung hebt sich auf). Du solltest bei allen Aufgaben, sowohl die Positiv- wie auch die Negativaussage formulieren, beides zusammen muss für jede Eingabe eine Lösung liefern. In manchen Fällen ist es deutlich eleganter eher die Negativaussage zu verwenden und das Ergebnis zu negieren, als die Positivaussage zu programmieren. Wenn Du eine Lösung erstellt hast, dann prüfe ob es für einige (zufällig) gewählte Eingaben funktioniert und etwas richtiges heraus kommt. Bei den Primzahlen einfach ein paar Zahlen zwischen 1 und 1000 einsetzen, denn dort kannst Du selbst die Lösung nachlesen. Als Kochrezept würde ich sagen: Aufgabe lesen, Definitionen heraussuchen, Definitionen vollständig hin schreiben, zu jeder Definition die Negation hinschreiben, Algorithmus formulieren, negierten Algorithmus formulieren, beide Formen mit zufällig gewählten Beispielen testen, wenn ein Algorithmus nicht klappt => Algorithmus fehlerhaft => Definitionen nicht vollständig.
  14. Er sagt Dir den Fehler, Dein MTA findet den User nicht und lehnt deshalb die Mail ab.
  15. Die Feldnamen können beim Insert weg gelassen werden, sofern der Values-Teil alle Felder in der richtigen Reihenfolge enthält. Ich kenn jetzt ASP nicht, aber eine Stringverknüpfung machst Du anscheinend auch mit +, wobei die Frage bei Deinem Code somit ist, wie die Variablen in das Statement eingesetzt werden, denn im Normalfall würde ich sagen es muss "...VALUES("+nachname+", "+vorname+".... heißen. Wobei man dies wohl auch nicht unter ASP machen würde, da dies Tür-und-Tor für SQL Injections öffnet, worauf Du ja schon hingewiesen wurdest. Ich ist ratsam das Statement zu debuggen, ob es überhaupt syntaktisch korrekt ist. Ich würde davon ausgehen, dass Dein Statement nicht syntaktisch korrekt ist
  16. Im Normalfall wird ein entsprechendes Objekt der Reportanwendung erzeugt und dann wird die Datenquelle durch die Anwendung übergeben und der Report geöffnet. Unter Windows wäre dies wohl mittels COM zu realisieren. Es gibt aber zig Möglichkeiten dies zu realisieren z.B. wäre auch LaTeX mit CTAN: tex-archive/support/SQLTeX eine Möglichkeit. Ebenso wäre Extensible Stylesheet Language auch eine weitere Möglichkeit Jeder versteht was Du machen willst, Du brauchst Dich nicht zu wiederholen Sowohl die oben genannte LaTeX, wie auch die XML-Fo Lösung erfüllen dies. Ebenfalls List & Label, selbst JasparReports würde das Erfüllen.
  17. Naja Java kann via JDBC auf Oracle zugreifen, d.h. Du kannst Jasper nutzen. List & Label funktioniert mit .NET, aber CR ist jetzt nicht "so" schlecht, also warum wechseln.... !?
  18. JasperReports List & Label
  19. Wenn Du wirklich Animationen bauen willst, würde ich das gar nicht so lösen, sondern ich würde ein Webframework für Java verwenden und dann die Animationen mittels jQuery machen, vor allem kannst Du dann Deine GUI auch via CSS beliebig designen. Ich denke es geht auch mittels Java nativen Sachen, aber finde ich nicht so elegant. Als Framework würde mich spontan Spring (Framework) einfallen
  20. Bitte lies die Dokumentation How to Make Frames (Main Windows) (The Javaâ„¢ Tutorials > Creating a GUI With JFC/Swing > Using Swing Components)
  21. OT: Informatik kann ich als "Maß" definieren oder als Vektoren. Für wissenschaftliche Software sind meist Strukturen, wie Vektorräume und Wahrscheinlichkeitsverteilungen die entsprechenden Strukturen. Auf dieser Sicht werden die Probleme modelliert und dann mittels statistischer bzw numerischer Verfahren gelöst. Ist alles letztendlich Mathe :-P Was das Studium angeht gilt aber, dass man auch ohne Abitur studieren kann, aber jede Uni kann individuell entscheiden, ob man Dich und zu welchen Konditionen immatrikuliert. Das liegt immer im Ermessen der Hochschule.
  22. Ich schließe mich bigvic an, aber zu Deinem Wunsch "wissenschaftliche Software" zu entwickeln, möchte ich anmerken, dass Du aufgrund Deiner Ausbildung viel nachholen musst. Ich will mal salopp sagen, dass Du dafür Mathematik brauchst, die weit über den liegt, was im Abitur verlangt wird. Alles ist schaffbar, aber Du brauchst Geduld und auch Ausdauer und das über ein paar Jahre.
  23. OT: Der ist gut, das muss ich mir merken...
  24. @Yarpen: Bitte benutze die Code-Tags. Als Anmerkung zum Code: Du solltest mal darüber nachdenken, ob int ein sinnvoller Datentyp ist, denn, ich würde mal sagen, dass weder Betrag noch die Anzahl der Kinder / Erwachsenen negativ sein kann.

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...