C# :: Pfad zur ausgeführten DLL ermitteln

C# Kein Kommentar »

Während man innerhalb einer Windows-Forms-Anwendung den aktuellen Pfad zur EXE-Datei über

Application.StartupPath;

abrufen kann, steht diese Funktion in einer DLL nicht zur Verfügung, da der Namespace System.Windows.Forms natürlich nicht genutzt werden kann…

Hier hilft diese Syntax:

typeof(MyClassName).Assembly.Location;

Oracle Client 11g Installation

Sonstiges Kein Kommentar »

Bei der Installation von Oracle Client 11g auf Windows 7 oder Windows Server 2008 (nicht R2!) erhält man bei der Prüfung der Voraussetzungen folgenden Fehler:

Checking operation system requirements…
Expected result: One of 5.0,5.1,5.2,6.0
Actual Result: 6.1
Check complete. The overall result of this check is: Failed <<<< Problem: Oracle Database 11g is not certified on the current operating system. Recommendation: Make sure you are installing the software on the correct platform.

Wenn man den Fehler auf “durch Benutzer geprüft” setzt, verweigert der Oracle Client nach Installation seinen Dienst…

Lösung:

Suchen Sie die Datei “refhost.xml” im Installations-Quellverzeichnis und fügen Sie folgende Zeilen ein:

<OPERATING_SYSTEM>
<VERSION VALUE=”6.1″/>
</OPERATING_SYSTEM>

Nach dem Speichern und dem erneuten Ausführen des Setups wird die Prüfung anstandslos bestanden und der Client funktioniert anschliessend auch tadellos…

C# :: MessageBox Result auswerten

C# Kein Kommentar »

Eine Messagebox wird wohl in jedem Programm irgendwo verwendet. Neben der einfachen OK-Hinweismeldung kann man aber auch das Ergebnis einer JA-NEIN-Box auswerten:

// die Dialogbox zusammenbauen
DialogResult Ergebnis = MessageBox.Show(“Ist das eine Frage?”,
      “Der Titel der Box”,
      MessageBoxButtons.YesNoCancel,
      MessageBoxIcon.Question,
      MessageBoxDefaultButton.Button2);

// das Ergebnis auswerten
if (Ergebnis == DialogResult.Yes)
{
     MessageBox.Show(“Du hast JA geklickt”, “Der Titel der Box”);
}

MSSQL :: Systemdatenbank verschieben

Sonstiges Kein Kommentar »

Bei der Installation des MSSQL-Servers werden die Systemdatenbanken (master, msdb, tempdb) standardmäßig auf der gleichen Festplatte installiert wie der Server.
Ab SQL Server 7.0 kann man bspw. die tempdb relativ einfach um weitere Dateien auf anderen Festplatten erweiteren, das Verschieben der Dateien auf eine andere Festplatte ist jedoch schwieriger.

Hierzu kann ab 7.0 die ALTER DATABASE – Anweisung genutzt werden. Vor Ausführung sollte jedoch sichergestellt sein, dass auf der neuen Festplatte ausreichend Platz vorhanden ist, die entsprechenden Ordner angelegt sind und die Dateinamen korrekt geschrieben sind, da sonst MSSQL-SERVER anschliessend seinen Dienst verweigert.

Mit dem Befehl EXEX sp_helpdb tempdb prüfen Sie zunächst die Verwendung der Datenbank

Anschliessend setzen Sie die folgende Anweisung gegen die tempdb ab:

ALTER DATABASE tempdb
   MODIFY FILE
       ( NAME = ‘tempdev’ ,
          FILENAME = ‘D:\DB\tempdb.mdf’ )
GO
ALTER DATABASE tempdb
   MODIFY FILE
      ( NAME = ‘templog’,
         FILENAME = ‘D:\DB\templog.ldf’)
GO

Nach einem Neustart des MSSQL-Server-Dienstes finden Sie die Dateien der tempdb nun auf D:\DB

Die “alten” Dateien können nun aus dem Standard-Installationspfad gelöscht werden.


11552 | 20081029