crasys schrieb:
Hallo Community,
Gibt es eine Möglichkeit, Word (nur für diese Instanz) ohne Add Ins zu starten?
Bisher habe ich nur die Möglichkeit gefunden, diese komplett auszuschalten bzw. im Safe Mode zu starten.
Du kannst - wie bereits gesagt - Word auch als Prozess starten und /a als Parameter übergeben (siehe hier: http://support.microsoft.com/kb/210565/de ).
Das wäre dann in etwa:
var wordProcess = new Process();
wordProcess.StartInfo.FileName = @"C:\Program Files (x86)\Microsoft Office\Office12\WINWORD.EXE";
wordProcess.StartInfo.Arguments = "/a";
wordProcess.Start();
static void Main()
{
Console.WriteLine("Obergrenze eingeben : ");
int limit = int.Parse(Console.ReadLine());
Console.WriteLine("Primzahlen bis {0}:", limit);
for (int zahl = 2; zahl < limit; zahl++)
{
int limit2 = (int)Math.Floor(Math.Sqrt(zahl));
bool isPrime = true;
for (int teiler = 2; teiler <= limit2; teiler++)
{
if (zahl % teiler == 0)
{
isPrime = false;
break;
}
}
if (isPrime)
Console.Write("{0} ", zahl);
}
}
Nimm, das ist für große Zahlen viel schneller.
Oder gleich ein Sieb.
Aber wofür steht die Variabel "Teiler"?
Na man prüft alle Zahlen "teiler" kleiner "zahl" ob sie "zahl" teilen. Wenn ein Teiler gefunden wird ist "zahl" keine Primzahl"
Danke Th69. Die von dir vorgeschlagene Lösung hat für nicht passwortgeschützte PDF-Dateien ausgereicht, für jene, die passwortgeschützt sind habe ich die "BadFormatException" erhalten. Hier bot aber der Link Abhilfe. Das Programm funktioniert jetzt.
Danke für die schnelle Hilfe!
class Program
{
static void Main(string[] args)
{
string pdf = (@"C:\Ausgabe\PDFitextTest.pdf");
CheckPdfProtection(pdf);
}
private static void CheckPdfProtection(string pdf)
{
try
{
PdfReader reader = new PdfReader(pdf);
if (!reader.IsEncrypted())
{
Console.WriteLine("PDF ist nicht passwortgeschützt");
Console.ReadLine();
}
}
catch (BadPasswordException)
{
Console.WriteLine("PDF ist passwortgeschützt");
Console.ReadLine();
}
}
}
zum zweck und als studierter bwler tun sich halt da immer wieder fragen auf, is halt nicht so ganz mein Fachgebiet Aber falls ich das nächste Microsoft an der Börse finde dann geb ich euch allen bescheid
Hallo
Ich habe eine Combobox die an eine ObservableCollection gebunden ist.
Die Liste wird dazu aus einer DB gelesen über EntityFramework. Der ausgewählte Wert wird indessen wieder in der DB gespeichert.
So nun meine Problem. Das Feld in dem der ausgewählte Wert gespeichert werden soll erlaubt null. Ich möchte nun also über die Combobox sozusagen "keinen Wert" auswählen. Und somit den Wert in dem Feld in der DB über EF wieder auf null setzen.
Was ich dazu genau machen muss weiß ich nicht. Der ObservableCollection zusätlich den Wert null hinzuzufügen bringt nicht den Erfolg. Der Wert lässt sich nicht auswählen.
nein ich meinte nicht csv. ich meinte xls.
aber gut die Nachteile überwiegen dann doch.
Insertscripte sind glaube ich doch die bessere Wahl.
Leider weiß ich nun immer noch nicht ob es schon etwas fertiges gibt diese über das Entity Framework zu generieren.
Irgendwas generisches für alle Entitys wird schwer. Die Entitys haben keine Basisklasse.
Eine Iteration über alle Properties um daraus die Spaltennamen zu generieren ist auch nicht richtig toll.
Könntest du denn die Schrägstriche durch ein anderes Zeichen ersetzen?
Nein, leider nicht. Der Schrägstrich wird innerhalb von Bezeichnungen verwendet und diese sind fix.
Hallo werkla4,
ich kann dir nur raten, dein Programm noch mal neu zu strukturieren (der Code ist einer der schlimmsten, den ich jemals gesehen habe - ist wirklich was für TheDailyWTF).
Gerade als Anfänger solltest du so programmieren, daß du übersichtlichen Code schreibst.
Zuersteinmal das wichtigste: trenne GUI und Logik, d.h. erzeuge dir für die ganzen Berechnungen eine eigene Klasse und rufe diese dann von der GUI aus auf.
Und dann bin ich mir ziemlich sicher, daß du algorithmisch noch einiges an dem Code verbessern könntest (aber dazu müßte man ersteinmal verstehen, was dein Code überhaupt machen soll...).
CJens schrieb:
Kann ich die Daten im Speicher parken um sie später in anderen Funktionen in der selben oder anderen DLLs weiter zu verarbeiten?
Das tust du doch schon. Was du mit calloc anlegst, bleibt bis zum Löschen mit free oder dem Ende des Programms erhalten. Du verlierst nur den Zugriff darauf, weil deine Zeiger lokale Variablen der Funktionen sind.
o.k. Danke für die Hinweise. Ich behalte aber lieber ReadLine statt Read und habe die Sache jetzt so gelöst.
FileStream fs = new FileStream(Datei, FileMode.Open);
StreamReader sr = new StreamReader(fs);
StringBuilder sb = new StringBuilder();
string input;
while (!sr.EndOfStream)
{
input = sr.ReadLine();
if (input.Length == 1) // Formfeed + Überschrift eliminieren
{ // nur der Seitenwechsel hat die Länge 1
sr.ReadLine();
sr.ReadLine();
sr.ReadLine();
}
else sb.AppendLine(input);
}
textBox7.Text = sb.ToString();
sr.Close();
fs.Close();
pascal2009 schrieb:
Das Problem, die Stringlänge von vornherein festzulegen, existiert so nicht
Strings in C# sind immutable. D.h. man kann die nachdem sie erzeugt wurden nicht mehr ändern.
operator += erzeugt einen neuen String.
string s = "123";
List<string> li = new List<string>();
li.Add(s);
s += "456";
Console.WriteLine(li[0]); // 123!
@pascal2009
Das wurde genau so schon beantwortet. Abgesehen davon, dass eine while-Schleife angebrachter ist als eine do-While-Schleife. Dein Pseudocode raucht bei leerer Datei ab.
Ich benutze kein Excel, sondern Open Office. Sollte sich aber im Prinzip nicht viel tun.
Es gibt auch die Möglichkeit, die Daten statt nach dem Tabellenprogramm zu exportieren vom Tabellenprogramm aus zu importieren.
Die Schnittstelle ist eine einfache Textdatei .txt mit Trennzeichen. Man setzt zwischen die Felder ein sonst nicht benötigtes Zeichen, z. B. ''.
Und benutzt vom Tabellenprogramm aus die Funktion Einfügen -> Tabelle aus Datei, benennt das Trennzeichen und fertig. Für die Zahlenfelder aktiviert dabei die Option erweitere Zahlenerkennung.
Dabei muß man noch drauf achten, ob Komma oder Punkt, je nach Ländereinstellung. Wenn aus 123.45 ein Textfeld entsteht, muß man in der Text-Schnittstelle daraus 123,45 machen.
Jedenfalls, bei mir funktioniert der Datenimport tadellos.
Pascal
Nachdem ich die Sache für eine Weile auf Eis gelegt hatte (ich komme mit der MFC und C++ ohnehin besser zurecht) habe ich diese Woche noch einmal gesucht ob ich ein Projekt mit AvalonDock erfolgreich bilden kann.
Nach einiger Suche bin hier auf Codeplex fündig geworden. Wichtig ist der Namespace in der Dokumentation ist falsch, wenn man den Namespace wie auf Codeplex beschrieben wie folgt setzt funktioniert es.
<Window x:Class="CFDView.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:avalonDock="http://schemas.xceed.com/wpf/xaml/avalondock"
Title="MainWindow" Height="434" Width="684">
<Grid>
<avalonDock:DockingManager x:Name="dockingManager">
<avalonDock:LayoutRoot>
Gruß Andreas Georg
Hallo Darius,
richtig, es ist gut zu wissen, bisher habe ich foreach meist nur dann verwendet, wenn es im Ausgangsprogramm so wahr. Selber hantiere ich fast nur mit for, if/else if/else und manchmal mit while und do/while - das war es dann fast schon wieder. (1 oder 2x habe ich mich an etwas rekursives gewagt, brauchte dann aber fast immer sofort Hilfe. Ich beschäftige mich erst seit dem 2. Januar mit dem Schreiben kleiner Hilfsprogramme.)
Die Stellen, die dich interessieren sind vermutlich diese:
string[] s = System.IO.File.ReadAllLines(@"C:\Ausgabe\JHOVE_ergebnis\Jhove_PDF_ganzerOrdner");
zahlpdf = 0;
for (pdf = 0; pdf < len; pdf++)
{
if (s[pdf].Contains("Format: PDF"))
zahlpdf++;
}
Ich habe diesen Code-Schnipsel mehrfach verwendet (vermutlich könnte ich mal über eine Funktion nachdenken), und es kommt u. a. hier erneut vor:
for (i = 0; i < len; i++)
{
if (s[i].Contains("ErrorMessage"))
{ ....
Ich könnte auch die ganze Datei posten, allerdings sehe sogar ich, dass man sie an vielen Stellen noch optimieren kann, ich habe erst heute Vormittag damit begonnen.
Aber wenn du möchtest, mache ich das morgen noch, trotz all der "buggy" und "leggy"-Stellen.
Jetzt werde ich bald Feierabend machen (mein Gehirn fährt allmählich in den Sofa-Modus), aber ich werde sicher im Laufe der Woche noch daran arbeiten.
Und falls du mit Beispieldatei die Textdatei meinst, die ich untersuche - wie hänge ich die hier an? Mein Format-Erkennungstool kennt das Format nicht, es ist kein txt-Format oder etwas ähnliches und hat auch keine Extension. Jetzt bin ich allmählich auch neugierig, denn ich beschäftige mich schon etwas länger mit Dateiformaten.
Viele freundliche Grüße, Yvonne