Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von Howard
Thema: Kann man bei Unity irgendwie den Pfad für die zu ladenen Dll's mitgeben?
Am im Forum: Rund um die Programmierung

als Nachtrag: auch

AppDomain.CurrentDomain.SetData("APPBASE",@"....");
hat nix gebracht

Howard

Thema: Kann man bei Unity irgendwie den Pfad für die zu ladenen Dll's mitgeben?
Am im Forum: Rund um die Programmierung

Hallo Leudde,

wir benutzen hier "Microsoft.Practices.Unity" und den Common Service Locator library das funktioniert soweit auch alle wie es sein muss. Nur leider gibt es im zusammenhang mit Access2003 irgendwie Probleme. Da Access das startende Programm ist nimmt sich die ganze Anwendung den Office11 Ordner irgendwie als Startverzeichniss. Da wir die gleichen Probleme auch schon beim "alten" RalfW.Microkernel hatten haben wir beim initialisieren unserer C# Dll's als erstes mal das Environment.CurrentDirectory umgestellt damit immer UNSERER Arbeitspfad genommen wird und ebend NICHT der Office Ordner. Leider interessiert sich Unity irgendwie überhaupt nicht dafür. Die DLL's werden weiterhin im Office Ordner erwartet.
Wir laden die Dll's über eine XML Datei nicht aus dem Code herraus.
Hat irgendwer irgendwie ne Idee??

Howard

Thema: Rechner hat nur Office2007 bzw. Office2010... kann ich irgendwie die 2003 PIA's nachinstallieren???
Am im Forum: Office-Technologien

iss nu schon ne weile her aber iss da immer noch keiner der ne Idee hat??

Howard

Thema: Rechner hat nur Office2007 bzw. Office2010... kann ich irgendwie die 2003 PIA's nachinstallieren???
Am im Forum: Office-Technologien

Hallo Timur,

zunächst vorweg: den Artikel hab ich gelesen.... (möglicherweise aber was übersehen...)

und dann kann ich deine Aussage nicht so ganz Bestätigen denn:

wenn ich auf einer User-Maschine Outlook(Office)2003 hab, dann die PIA's installiere und DANN nen Update auf egal was (2007 oder 2010) mache, dann läuft das AddIn auch weiterhin OHNE Probs.
Mein Problem ist, das es inzwischen hier in der Firma schon Rechner gibt die leider bereits Upgedated wurden oder von vornherein mit >2003 kommen.
Und DA hab ich dann nen Problem weil sich die 2003er PIA's nich mehr installieren lassen.

Howard

Thema: Rechner hat nur Office2007 bzw. Office2010... kann ich irgendwie die 2003 PIA's nachinstallieren???
Am im Forum: Office-Technologien

Hey Großmeister.... weis diss hier echt keiner?? Hmm

X(

Howard

Thema: Rechner hat nur Office2007 bzw. Office2010... kann ich irgendwie die 2003 PIA's nachinstallieren???
Am im Forum: Office-Technologien

ich hab nen Outlook AddIn für Office 2003 geschrieben. Nun haben wir aber inzwischen ein paar neue Rechner in der Firma darauf installiert der Admin gleich Office2007 oder aber auch Office2010.

Hab ich da irgendwie ne Möglichkeit die 2003er PIA's noch nachzuinstallieren??
Aktuell bekomm ich ja immer die Message das nen 2003er Office auf dem Rechner sein muss um die PIA's zu installieren.... X(

Howard

Thema: Dependency Injection: Vor- und Nachteile
Am im Forum: Rund um die Programmierung

Ich greif ma diss Thema noch mal auf...auch wenns schon ne Weile her, aber Interessant uff jedenfall!!!

Also ich so als einfacher Programmer (also nix besonderes und so ) find irgendwie muss ich auch Golo Recht geben.
Wir haben hier vor ca. 3 Jahren ein neues großes Projekt angefangen und damals direkt mit dem Microkernel von Ralf Westphal auf Service-Locator gesetzt. Nun sind wir dabei auf Unity umzusteigen (Ralf sagt sein Kernel ist nicht mehr Zeitgemäß 8o ...so kanns gehn)
Bei der ganzen Leserei wie wo was funktioniert bin ich auf diese Diskussion hier gestoßen SEHR INTERESSANT: nichmal die großen Hirne und Denker unter uns sind sich einig.

Und noch ne „kätzerische“ Anmerkung: Irgendwie fühlt sich DI an wie naja sagen wir ma wie früher… ich muss alles irgendwie im Konstruktor (jaja oder Property) übergeben so mit 20 Parametern und so…

Zwischendurch kam mal eine Frage und ich hab nicht gesehen das die einer beantwortet hätte: wenn ich nun schon voll auf „Service-Location“ bin…was fürn Sinn macht es umzusteigen auf DI??


Howard

Thema: Brownfield Anwendung arbeitet mit C# und COM via .tlb Dateien...hat irgendwer ne Alternative dazu???
Am im Forum: Office-Technologien

Wollte mich nur nochmal zu Wort melden das du nicht denkst deine Mühe (auf meine Frage zu Antworten) war vergebens

Also mein Kollega baut gerade ne Spike um die Ideen die du uns gegeben hast mal auszutesten. Hat uns auf jedenfall eine neue Denke ermöglicht und sieht bisher aus ganz gut aus was er da zusammen schraubt.
Wenn er durch ist, melden wir uns nochmal mit nem Fazit damit auch alle anderen was davon haben die das hier lesen....

Bis denne

Howard

Thema: Komische SqlException...
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: SQL Server 2005

Heute hab ich auf einem Clienet eine sehr merkwürdige SQLException bekommen:

Zitat
Aufgrund eines Fehlers während der Initialisierung der Verbindung vor der Anmeldung konnte der Client keine Verbindung mit dem Server herstellen. Mögliche Ursachen sind u. a. folgende: Der Client hat versucht, eine Verbindung mit einer nicht unterstützten Version von SQL Server herzustellen, der Server ist ausgelastet und kann keine neuen Verbindungen annehmen, oder die Ressourcen auf dem Server sind eingeschränkt (zu wenig Arbeitsspeicher oder maximal zulässige Verbindungen). (provider: Named Pipes-Provider, error: 0 - Kein Prozess ist am anderen Ende der Pipe.)

bisher ist die nur einmal aufgetreten aber was der Rechner irgendwie öfter mal hat ist sowas wie
Zitat
Connection-Status nicht offen!

Das Teil ist nen Laptop mit Vista und ich hab auch schon alle Energy Einstellungen angeschaut das der also nicht die Netzwerkverbindung immer kappt wenna in den Standby geht.

Hat irgendwer ne Ahnung wonach man Suchen kann? Das Ding iss, das im gleichen Netz ca. 8 weitere Rechner stehen Laptops und Desktop Rechner (mit Win7,Vista und XP) die alle absolut KEINE Probleme machen....

Howard

Thema: Brownfield Anwendung arbeitet mit C# und COM via .tlb Dateien...hat irgendwer ne Alternative dazu???
Am im Forum: Office-Technologien

Hallo Leutz,

ich plage mich seid geraumer Zeit mit dem ewigen: Update, neu registrieren, kein Adminmode usw. rum. Das ganze ist ne bestehende Access Anwendung die mit C# aufgebohrt wurde. Leider ist es aus vielerlei Gründen nicht möglich einfach den ganzen alten Kram loszuwerden.

Damit das ganze verständlicher wird hab ich mal nen Bild gebastelt.

Die Frage ist: hat irgendwer schon ne Lösung am Laufen oder ne Idee im Kopp wie ich diese COM/.tlb connection loswerden kann?

Wichtig dabei: es muss von C# aus auf Access zugegriffen werden (bestehende Dialoge müssen angezeigt werden können und ja es gibt Übergabeparamter) aber auch muss von Access aus auf C# Assemblies zugegriffen werden können da der Zugriff auf den SQL Server (aber nur teilweise) auch über C# Assemblies laufen MUSS!!

Howard

Thema: List<Unterklasse> auf List<Oberklasse> casten
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Zitat von Florian Reischl
Wenn nicht zu viele Werte in der Liste sind und die Performance nicht kritisch ist kannst du auch LINQ verwenden:

ich dachte das gibts erst ab VS2008 oder?

Howard

Thema: Was sagt mir die Meldung: "Transaktionen mit IsolationLevel-Snapshot können nicht erweitert werden"?
Am im Forum: Datentechnologien

Danke für die schnelle Antwort.

Zitat von Golo Roden
- oder nur eine Datenbankverbindung nutzen

Okay aber wie soll ich DAS denn lösen? dieses ...OpenConnection() ist doch in einer völlig anderen Klasse. Die hat doch keine Ahnung das sie
1. innerhalb einer Transaction läuft
2. mehrfach hintereinander aufgerufen wird....

Ich dachte genau für sowas nimmt man die "ambient" Transactions???? (oder hab ich doch keine??)



Howard

Thema: Was sagt mir die Meldung: "Transaktionen mit IsolationLevel-Snapshot können nicht erweitert werden"?
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: SQLServer 2005

Ich bekomme die Meldung "Transaktionen mit IsolationLevel-Snapshot können nicht erweitert werden." bei folgendem Code:


public class DBLogic
{
	public DbConnection OpenConnection()
	{
		DbConnection    retConnection;
		String          connString ="...";
	
		dataProviderFactory             = DbProviderFactories.GetFactory("System.Data.SqlClient");
		retConnection                   = dataProviderFactory.CreateConnection();
		retConnection.ConnectionString  = connString;
		retConnection.Open();
		
		return retConnection;
	}
	
	public void GetFullKontaktList<T>()
	{
		...
		using (DbConnection connection = OpenConnection()) <-- Exception
		{...}
	}
}

public class DBForm
{
	private void button1_Click(object sender, EventArgs e)
	{
		TransactionScopeOption  tssOptions  = new TransactionScopeOption();
		TransactionOptions      tsOptions   = new TransactionOptions();
		
		tsOptions.IsolationLevel = System.Transactions.IsolationLevel.Snapshot;
		tsOptions.Timeout        = new TimeSpan(0, 0, 0, 0, 0);
		
		using(TransactionScope ts = new TransactionScope(tssOptions,tsOptions))
		{			
			DBLogic.GetFullKontaktList<Person>();
			DBLogic.GetFullKontaktList<Firma>(); <-- Exception
		}		
	}
}

Ich kann mit der Meldung GARNIX anfangen...irgendwer ne Idee??

Howard

Thema: List<Unterklasse> auf List<Oberklasse> casten
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hey vielen Dank für den Link.
Allerdings ist mir nicht ganz klar wie deine Klasse mir bei meinem Prob helfen kann und wie/wo ich sie dann einbaun soll DAMIT sie mir hilft :-)

Howard

Thema: List<Unterklasse> auf List<Oberklasse> casten
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

jo okay wenns soooo einfach wäre wär geil ich hatte nen schreibfehler drinn hab den mal verbessert....
Aber danke für den Hinweis....

Howard

Thema: List<Unterklasse> auf List<Oberklasse> casten
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo Leudde ich hab da mal nen Prob:
gegeben sei folgendes



public interface IKontaktDaten {....}

public interface IFirma : IKontaktDaten{....}

public interface IPerson : IKontaktDaten{....}

public class Firma : IFirma {....}

public class Person : IPerson {....}

public List<T> GetKontaktList<T>() where T: IKontaktDaten, new(){...}

public void Function()
{
	List<IKontaktDaten>	listKontakte; //IKontaktDaten da ich in diese Liste gern beides Firma UND Person reinladen würde
	
	listKontakte = GetKontaktList<Person>(); //<-- Eine implizite Konvertierung vom Typ "System.Collections.Generic.List<Person>" in "System.Collections.Generic.List<IKontaktDaten>" ist nicht möglich.

	
	//Ich würde gern danach sowas machen
	listKontakte = GetKontaktList<Firma>();
}

//Alternativ kann man das natürlich so machen
public void Function()
{
	List<IFirma>	listFirmen;
	List<IPerson>	listPerson;
	
	listPerson = GetKontaktList<Person>();		
	listFirmen = GetKontaktList<Firma>();
}

