Okay, einen hab ich noch.
Ich glaube jetzt mal wieder, dass es läuft, aber bin auch noch nicht so zielsicher im Fehler-Nachstellen wie du selbst (aber keine Sorge, deine Kunden werden das auch schon schaffen, ich kenn das...
)
Projektdatei:
Delphi-Quellcode:
if ParamCount>0 then
begin
Application.MainFormOnTaskbar := False;
Application.showMainForm:=false;
Form1.FormActivate(nil);
end;
Application.Run;
Also, application.run
immer ausführen.
In der Unit1:
Delphi-Quellcode:
procedure TForm1.butShowModuleClick(Sender: TObject);
begin
if ParamCount>0 then
Form2.Show
else
Form2.ShowModal;
end;
So ist zumindest die Zugriffsverletzung weg.
Aber: So schließt die Applikation nicht mehr ordentlich, wenn Form2 geschlossen wird. Das müsstest du dann noch irgendwie abfangen.
Sieht also so aus, als bräuchte das VirtualTreeView irgendwas, was erst durch das Apllication.Run gesetzt wird (da läuft ja immer HandleMessages, wahrscheinlich fehlt das dann, aber dazu habe ich mich noch nie tief genug da reinarbeiten müssen, um das sicher sagen zu können). Sollte vielleicht mal zum weitersuchen helfen.
Ach ja, eine Idee noch: Ich hatte es auch schon mal irgendwa,, dass ich diesen ganzen Parameter-Kram erst in einem Timer ausgewertet habe, der nach einigen Millisek. ansprang. Da könntest du dann auch das Form2 Modal anzeigen und trotzdem das Apllication.Run vorher aufrufen. Allerdings ist das natürlich auch nicht so richtig sauber. Aber der Kunde würde keine komischen Fehler sehen...
Bis denn
Bommel