Autor Beitrag
breyl
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Mi 05.04.06 10:43 
hallo leute,

so, hab mal ein schönen fehler für euch:

Ich hab das Problem, wenn ich eine bestimmte Form aus meiner MainForm aufrufe (zum ersten mal nach dem Start der App), dann bekomm ich "Zugriffsfehler auf comctl32.dll". Allerdings läuft das Programm nach wegklicken der Fehlermeldung anstandslos und in voller Funktion weiter. Wenn ich das Fenster das zweite mal aufmache kommt die Fehlermeldung nicht wieder.

Allerdings kommt diese Meldung auch nur innerhalb der Entwicklungsumgebung (D7pro (Build 4.453)).
Wenn ich meine Exe ausserhalb starte, dann bekomm ich keine Meldung, aber das heist ja nicht, dass der Fehler nicht auftritt.

Den Aufruf für Form in: combobox.change

Das komische ist, wenn ich diese procedure einmal durchlaufe, ohne die Form aufzurufen, dann kommt beim zweiten aufruf mit Form auch kein fehler.

Ich verstehs halt net, warum dieser Fehler auftritt.

Jemand ne Idee?

Würd euch danken wie verrückt, wenn ich den Fehler endlich loswerd.

Gruß Flo

Code:
ausblenden volle Höhe Delphi-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:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
combobox1.Style:=csDropDownList;
selectMa:= U_main.Form1.ComboBox1.ItemIndex;
if selectMa=-1 then
  begin
    combobox1.DroppedDown:=true;
    exit;
  end;
connectmmc1031.MaschineOnline(maname[selectMa],Monline);
if monline=false then
  begin
  if not polling.Suspended then polling.Suspend;
    clearPannels;
//  Label2.Caption:='Keine verfügbare Maschine';
//  combobox1.Text:='Diese Maschine ist nicht verfügbar';
//  l5.Caption:='Diese Maschine ist nicht verfügbar';
  timer2.Interval:=200;
  timer2.Enabled:=true;
  end
else
  begin
    //l5.Caption:='Verbindung zu Maschine "'+maname[selectMa]+'" aktiv';
    einstellini.WriteBool('GLOBAL','beschriften',false);
    stringgrid1.FixedCols:=1;
    U_einstellungen.PagesDlg.CheckBox2.Checked:=false;
    if polling.Suspended then polling.Resume;
    case eini.ReadInteger('VIEW','autoDB',2) of
    1:  begin
//            U_auto.frmAuto.Show;
          U_autodb.frmAutoDB.Show;
          U_autodb.frmAutoDB.BtnErmitteln.Click;
        end;
    2:  begin
          U_autodb.frmAutoDB.Show;
        end;
    3: if polling.Suspended then polling.Resume;
    end; //end case;
//    if polling.Suspended then polling.Resume;
  end;  //end else
TabControl1Change (Sender);
if stringgrid1.Visible and form1.Enabled then stringgrid1.SetFocus;
end;