diff --git a/Packages/X2LogDXE2.dpk b/Packages/X2LogDXE2.dpk
new file mode 100644
index 0000000..eccac56
--- /dev/null
+++ b/Packages/X2LogDXE2.dpk
@@ -0,0 +1,50 @@
+package X2LogDXE2;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION OFF}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES ON}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE DEBUG}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'X²Log'}
+{$RUNONLY}
+{$IMPLICITBUILD ON}
+
+requires
+ rtl;
+
+contains
+ X2Log.Client.Base in '..\X2Log.Client.Base.pas',
+ X2Log.Client.NamedPipe in '..\X2Log.Client.NamedPipe.pas',
+ X2Log.Constants in '..\X2Log.Constants.pas',
+ X2Log.Exception.Default in '..\X2Log.Exception.Default.pas',
+ X2Log.Global in '..\X2Log.Global.pas',
+ X2Log.Intf in '..\X2Log.Intf.pas',
+ X2Log.Observer.Custom in '..\X2Log.Observer.Custom.pas',
+ X2Log.Observer.CustomThreaded in '..\X2Log.Observer.CustomThreaded.pas',
+ X2Log.Observer.Event in '..\X2Log.Observer.Event.pas',
+ X2Log.Observer.LogFile in '..\X2Log.Observer.LogFile.pas',
+ X2Log.Observer.NamedPipe in '..\X2Log.Observer.NamedPipe.pas',
+ X2Log in '..\X2Log.pas';
+
+end.
+
diff --git a/Packages/X2LogDXE2.dproj b/Packages/X2LogDXE2.dproj
new file mode 100644
index 0000000..aaa55d4
--- /dev/null
+++ b/Packages/X2LogDXE2.dproj
@@ -0,0 +1,153 @@
+
+
+ {AF9DEBC5-230F-475E-9A0C-87A16F7A76A5}
+ X2LogDXE2.dpk
+ 13.4
+ VCL
+ True
+ Debug
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ false
+ All
+ true
+ X²Log
+ $(DELPHIBIN)
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
+ $(DELPHIBIN)
+ 1043
+ true
+ true
+ $(DELPHILIB)
+ .\$(Platform)\$(Config)
+
+
+ true
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ 1033
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
+
+
+ DEBUG;$(DCC_Define)
+ false
+ true
+ true
+ true
+
+
+ true
+ 1033
+ false
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ false
+
+
+
+ MainSource
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ True
+ False
+ 1
+ 0
+ 0
+ 0
+ False
+ False
+ False
+ False
+ False
+ 1043
+ 1252
+
+
+
+
+ 1.0.0.0
+
+
+
+
+
+ 1.0.0.0
+
+
+
+
+
+
+
+ False
+ False
+ True
+
+
+ 12
+
+
+
+
diff --git a/Packages/X2LogDXE2.res b/Packages/X2LogDXE2.res
new file mode 100644
index 0000000..a64cea3
Binary files /dev/null and b/Packages/X2LogDXE2.res differ
diff --git a/Packages/X2LogDXE2Group.groupproj b/Packages/X2LogDXE2Group.groupproj
new file mode 100644
index 0000000..a68d75e
--- /dev/null
+++ b/Packages/X2LogDXE2Group.groupproj
@@ -0,0 +1,60 @@
+
+
+ {16A1D415-5191-4718-97C3-669CCA175F4F}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default.Personality.12
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Packages/X2LogFormsDXE2.dpk b/Packages/X2LogFormsDXE2.dpk
new file mode 100644
index 0000000..b992cc9
--- /dev/null
+++ b/Packages/X2LogFormsDXE2.dpk
@@ -0,0 +1,41 @@
+package X2LogFormsDXE2;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION OFF}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES ON}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE DEBUG}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'X²Log - Forms'}
+{$RUNONLY}
+{$IMPLICITBUILD ON}
+
+requires
+ rtl,
+ X2LogDXE2,
+ vcl,
+ VirtualTreesR;
+
+contains
+ X2Log.Observer.MonitorForm in '..\X2Log.Observer.MonitorForm.pas' {X2LogObserverMonitorForm};
+
+end.
diff --git a/Packages/X2LogFormsDXE2.dproj b/Packages/X2LogFormsDXE2.dproj
new file mode 100644
index 0000000..2d00ebf
--- /dev/null
+++ b/Packages/X2LogFormsDXE2.dproj
@@ -0,0 +1,147 @@
+
+
+ {E09901D8-F644-4C49-AF42-2C5A4EE2118A}
+ X2LogFormsDXE2.dpk
+ 13.4
+ VCL
+ True
+ Debug
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ false
+ All
+ true
+ $(DELPHIBIN)
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ X²Log - Forms
+ $(DELPHIBIN)
+ 1043
+ true
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
+ true
+ $(DELPHILIB)
+ .\$(Platform)\$(Config)
+
+
+ true
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ 1033
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
+
+
+ DEBUG;$(DCC_Define)
+ false
+ true
+ true
+ true
+
+
+ true
+ 1033
+ false
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ false
+
+
+
+ MainSource
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ True
+ False
+ 1
+ 0
+ 0
+ 0
+ False
+ False
+ False
+ False
+ False
+ 1043
+ 1252
+
+
+
+
+ 1.0.0.0
+
+
+
+
+
+ 1.0.0.0
+
+
+
+
+ X2LogFormsDXE2.dpk
+
+
+
+
+ False
+ False
+ True
+
+
+ 12
+
+
+
+
diff --git a/Packages/X2LogFormsDXE2.res b/Packages/X2LogFormsDXE2.res
new file mode 100644
index 0000000..a64cea3
Binary files /dev/null and b/Packages/X2LogFormsDXE2.res differ
diff --git a/Packages/X2LogMadExceptDXE2.dpk b/Packages/X2LogMadExceptDXE2.dpk
new file mode 100644
index 0000000..48c7146
--- /dev/null
+++ b/Packages/X2LogMadExceptDXE2.dpk
@@ -0,0 +1,42 @@
+package X2LogMadExceptDXE2;
+
+{$R *.res}
+{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
+{$ALIGN 8}
+{$ASSERTIONS ON}
+{$BOOLEVAL OFF}
+{$DEBUGINFO ON}
+{$EXTENDEDSYNTAX ON}
+{$IMPORTEDDATA ON}
+{$IOCHECKS ON}
+{$LOCALSYMBOLS ON}
+{$LONGSTRINGS ON}
+{$OPENSTRINGS ON}
+{$OPTIMIZATION OFF}
+{$OVERFLOWCHECKS OFF}
+{$RANGECHECKS OFF}
+{$REFERENCEINFO ON}
+{$SAFEDIVIDE OFF}
+{$STACKFRAMES ON}
+{$TYPEDADDRESS OFF}
+{$VARSTRINGCHECKS ON}
+{$WRITEABLECONST OFF}
+{$MINENUMSIZE 1}
+{$IMAGEBASE $400000}
+{$DEFINE DEBUG}
+{$ENDIF IMPLICITBUILDING}
+{$DESCRIPTION 'X²Log - madExcept'}
+{$RUNONLY}
+{$IMPLICITBUILD ON}
+
+requires
+ rtl,
+ madBasic_,
+ madDisAsm_,
+ madExcept_,
+ X2LogDXE2;
+
+contains
+ X2Log.Exception.madExcept in '..\X2Log.Exception.madExcept.pas';
+
+end.
diff --git a/Packages/X2LogMadExceptDXE2.dproj b/Packages/X2LogMadExceptDXE2.dproj
new file mode 100644
index 0000000..ef593ea
--- /dev/null
+++ b/Packages/X2LogMadExceptDXE2.dproj
@@ -0,0 +1,146 @@
+
+
+ {DF06C136-DD6E-4481-967D-BF73C5B75BDA}
+ X2LogMadExceptDXE2.dpk
+ 13.4
+ None
+ True
+ Debug
+ Win32
+ 1
+ Package
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ false
+ All
+ true
+ $(DELPHIBIN)
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ X²Log - madExcept
+ $(DELPHIBIN)
+ 1043
+ true
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
+ true
+ $(DELPHILIB)
+ .\$(Platform)\$(Config)
+
+
+ true
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ 1033
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
+
+
+ DEBUG;$(DCC_Define)
+ false
+ true
+ true
+ true
+
+
+ true
+ 1033
+ false
+
+
+ false
+ RELEASE;$(DCC_Define)
+ 0
+ false
+
+
+
+ MainSource
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+ Delphi.Personality.12
+ Package
+
+
+
+ X2LogMadExceptDXE2.dpk
+
+
+ True
+ False
+ 1
+ 0
+ 0
+ 0
+ False
+ False
+ False
+ False
+ False
+ 1043
+ 1252
+
+
+
+
+ 1.0.0.0
+
+
+
+
+
+ 1.0.0.0
+
+
+
+
+
+
+ False
+ False
+ True
+
+
+ 12
+
+
+
+
diff --git a/Packages/X2LogMadExceptDXE2.res b/Packages/X2LogMadExceptDXE2.res
new file mode 100644
index 0000000..a64cea3
Binary files /dev/null and b/Packages/X2LogMadExceptDXE2.res differ
diff --git a/X2Log.Observer.MonitorForm.dfm b/X2Log.Observer.MonitorForm.dfm
index 059f369..cac7112 100644
--- a/X2Log.Observer.MonitorForm.dfm
+++ b/X2Log.Observer.MonitorForm.dfm
@@ -147,7 +147,7 @@ object X2LogObserverMonitorForm: TX2LogObserverMonitorForm
end
item
Position = 2
- Width = 456
+ Width = 460
WideText = 'Message'
end>
end
@@ -194,7 +194,7 @@ object X2LogObserverMonitorForm: TX2LogObserverMonitorForm
Left = 584
Top = 48
Bitmap = {
- 494C010109004000800010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
+ 494C010109004000840010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
0000000000003600000028000000400000003000000001002000000000000030
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
diff --git a/X2Log.Observer.NamedPipe.pas b/X2Log.Observer.NamedPipe.pas
index 2401b42..667a51d 100644
--- a/X2Log.Observer.NamedPipe.pas
+++ b/X2Log.Observer.NamedPipe.pas
@@ -401,6 +401,8 @@ begin
security.nLength := SizeOf(security);
security.bInheritHandle := False;
+ pipe := INVALID_HANDLE_VALUE;
+
{ Thanks to: http://www.osronline.com/showthread.cfm?link=204207
and: http://www.netid.washington.edu/documentation/domains/sddl.aspx