Hauptmenü

Werkzeuge

Kategorien

Archiv

C# Notitzen

Erstellt in C# am 10. Mai 2012 vom Daschmi

  • Pfad zur Programmdatei in C# ermitteln
    [csharp]string pathBase = System.Threading.Thread.GetDomain().BaseDirectory;[/csharp]
  • Externes Programm mit C# aufrufen und Rückgabe verarbeiten (Die Funktion sollte mittels try/catch behandelt werden)
    [csharp]public string Externcall(string cmd, string parameter)
    {

    ProcessStartInfo procStartInfo = new ProcessStartInfo(cmd, parameter);

    procStartInfo.RedirectStandardOutput = true;
    procStartInfo.UseShellExecute = false;
    procStartInfo.CreateNoWindow = true;

    System.Diagnostics.Process proc = new System.Diagnostics.Process();
    proc.StartInfo = procStartInfo;
    proc.Start();

    string result = proc.StandardOutput.ReadToEnd();

    return result;

    } // public string Externcall(string cmd, string parameter)[/csharp]

  • ini Datei mit C# einlesen und verarbeiten (Im Beispiel m1_app.ini im Programmverzeichnis)
    [csharp]
    [DllImport("kernel32")]
    private static extern int GetPrivateProfileString(string section,
    string key, string def, StringBuilder retVal, int size, string filePath);

    public string GetConf(string section, string key)
    {

    const int size = 255;
    string file = System.Threading.Thread.GetDomain().BaseDirectory + "m1_app.ini";
    string def = "";

    StringBuilder sb = new StringBuilder(size);
    GetPrivateProfileString(section, key, def, sb, size, file);

    return sb.ToString();

    } // public string GetConf(string section, string key)

    [/csharp]

  • Datei mit C# schreiben
    [csharp]public void writeFile(string file, string content)
    {

    StreamWriter mySaveFile = new StreamWriter(file);
    mySaveFile.Write(content);
    mySaveFile.Close();

    } // void public writeFile(string file, string content)[/csharp]

  • Datei mit C# einlesen und zurückgeben
    [csharp]
    public string readFile(string file)
    {

    return File.ReadAllText(file, Encoding.Default);

    } // public string readFile(string file)[/csharp]

  • String Ersetzung mit C#
    [csharp]strConf = strConf.Replace("###WINVERSION###", strWinVersion);[/csharp]

Keine Admin Bar im WordPress

Erstellt in Wordpress am 27. April 2012 vom Daschmi

Um die Admin Bar für ein WordPress Theme zu deaktivieren kann folgende Funktion genutzt werden:

add_filter( 'show_admin_bar', '__return_false' );

TYPO3 auf PHP 5.4

Erstellt in TS Schnipsel, TYPO3 am 29. März 2012 vom Daschmi

Wer TYPO3 auf PHP 5.4 betreibt, bekommt unter Umständen seltsame Ausgaben von Notices und Warnungen im Backend und Installtool. In PHP 5.4 wurde E_STRICT in E_ALL aufgenommen.

Abhilfe schafft hier folgender Eintrag in der localconf.php:

$TYPO3_CONF_VARS['SYS']['errorHandlerErrors'] = 'E_ALL ^ E_NOTICE ^ E_DEPRECATED ^ E_NOTICE';

Pflichtfelder in einem Magento Shop deaktivieren

Erstellt in Magento am 23. März 2012 vom Daschmi

Wer in einem Magento Shop die Pflichtfelder im Backend und Frontend verändern möchte, der kann dies über die Datenbank erledigten. Dazu gibt es in der Tabelle eav_attribute eine entsprechende Spalten („required“).

Um zum Beispiel das Geburtsdatum nicht mehr als Pflichtfeld zu deklarieren kann folgender Query genutzt werden:

UPDATE `eav_attribute` SET `is_required` = '0' WHERE `attribute_code` = 'dob' LIMIT 1 ;
UPDATE `eav_attribute` SET `is_required` = '0' WHERE `attribute_code` = 'customer_dob' LIMIT 1 ;

Kompass, Richtung, Geschwindigkeit und Position in einer iOS App

Erstellt in IPhone SDK am 26. Februar 2012 vom Daschmi

Möchte man den GPS Sensor und den Kompass für die Positions und Richtungsbestimmung benutzen, so kann das CoreLocation Framework verwendet werden. Als erstes muss man das Framework dem Projekt hinzufügen und anschließend in seine Klasse mit folgendem Code includieren:

#import <CoreLocation/CoreLocation.h> 

Nun muss man eine Delegate Klasse mit dem Interface CLLocationManagerDelegate implementieren. Hier gibt es zwei wesentliche Funktionen die man implementieren kann.

Um den Kompass zu nutzen muss folgende Funktion verwendet werden. Die Funktion bekommt newHeading übergeben, in diesem Objekt sind die Daten des Kompass und des Gyrosensors enthalten. Siehe auch iOS Referenz.

- (void)locationManager:(CLLocationManager *)manager didUpdateHeading:(CLHeading *)newHeading {

    NSLog(@"%@", newHeading);

}

Eine weitere Funktion kann implementiert werden um die Geschwidigkeit, Position und Richtung zu bestimmen.

- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {

NSLog(@"Position:       %f:%f", here.longitude, here.latitude);
NSLog(@"Richtung: %f", [newLocation course]);
NSLog(@"Geschwindigkeit in km/h %.2f", (newLocation.speed * 3.6));

}

Damit die Funktionen auch aufgerufen werden muss natürlich der Delegate definiert werden:

    locationManager = [[CLLocationManager alloc] init];
    locationManager.delegate = self;
    locationManager.desiredAccuracy = kCLLocationAccuracyBest;

    // Für Geschwindigkeit, Richtung und Position
    [locationManager startUpdatingLocation];

    // Für Kompass und Gyrosensor Funktion
    [locationManager startUpdatingHeading];