AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Windows No Disk Exception Processing Message c0000013

Windows No Disk Exception Processing Message c0000013

Ein Thema von FragenderHerbert · begonnen am 19. Nov 2014 · letzter Beitrag vom 20. Nov 2014
Antwort Antwort
FragenderHerbert

Registriert seit: 4. Dez 2013
47 Beiträge
 
#1

Windows No Disk Exception Processing Message c0000013

  Alt 19. Nov 2014, 14:03
Hallo,

ich habe diesen Quellcode:

Delphi-Quellcode:
  dlg := TfrmDirectoryDialog.Create(self);
  dlg.ActiveDirectory := 'D:\Programme\Borland\Delphi\Projects\';
  dlg.ShowModal;
  if dlg.ModalResult = mrChooseDir then
  begin


  end;
  dlg.Free;
in einer größeren Anwendung und erhalte bei Aufruf die im Titel genannte Exception.

Warum.

Welchen WorkAround gibt es?

Was will ich machen?

Ich möchte einen Setup Installer programmieren, bei dem ich das Verzeichnis auswählen will, wohin die Programmdateien installiert werden sollen.

Ich kann mir absolut nicht vorstellen, das hier ein Fehler im Quelltext des Directorydialoges vorliegt. Eher wohl, das keine Diskette im Laufwerk A: ist. Wie aber kann ich diese Exception überspringen.

Die Anwendung wird von Festplatte aus gestartet und startet eiwandfrei, bis ich diesen Dialog aufrufe.


Habe schon in Google diesen Suchbegriff eingegeben:

"Exception Processing Message"



Die Links aber helfen alle nicht wirklich weiter. Bin noch immer am Suchen!

Weiß jemand eine Lösung?