Irgendwie hab da wohl noch was nicht ganz verstanden mit den Generics. Klar kann ich 2 Listen machen aber einfacher wäre eine.
Hat da wer mal ne Idee??

Howard

Thema: [gelöst] MouseEventArgs.Location von MouseMove gibt falschen Wert in der Höhe zurück....
Am im Forum: GUI: Windows-Forms

ja danke diss passt. Nun kann ich wenigstens die beiden gegeneinander rechnen und hab dann auch den offset den ich brauche.

Danke

Howard

Thema: [gelöst] MouseEventArgs.Location von MouseMove gibt falschen Wert in der Höhe zurück....
Am im Forum: GUI: Windows-Forms

okay also mit diese meinte ich die Werte die durch TitelLeiste und Rahmen abgezogen bzw. draufaddiert werden müssen. Frage ist wie komme ich an diese?? Ich will einen Dialog anzeigen in einem Dialog ähnlich einem Kontextmenü. Wenn das kontextmenü nun aber über den Rand des Dialoges geht dann soll der nicht rechts sondern links vom cursor bzw. noch unter sondern ÜBER dem Cursor angezeigt werden.
Dazu check ich die MausPosi + width/height vom Kontext, ob die über der Size vom Dialog liegen. und DAS geht bei der Heigth halt schief wegen den ca. 30 Points...

ich hoffe man versteht was ich will...

Howard

Thema: [gelöst] MouseEventArgs.Location von MouseMove gibt falschen Wert in der Höhe zurück....
Am im Forum: GUI: Windows-Forms

okay du hast recht...hab ich mich irgendwie vermessen :-) und wenn man dann noch die Schatten hinzufügt usw. dann kommt man auf den Wert.
Nun die Frage die kommen musste Wo bekomm ich denn diese Werte her??

Howard

Thema: [gelöst] MouseEventArgs.Location von MouseMove gibt falschen Wert in der Höhe zurück....
Am im Forum: GUI: Windows-Forms

Hallo Leutz,

wenn ich nen Eventhandler baue für nen MouseMove und mir die Koordinaten anschaue die dabei im MouseEventArgs.Location stehen dann stimmt die Höhe meines Dialoges nicht mit den Werten überein. Ich hab das auch auf nem Rechner eine Kollegen geprüft dort bekomme ich ebenso nen falschen Wert. Es sind immer so ca. 30 Points die dort weniger auf der MouseLocation sind. Die Titlebar des Dialoges kanns eigentlich auch nicht sein da die auf jedenfall weniger als 30 hat.

Irgendwer ne Idee??

Howard

Thema: DateTimePicker und TastaturEvents
Am im Forum: GUI: Windows-Forms

Okay was ne Lösung. Damit ich immer auf dem ersten Feld lande (weil netter Weise merkt sich datt Control wo der Cursor zu letzt stand X( )
hab ich nun folgenden Code


	SendKeys.Send("{RIGHT}");
	SendKeys.Send(".");
	SendKeys.Send(".");
	SendKeys.Send(".");
	SendKeys.Send(".");
	SendKeys.Send("{RIGHT}");

WIE GEIL. Welcome on 1983

Howard

Thema: DateTimePicker und TastaturEvents
Am im Forum: GUI: Windows-Forms

sorry hab ich mich wieder blöd ausgedrückt.

Ich wollte beim reinkommen in das Control sagen wir mal den MonatsPart selectieren damit der Benutzer gleich los schreiben kann.

dateTimePicker.Select();
setzt ja nur den Focus auf das Control.

Ich hab mal nen Pic rangehängt damit man sieht was ich meine...

Howard

Thema: DateTimePicker und TastaturEvents
Am im Forum: GUI: Windows-Forms

okay suuper....und was genau setze ich dann? irgendwas wie selectedText oder so hab ich nich gefunden....

Howard

Thema: DateTimePicker und TastaturEvents
Am im Forum: GUI: Windows-Forms

STIMMT haste Recht!!... Okay ich such dann mal F13

ABER: Ich hab dann wohl vorhin aus versehen mal ne falsche Taste gedrückt oder so. Weil wennde das machst dann hört der irgendwann auf und reagiert nicht mehr auf den Punkt. Kannste ausprobieren!!!

die zweite Sache ist: Ich hab nen DTP mit Checkbox vorne dran. Wenn ich mit der Tastatur (TAB) auf das Control komme dann kann ich zunächst NIX eingeben weil der Cursor noch nicht auf dem Tag ist. Kann man das irgendwie abfangen? Also ich komme mit TAB rauf und sofort ist der erste Block markiert?

Howard

Thema: DateTimePicker und TastaturEvents
Am im Forum: GUI: Windows-Forms

Hallo Leute,

ich benutze einen DateTimePicker und würde den gerne so einstellen das der Benutzer einfach nur ein datum wie er es "normalerweise" tun würde, eingeben kann. Sprich erst den Tag dann tippt er einen Punkt und dann den Monat und dann tippt er wieder einen Punkt und dann das Jahr. Aktuell muss mann immer mit den Pfeil-Tasten zum nächsten Feld springen. Hat irgendwer ne Idee???

Howard

Thema: [gelöst] 2. Open innerhalb eines TransactionsScope geht schief....
Am im Forum: Datentechnologien

Okay sorry war ne Woche nicht da deswegen erst jetzt die Antwort.
Ich hab das mal kurz mit Ralf Westphal durch Diskutiert:

Die Transaktions sind auf jeden Fall von außen zu steuern wie du schon gesagt hast.
andererseits sagt er "vorsicht bei premature optimization" und verweist auf CleanCodeDeveloper
Klar hatt er Recht allerdings musste ich das ganze dennoch IRGENDWIE zum laufen bekommen.

Also ich danke dir für die Ausdauer und würde sagen bis aufs nächste Problem

Howard

Thema: [gelöst] 2. Open innerhalb eines TransactionsScope geht schief....
Am im Forum: Datentechnologien

Ich zitiere mal aus Golo Rodens Blog:

"Softwarezellen sind ein Konzept von Ralf Westphal, mit dessen Hilfe sich die Architektur einer Anwendung auf jeder Granularitätsebene darstellen lässt, und das etliche der gängigen Nachteile des klassischen Schichtenmodells vermeidet. Nähere Informationen hierzu finden sich in Ralfs Blog unter dem Tag Software Cells."
Hier zum Lesen

Es gibt sicher viel andere (mehr oder weniger) tolle Möglichkeiten Software Design zu machen. Wir haben uns dafür entschieden und ich muss sagen ich hab echt noch nie sooo geil Software entwickelt wie damit.... Ich könnte noch stundenlang weiter schwärmen

Okay iss aber nen anderes Thema sonnst kriegen wa gleich wieder Golos Eiserne Faust zu spüren

Back to the Thema: Nun haben wir also diese Gegebenheiten. Was könn wir tun? Wird unter diesen Umständen ein verhindern des DTC's möglich sein ?(

Howard

Thema: [gelöst] 2. Open innerhalb eines TransactionsScope geht schief....
Am im Forum: Datentechnologien

okay das Problem ist:

ich kann auf keinen Fall sowas machen wie


public Adressen LeseAlleAdressen(DBHelper db)
{
    //Hier brauch ich ne EIGENE Connection
    //denn diese Function wird nicht nur  
    //von AdressenLöschen aufgerufen
    DBCommand cmd = db.GetConnection().CreateCommand();
        ....
}

da diese Function über nen Interface (alles schön im Westphal Softwarezellen Style ) nach draußen geht und der Aufrufer draußen überhaupt keinen DBHelper hat, diesen also auch nicht reingeben kann! Somit muss sich die also die Funktion die Connection intern besorgen. Was (nach meinen Ideen) nur so geht wie ichs beschrieben hab.

Howard

Thema: [gelöst] 2. Open innerhalb eines TransactionsScope geht schief....
Am im Forum: Datentechnologien

...bin ja mal gespannt wie lang der Thread noch wird

so ich versuchs noch mal mit (Pseudo)Code:


public Adressen LeseAlleAdressen()
{
	//Hier brauch ich ne EIGENE Connection
	//denn diese Function wird nicht nur  
	//von AdressenLöschen aufgerufen
	using(GetConnection())
	{
		....
	}
}

public Personen LeseAllePersonen()
{
	//Hier brauch ich ne EIGENE Connection
	//denn diese Function wird nicht nur  
	//von AdressenLöschen aufgerufen
	using(GetConnection())
	{
		....
	}
}

public Orte LeseAlleOrte()
{
	//Hier brauch ich ne EIGENE Connection
	//denn diese Function wird nicht nur  
	//von AdressenLöschen aufgerufen
	using(GetConnection())
	{
		....
	}
}

public void AdressenLöschen()
{
	using(trans,GetConnection())//einfach dargestellt
	{	
		//nach dieser Zeile ist die connection geschlossen wenn 
		//ich für alle die gleiche benutzen möchte. wegen dem Using in LeseAlleAdressen()
		//bisher wurde noch nicht der DTC benutzt
		adressen = LeseAlleAdressen();
		
		//diese Function holt sich nen neue Connection weil die aktuelle ja schon geschlossen ist
		//UND landet dadurch im DTC (keine Ahnung warum aber zeigt so der Profiler)
		LöscheAlleAdressen(adressen); 
												
		LöscheAllePersonenInOrt(LeseAllePersonen(),LeseAlleOrte()); 
	}
}

private void LöscheAlleAdressen(Adressen,con)
{
	using(GetConnection())
	{
		....
	}
}

private void LöscheAllePersonenInOrt(Personen,Orte)
{
	using(GetConnection())
	{
		....
	}
}

private DBConnection GetConnection()
{
	if(Conn geschlossen)
	{
		mach ma neue auf
	}
	else
	{
		gib ma aktuelle zurück
	}
}

Kann ja sein das ich da noch was nich ganz kapiert hab oder als alter C++ Freak die Dinge im alten Style benutze.
Aber an diesem Pseudo-Code iss ja nichts aufregendes an C# Stuff drann aber er zeigt ca. wie bei uns die abläufe sind.

Ich hoffe du erkennst was ich meine ... sonnst einfach noch mal fragen

Howard

Thema: [gelöst] 2. Open innerhalb eines TransactionsScope geht schief....
Am im Forum: Datentechnologien

also ich meine folgendes:

wenn ich sowas habe:


void Main()
{
    using(TransactionScope ts = TransactionBegin())
    {
        using (DbConnection connection = OpenConnection())
        {
            ....
        }

        Function2()
        TransactionCommit(ts);
    }
}

void Function2()
{
    using(TransactionScope ts = TransactionBegin())
    {
        using (DbConnection connection = OpenConnection())
        {
            ....
        }
        TransactionCommit(ts);
    }
}


dann wird ja NACH dem using in Main die Connection geschlossen.
Wenn ich dann in Function2 bin wird natürlich eine neue Connection geöffnet und nach dem using geschlossen (okay ja intern nicht wirklich geschlossen)
Aber genau bei diesem Öffnen hängt sich das ganze in den DTC vorher noch nicht also bei der ersten connection (zumindest wenn den SQL Profiler richtig interpretiert hab). Die Frage ist nun bezieht sich diese Verhalten nur auf TransactionScope oder auch auf deine "normalen" Transactions?? Wenn ja dann hab ich ja nix gewonnen...Verstehste was ich mein?? Ich hoffe...


Howard