--- a/trunk/Src/Compilers.UBDS.pas
+++ b/trunk/Src/Compilers.UBDS.pas
@@ -113,6 +113,8 @@
       Result := 'DXE';
     ciDXE2:
       Result := 'DXE2';
+    ciDXE3:
+      Result := 'DXE3';
     else raise EBug.Create(ClassName + '.GetIDString: Invalid ID');
   end;
 end;
@@ -125,12 +127,15 @@
   sCompilerName = 'Delphi %d';  // template for name of compiler
   sDelphiXE = 'Delphi XE';      // name of Delphi XE compiler
   sDelphiXE2 = 'Delphi XE2';    // name of Delphi XE2 compiler
+  sDelphiXE3 = 'Delphi XE3';    // name of Delphi XE3 compiler
 begin
   case GetID of
     ciDXE:
       Result := sDelphiXE;
     ciDXE2:
-      Result := sDelphiXE2
+      Result := sDelphiXE2;
+    ciDXE3:
+      Result := sDelphiXE3;
     else
       Result := Format(sCompilerName, [ProductVersion]);
   end;
@@ -150,6 +155,7 @@
     ciD2010   : Result := '\SOFTWARE\CodeGear\BDS\7.0';
     ciDXE     : Result := '\Software\Embarcadero\BDS\8.0';
     ciDXE2    : Result := '\Software\Embarcadero\BDS\9.0';
+    ciDXE3    : Result := '\Software\Embarcadero\BDS\10.0';
     else raise EBug.Create(ClassName + '.InstallationRegKey: Invalid ID');
   end;
 end;
@@ -167,6 +173,7 @@
     ciD2010:    Result := 2010;
     ciDXE:      Result := 2011;
     ciDXE2:     Result := 2012;
+    ciDXE3:     Result := 2013;
     else raise EBug.Create(ClassName + '.ProductVersion: Invalid ID');
   end;
 end;