Geändert von FragenderHerbert (19. Nov 2014 um 17:56 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.533 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Windows No Disk Exception Processing Message c0000013

  Alt 19. Nov 2014, 14:08
Hast Du es mal mit SetErrorMode versucht?
Delphi-Quellcode:
var
  ErrorMode: UINT;
begin
  ErrorMode := SetErrorMode(SEM_FAILCRITICALERRORS);
  try
    ...
  finally
    SetErrorMode(ErrorMode);
  end;
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.014 Beiträge
 
Delphi 12 Athens
 
#3

AW: Windows No Disk Exception Processing Message c0000013

  Alt 19. Nov 2014, 14:12
Ich kann mir absolut nicht vorstellen, das hier ein Fehler im Quelltext des Directorydialoges vorliegt.
Wieso nicht?
Schließlich kommt das Ding ja dazu auf A: zuzugreifen.

Was ist TfrmDirectoryDialog eigentlich?

Und wo ist der Resourcenschutzblock, wo es dort ja so schön knallt?



PS: TFileOpenDialog kann man auch auf Verzeichnisauswahl umstellen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
FragenderHerbert

Registriert seit: 4. Dez 2013
47 Beiträge
 
#4

AW: Windows No Disk Exception Processing Message c0000013

  Alt 19. Nov 2014, 17:55
@DeddyH:

Nein, Set Errorcode hilft nicht weiter. Trotzdem Danke!

TfrmDirectoryDialog verwendet die folgende Unit:

(Wie erreiche ich den zusammengelappten Zustand für Euch?)

Delphi-Quellcode:
unit wgdirtree;

// Bugs or Feature Requests - mail to: Erik@Grohnwaldt.de
// For newer versions look at lptk.sourceforge.net or www.grohnwaldt.de
// $Log: wgdirtree.pas,v $
// Revision 1.11 2004/05/07 08:02:17 aegluke
// FileDialog used to Open/Save files
//
// Revision 1.10 2004/01/29 12:48:10 aegluke
// Windows-Changes
//
// Revision 1.9 2004/01/24 18:35:51 aegluke
// wgfiledialog-changes
//
// Revision 1.8 2004/01/19 18:19:35 aegluke
// TwgDirTreePopup added
//
// Revision 1.7 2004/01/14 08:22:31 aegluke
// Fixed wrong use of FindSubNode
//
// Revision 1.6 2004/01/09 17:29:56 aegluke
// Windows-Drive support - Update
//
// Revision 1.5 2004/01/09 14:29:31 aegluke
// Windows-Drive support
//
// Revision 1.4 2004/01/02 19:35:02 aegluke
// SetDirectoryIndex-Update
//
// Revision 1.3 2004/01/02 19:13:17 aegluke
// ImageList-Support
//
// Revision 1.2 2003/10/30 11:24:41 aegluke
// pre-read not opened directories
//
// Revision 1.1 2003/10/29 12:48:47 aegluke
// simple directory tree - first release - not tested on windows
//

{$IFDEF FPC}
    {$mode objfpc}
    {$H+}
{$ENDIF}
{//$DEFINE DEBUG}

interface

uses
    wgtree, classes, schar16, popupwindow, gfxbase, gfxwidget, gfxstyle, messagequeue, gfximagelist;

const
    {$IFDEF win32}
     cDirSeparator = '\';
    {$ELSE}
     cDirSeparator = '/';
    {$ENDIF}
    
type
  TwgDirTree = class(TwgTree)
   private
       FActiveDirectory : string;
            FDirectoryIndex : word;
       procedure SetActiveDirectory(aValue : string);
   protected
       function GetAbsoluteDir(aNode : TwgTreeNode) : string;
       procedure DoChange; override;
       procedure DoExpand(aNode : TwgTreeNode); override;
            procedure SetDirectoryIndex(AValue : Word);
            {$IFDEF win32}
            procedure ReadDriveNames;
            {$endif}
   public
       constructor Create(aOwner : TComponent); override;
       procedure ReadDirectories(aParentNode : TwgTreeNode);   
       // read's the directory entries of the given dirname in the parent-node.text   
       property ActiveDirectory : string read FActiveDirectory write SetActiveDirectory;
            property DirectoryIndex : word read FDirectoryIndex write SetDirectoryIndex;
    end;

    TwgDirTreePopupTree = class(TwgDirTree)
           protected
                    procedure HandleDoubleClick(AX, AY : Longint; AButton : Word; AShiftState : Word); override; // Hide the DoubleClick
    end;

    TwgDirTreePopupWindow = class(TPopupWindow)
      private
             FOldDirectory : String;
             FPopupDir : String;
             FDirTree : TwgDirTreePopupTree;
      protected
               procedure HandleKeyPress(var AKeyCode : Word; var AShiftState : Word; var AConsumed : Boolean); override;
               procedure HandleDoubleClick(AX, AY : Longint; AButton : Word; AShiftState : Word); override;
      public
            constructor Create(AOwner : TComponent); override;
            destructor Destroy; override;
            procedure DoShow; override;
            property OldDirectory : String read FOldDirectory write FOldDirectory;
            property DirTree : TwgDirTreePopupTree read FDirTree;
            property PopupDir : String read FPopupDir write FPopupDir;
    end;

    TwgDirTreePopup = class(TWidget)
       private
              FPopup : TwgDirTreePopupWindow;
              FDropDownRows : Word;
              FDroppedDown : Boolean;
              FBlockDrop : Boolean;
              FFont : TgfxFont;
              FHotTrack : Boolean;
       protected
                procedure MsgPopupClose(var AMsg : TMessageRec); message MSG_POPUPCLOSE;
                procedure SetDropDownRows(AValue : Word);
                procedure HandleMouseDown(AX, AY : Integer; AButton : Word; AShiftState : Word); override;
                procedure HandleMouseUp(AX, AY : Integer; AButton : Word; AShiftState : Word); override;
                procedure DoSetFocus; override;
                procedure SetActiveDirectory(AValue : String);
                procedure SelectionChange(ASender : TObject);
                function GetActiveDirectory : String;
                procedure SetImageList(AValue : TgfxImageList);
                function GetImageList : TgfxImageList;
                procedure SetImageIndex(AValue : Word);
                function GetImageIndex : Word;
                procedure SetShowImages(AValue : Boolean);
                function GetShowImages : Boolean;
                
       public
             procedure DoChange;
             procedure RePaint; override;
             procedure DropDown;
             constructor Create(AOwner : TComponent); override;
             destructor Destroy; override;
             property HotTrack : Boolean read FHotTrack write FHotTrack;
             property ShowImages : Boolean read GetShowImages write SetShowImages;
             property ImageIndex : Word read GetImageIndex write SetImageIndex;
             property ImageList : TgfxImageList read GetImageList write SetImageList;
             property DropDownRows : Word read FDropDownRows write SetDropDownRows;
             property ActiveDirectory : String read GetActiveDirectory write SetActiveDirectory;
              property Font : TgfxFont read FFont;
       public
             onChange : TNotifyEvent;
    end;

implementation

uses
    sysutils{$IFDEF win32},windows{$ENDIF};

{ TwgDirTreePopupTree }

procedure TwgDirTreePopupTree.HandleDoubleClick(AX, AY : Longint; AButton : Word; AShiftState : Word);
begin
     MessageQueue.PostMessage(self, Owner, MSG_DOUBLECLICK, AX, AY, AButton);
end;

{ TwgDirTreePopup }

procedure TwgDirTreePopup.DoChange;
begin
     if Assigned(onChange) then onChange(Self);
end;

function TwgDirTreePopup.GetShowImages : Boolean;
begin
     Result := FPopup.DirTree.ShowImages;
end;

procedure TwgDirTreePopup.SetShowImages(AValue : Boolean);
begin
     FPopup.DirTree.ShowImages := AValue;
end;

function TwgDirTreePopup.GetImageIndex : Word;
begin
     result := FPopup.DirTree.DirectoryIndex;
end;

procedure TwgDirTreePopup.SetImageIndex(AValue : Word);
begin
     FPopup.DirTree.DirectoryIndex := AValue;
end;

function TwgDirTreePopup.GetImageList : TgfxImageList;
begin
     Result := FPopup.DirTree.ImageList;
end;

procedure TwgDirTreePopup.SetImageList(AValue : TgfxImageList);
begin
     FPopup.DirTree.ImageList := AValue;
end;

procedure TwgDirTreePopup.SelectionChange(ASender : TObject);
begin
     {$IFDEF DEBUG}
     writeln('TwgDirTreePopup.SelectionChange');
     {$ENDIF}
     RePaint;
     if HotTrack then
     begin
          DoChange;
          FPopup.OldDirectory := ActiveDirectory;
     end;
end;

procedure TwgDirTreePopup.SetActiveDirectory(AValue : String);
begin
     {$IFDEF DEBUG}
     writeln('TwgDirTreePopup.SetActiveDirectory');
     {$ENDIF}
     FPopup.DirTree.ActiveDirectory := AValue;
     RePaint;
     FPopup.OldDirectory := ActiveDirectory;
end;

function TwgDirTreePopup.GetActiveDirectory : String;
begin
     {$IFDEF DEBUG}
     writeln('TwgDirTreePopup.GetActiveDirectory');
     {$ENDIF}
     result := FPopup.DirTree.ActiveDirectory;
end;

procedure TwgDirTreePopup.DoSetFocus;
begin
     {$IFDEF DEBUG}
     writeln('TwgDirTreePopup.DoSetFocus');
     {$ENDIF}
     inherited DoSetFocus;
     FBlockDrop := False;
end;

procedure TwgDirTreePopup.MsgPopupClose(var AMsg : TMessageRec);
begin
     {$IFDEF DEBUG}
     writeln('TwgDirTreePopup.MsgPopupClose');
     {$ENDIF}
     FBlockDrop := FDroppedDown;
     if ActiveDirectory <> FPopup.OldDirectory then
     begin
          DoChange;
          FPopup.OldDirectory := ActiveDirectory;
     end;
end;

procedure TwgDirTreePopup.HandleMouseUp(AX, AY : Integer; AButton : Word; AShiftState : Word);
begin
     {$IFDEF DEBUG}
     writeln('TwgDirTreePopup.HandleMouseUp');
     {$ENDIF}
     inherited HandleMouseUp(AX, AY, AButton, AShiftState);
     if not FBlockDrop then
     begin
          DropDown;
     end
     else
     begin
          if FPopup.OldDirectory <> ActiveDirectory then
          begin
               DoChange;
               FPopup.OldDirectory := ActiveDirectory;
          end;
     end;
     FBlockDrop := False;
     FDroppedDown := FPopup.WinHandle > 0;
end;

procedure TwgDirTreePopup.HandleMouseDown(AX, AY : Integer; AButton : Word; AShiftState : Word);
begin
     {$IFDEF DEBUG}
     writeln('TwgDirTreePopup.HandleMouseDown');
     {$ENDIF}
     inherited HandleMouseDown(AX, AY, AButton, AShiftState);
     FDroppedDown := FPopup.WinHandle > 0;
end;

procedure TwgDirTreePopup.SetDropDownRows(AValue : Word);
begin
     {$IFDEF DEBUG}
     writeln('TwgDirTreePopup.SetPopupLines');
     {$ENDIF}
     if AValue = 0 then
        AValue := 1;
     FDropDownRows := AValue;
end;

procedure TwgDirTreePopup.DropDown;
begin
     {$IFDEF DEBUG}
     writeln('TwgDirTreePopup.DropDown');
     {$ENDIF}
     FPopup.Width := Width;
     FPopup.Height := FPopup.DirTree.GetNodeHeight * FDropDownRows;
     FDroppedDown := True;
     FPopup.ShowAt(WinHandle,0,Height);
     FPopup.PopupDir := ActiveDirectory;
end;

procedure TwgDirTreePopup.RePaint;
begin
     {$IFDEF DEBUG}
     writeln('TwgDirTreePopup.RePaint');
     {$ENDIF}
     if not Windowed then exit;
     Canvas.Clear(FBackgroundColor);
     if Focused then
        Canvas.SetColor(clWidgetFrame)
     else
         Canvas.SetColor(clInactiveWGFrame);
     Canvas.DrawRectangle(0,0,Width,Height);
     Canvas.DrawString16(4,Height div 2 - FFont.Height div 2,Str8To16(ActiveDirectory));
     DrawButtonFace(Canvas, width - height + 1, 1, height - 2, height - 2);
     DrawDirectionArrow(Canvas, Width - Height + 1, 1, Height - 2, Height - 2, 1);
end;

constructor TwgDirTreePopup.Create(AOwner : TComponent);
begin
     inherited Create(AOwner);
     FPopup := TwgDirTreePopupWindow.Create(Self);
     FDropDownRows := 8;
     OnChange := nil;
     FHotTrack := False;
     FDroppedDown := False;
     FBlockDrop := False;
     FFocusAble := True;
     FDroppedDown := True;
     FBackgroundColor := clChoiceListBox;
     FFont := GfxGetFont('#list');
     FPopup.DirTree.onChange := {$IFDEF fpc}@{$ENDIF}SelectionChange;
     FPopup.OldDirectory := ActiveDirectory;
end;

destructor TwgDirTreePopup.Destroy;
begin
     FPopup.Destroy;
     inherited Destroy;
end;

{ TwgDirTreePopupWindow }

procedure TwgDirTreePopupWindow.HandleDoubleClick(AX, AY : Longint; AButton : Word; AShiftState : Word);
begin
     Close;
     if OldDirectory <> FDirTree.ActiveDirectory then TwgDirTreePopup(Owner).DoChange;
end;

procedure TwgDirTreePopupWindow.HandleKeyPress(var AKeyCode : Word; var AShiftState : Word; var AConsumed : Boolean);
begin
     inherited HandleKeyPress(AKeyCode, AShiftState, AConsumed);
     case AKeyCode of
          KEY_ESC:
          begin
               Close;
               FDirTree.ActiveDirectory := FPopupDir;
               AConsumed := True;
               TwgDirTreePopup(Owner).RePaint;
          end;
          KEY_ENTER:
          begin
               Close;
               MessageQueue.PostMessage(self, Owner, MSG_KEYPRESS, KEY_TAB, 0, 0);
               if OldDirectory <> FDirTree.ActiveDirectory then TwgDirTreePopup(Owner).DoChange;
               OldDirectory := FDirTree.ActiveDirectory;
               AConsumed := True;
          end;
     end;
end;

destructor TwgDirTreePopupWindow.Destroy;
begin
     DirTree.Free;
     inherited Destroy;
end;

procedure TwgDirTreePopupWindow.DoShow;
begin
     DirTree.SetDimensions(0,0,Width,Height);
     inherited DoShow;
     ActiveWidget := DirTree;
end;

constructor TwgDirTreePopupWindow.Create(AOwner : TComponent);
begin
     inherited Create(AOwner);
     FDirTree := TwgDirTreePopupTree.Create(Self);
end;

{ TwgDirTree }

{$IFDEF win32}
procedure TwgDirTree.ReadDriveNames;
var
  ADrive : String;
  ACounter : Integer;
  ANumber : Integer;
begin
  for ACounter := 0 to 25 do
  begin
    ADrive := Chr(Ord('A')+ACounter) + ':\';
    ANumber := Windows.GetDriveType(PChar(ADrive));
    if ANumber <> 1 then
    begin
      RootNode.AppendText8(ADrive[1]+':');
    end;
  end;
end;
{$ENDIF}

procedure TwgDirTree.SetDirectoryIndex(AValue : Word);
// Sets the new Directory-Image-Index to all SubNodes
var
   ANode : TwgTreeNode;
begin
     {$IFDEF DEBUG}
     writeln('TwgDirTree.SetDirectoryIndex');
     {$ENDIF}
     ANode := RootNode;
     ANode.ImageIndex := AValue;
     ANode := RootNode.FirstSubNode;
     FDirectoryIndex := AValue;
     while ANode <> nil do
     begin
          if (ANode.count > 0) then
          begin
             ANode := ANode.FirstSubNode;
             ANode.ImageIndex := AValue;
          end
          else
          begin
               if ANode.next <> nil then
               begin
                  ANode := ANode.next;
                  ANode.ImageIndex := AValue;
               end
               else
               begin
                    while ANode.next = nil do
                    begin
                         ANode := ANode.parent;
                         if ANode = nil then
                         begin
                              Exit;
                         end;
                    end;
                    ANode := ANode.next;
                    ANode.ImageIndex := AValue;
               end;
          end;
     end;
end;

procedure TwgDirTree.DoExpand(aNode : TwgTreeNode);
var
    tmpNode : TwgTreeNode;
begin
    inherited DoExpand(aNode);
    tmpNode := aNode.FirstSubNode;
    while tmpNode <> nil do
    begin
   if TmpNode.Count = 0 then
   begin
       ReadDirectories(tmpNode);
       tmpNode.Collapse;
   end;
   TmpNode := TmpNode.next;
    end;
end;

procedure TwgDirTree.DoChange;
begin
    ActiveDirectory := GetAbsoluteDir(Selection);
    inherited DoChange;
end;

constructor TwgDirTree.Create(aOwner : TComponent);
begin
    inherited Create(aOwner);
    ActiveDirectory := GetCurrentDir;
end;

procedure TwgDirTree.ReadDirectories(aParentNode : TwgTreeNode);
var
    Items : TStringList;
    r : TSearchRec;
    i : integer;
    AItem : TwgTreeNode;
begin
    Items := TStringList.Create;
    {$IFDEF DEBUG}writeln('ReadDirectories');{$ENDIF}
    if FindFirst(GetAbsoluteDir(aParentNode)+'*',faAnyFile,r)=0 then
    begin
       repeat
         if (faDirectory and r.attr = faDirectory) and (r.name <> '..') and (r.name <> '.') then
                 Items.Append(Str8To16(r.name));
       until FindNext(r) <> 0;
    end;
    Items.Sort;
    Sysutils.FindClose(r);

    // all directory entries are in the stringlist and sorted

    aParentNode.Clear;
    for i := 0 to Items.Count - 1 do
    begin
   AItem := aParentNode.AppendText(Items[i]);
        AItem.ImageIndex := FDirectoryIndex;
    end;
    Items.Destroy;
end;

function TwgDirTree.GetAbsoluteDir(aNode : TwgTreeNode) : string;
var
    DirStr : String;
begin
    DirStr := '';
    if aNode = nil then
    begin
   DirStr := GetCurrentDir;
   {$IFDEF win32}
       Result := copy(DirStr,1,pos('\',DirStr));   // drive-name
   {$ELSE}
       Result := cDirSeparator;         // root
   {$ENDIF}
   exit;
    end;
    while aNode.Parent <> nil do
    begin
   DirStr := aNode.Text8+cDirSeparator+DirStr;
   aNode := aNode.Parent;
    end;
    result := DirStr;
end;

procedure TwgDirTree.SetActiveDirectory(aValue : string);
var
    aNode : TwgTreeNode;
    searchstr : string;
    tmpNode : TwgTreeNode;
begin
    {$IFDEF DEBUG}
    writeln('SetactiveDirectory:',aValue);
    {$ENDIF}
    if aValue = 'then aValue := GetCurrentDir; //mein CurrentDir ist mein Delphi
                                                  //Projektverzeichnis auf D: (Festplatte)
    if (FActiveDirectory = '') then // nothing shown
    begin
       if aValue[Length(AValue)] <> cDirSeparator then aValue := aValue + cDirSeparator;
       FActiveDirectory := aValue;
       RootNode.Clear;
      {$IFDEF win32}
        ReadDriveNames;
      {$ELSE}
         RootNode.AppendText8(copy(aValue,1,pos(cDirSeparator,aValue)-1));
      {$ENDIF}
       ReadDirectories(RootNode.FirstSubNode);
       delete(aValue,1,pos(cDirSeparator,aValue));
       aNode := RootNode.FirstSubNode;
       while aNode <> nil do   // on windows - maybe there are more than one drive :)
       begin
         ReadDirectories(aNode);
         aNode.Collapse;
         aNode := aNode.Next;
       end;
       aNode := RootNode.FirstSubNode.FirstSubNode;
       while aNode <> nil do
       begin
         ReadDirectories(aNode);
         aNode.Collapse;
         aNode := aNode.Next;
       end;
       aNode := RootNode.FirstSubNode;
       while pos(cDirSeparator,aValue) <> 0 do
       begin
         searchstr := copy(aValue,1,pos(cDirSeparator,aValue)-1);
         aNode := aNode.FindSubNode(Str8To16(searchstr), false);
         aNode.Expand;
         delete(aValue,1,pos(cDirSeparator,aValue));
         ReadDirectories(aNode);
         tmpNode := aNode.FirstSubNode;
         while tmpNode <> nil do
         begin
            ReadDirectories(tmpNode);
            tmpNode.Collapse;
            tmpNode := tmpNode.Next;
         end;
       end;
    end
    else
    begin
       if aValue[Length(aValue)] <> cDirSeparator then aValue := aValue + cDirSeparator;
       searchstr := aValue;
       FActiveDirectory := aValue;
   // drive into already read pathes
       aNode := RootNode;
       while pos(cDirSeparator,aValue) <> 0 do   // liest alle verzeichnisse ein
       begin
         searchstr := copy(aValue,1,pos(cDirSeparator,aValue)-1);
         delete(aValue,1,pos(cDirSeparator,aValue));
         if aNode.Count > 0 then
         begin
            tmpNode := aNode.FindSubNode(Str8To16(searchstr), false);
            if tmpNode = nil then
            begin
              writeln('Verzeichnis nicht gefunden: ',searchstr);
// TODO - messagebox with error
              break;
            end
            else
            begin
              aNode := tmpNode;
              if length(aValue) <> 0 then aNode.Expand;
            end;
         end
         else   // directory not read yet
         begin
            ReadDirectories(aNode);
            tmpNode := aNode.FirstSubNode;
            while tmpNode <> nil do
            begin
              ReadDirectories(tmpNode);
              tmpNode.Collapse;
              tmpNode := tmpNode.Next;
            end;
            tmpNode := aNode.FindSubNode(Str8To16(searchstr), false);
            if tmpNode = nil then
            begin
                writeln('Verzeichnis nicht gefunden: ',searchstr);
              // TODO - Messagebox with error
                break;
            end
            else
            begin
              aNode := tmpNode;
              if length(aValue) <> 0 then aNode.Expand;
            end;
         end;
       end;
    end;
    if aNode.count = 0 then
    begin
       ReadDirectories(aNode);
       aNode.Collapse;
    end;
    Selection := aNode;
    RePaint;
end;

end.
Ich habe die entscheidende Stelle noch nicht gefunden.
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock
Online

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.753 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Windows No Disk Exception Processing Message c0000013

  Alt 20. Nov 2014, 08:03
10 Jahre alt...ich behaupte mal, nicht mehr ganz auf der Höhe der Zeit. Was soll das machen? Das ist mir ehrlich gesagt zu viel Code...

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Benutzerbild von tshubaka
tshubaka

Registriert seit: 11. Sep 2009
Ort: Neckertal
35 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Windows No Disk Exception Processing Message c0000013

  Alt 20. Nov 2014, 08:45
das ist wohl der Fehler!

ADrive := Chr(Ord('A')+ACounter) + ':\';
Peter
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.014 Beiträge
 
Delphi 12 Athens
 
#7

AW: Windows No Disk Exception Processing Message c0000013

  Alt 20. Nov 2014, 09:07
Nee, das ist schon OK.

Seine Webseite (www.grohnwaldt.de) ist down, auf und auf lptk.sourceforge.net findet man zumindestens eine nur 9 Jahre alte Version.


Aber eine vermutliche Alternative hab ich ja schon genannt.
Zitat:
PS: TFileOpenDialog kann man auch auf Verzeichnisauswahl umstellen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz