Hallo,
ich bin gerade schier am Verzweifeln.
Ich habe auf meinem Windows 7 x64 Rechner eine .Net Anwendung in C# entwickelt. Auf dem Rechner läuft sie auch einwandfrei. Zum testen habe ich die Anwendung auf eine Windows XP SP3 VM kopiert und dort gestartet. .Net 4.0 Client Profile ist natürlich installiert. Eine andere Anwendung die ich auf dem selben Rechner programmiert habe läuft auch einwandfrei.
Die Anwendung startet auch erst (zeigt einen SplashScreen) wird dann aber von Windows beendet (Anwendung hat ein Problem festgestellt und muss beendet werden.)
Durch Debug-Einträge in eine Datei habe ich herausgefunden, dass der Ausstieg im InitializeComponents() der mainForm statt findet. Und zwar mit der letzten Anweisung darin (this.PerformLayout()

. Bis genau vor diese Anweisung klappt alles.
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25:
| this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(369, 530); this.Controls.Add(this.pnlBottom); this.Controls.Add(this.pnlParameter); this.Controls.Add(this.pnlTop); this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); this.KeyPreview = true; this.MinimumSize = new System.Drawing.Size(385, 38); this.Name = "frmMain"; this.Text = "Firedolphin Test Tool"; this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.frmMain_FormClosed); this.Shown += new System.EventHandler(this.frmMain_Shown); this.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.frmMain_KeyPress); this.pnlTop.ResumeLayout(false); this.pnlTop.PerformLayout(); this.toolStrip1.ResumeLayout(false); this.toolStrip1.PerformLayout(); this.pnlBottom.ResumeLayout(false); this.pnlBottom.PerformLayout(); this.ResumeLayout(false); this.PerformLayout(); |
Ich habe jetzt schon ein paar Stunden rumgegoogelt aber keinen Hinweis darauf gefunden warum meine Anwendung unter Windows 7 läuft und unter XP nicht. Hat vielleicht jemand einen Tipp??
Zur Info: Ich verwende Visual Studio 10 Express. In der Form sind nur Standard Steuerelemente (lieferumfang von VS) und ein UserControl dass sich aber auch nur aus zwei Standard Controls zusammen setzt und erst später zur Laufzeit platziert wird. Das einzige was ich als außergewöhnlich bezeichnen würde: Beim Start befindet sich auf der Form ein FlowPanelControl ohne eigene Controls. Dieses ist auf AutoSize eingestellt und hat beim Start damit die Höhe 0px.
Für Tipps wäre ich sehr Dankbar.
Wenn noch Codeausschnitte nötig sind, dann sagt bescheid. Ich wollte hier jetzt nicht die ganze mainForm posten.
Gruß
Troubadix