diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e97f711 --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +*.dcu +*.exe +*.local +*.dsk +*.identcache +*.skincfg +Error1/Xml.VerySimple.pas +Error1/Xml.VerySimpleFIXED.pas diff --git a/Error1/KwikQat.pas b/Error1/KwikQat.pas new file mode 100644 index 0000000..74da2fa --- /dev/null +++ b/Error1/KwikQat.pas @@ -0,0 +1,191 @@ +unit KwikQat; +interface + +procedure RepairQAT(sPath: string); + +implementation +uses + Windows, + dialogs, + Xml.VerySimple, + Classes, + SysUtils; + + function FileSize(const aFilename: String): Int64; + var + info: TWin32FileAttributeData; + begin + result := -1; + + if NOT GetFileAttributesEx(PWideChar(aFileName), GetFileExInfoStandard, @info) then + EXIT; + + result := Int64(info.nFileSizeLow) or Int64(info.nFileSizeHigh shl 32); + end; + +procedure RepairQAT(sPath: string); +var + xml: TXmlVerySimple; + cui: TXMLNode; + rib: TXMLNode; + qat: TXMLNode; + tab: TXMLNode; + shb: TXMLNode; + iNo, iCount: integer; + sidq: string; + // + shc: TXMLNode; + iFirst: integer; + ts: TStringlist; + bOK: boolean; + sPathOut: string; +begin + bOK := false; + if FileExists(sPath) then begin + if (FileSize(sPath) >= 200) then + begin + bOK := true; + end; + end; + + sPathOut := ChangeFileExt(sPath, '.officeui'); + + if bOK then + begin + xml := TXmlVerySimple.Create; + xml.LoadFromFile(sPath); + // + cui := xml.ChildNodes.Get(0); + cui.Attributes['xmlns:x2'] := 'KwikDocs.CoKwikDocs'; + + iFirst := -1; + // + tab := nil; + shb := nil; + qat := nil; + + if cui.ChildNodes.HasNode('mso:ribbon') then begin + rib := cui.ChildNodes.FindNode('mso:ribbon'); + end else begin + rib := TXmlNode.Create(); + cui.ChildNodes.Add(rib); + end; + + if assigned(rib) then begin + if rib.ChildNodes.HasNode('mso:qat') then begin + qat := rib.ChildNodes.FindNode('mso:qat'); + end else begin + qat := TXmlNode.Create(); + rib.ChildNodes.Add(qat); + end; + if rib.ChildNodes.HasNode('mso:tabs') then begin + tab := rib.ChildNodes.FindNode('mso:tabs'); + end else begin + tab := TXmlNode.Create(); + tab.NodeName := 'mso:tabs'; + rib.ChildNodes.Add(tab); + end; + end; + + if assigned(qat) then begin + if qat.ChildNodes.HasNode('mso:sharedControls') then begin + shb := qat.ChildNodes.FindNode('mso:sharedControls'); + end else begin + shb := TXmlNode.Create(); + tab.NodeName := 'mso:tabs'; + qat.ChildNodes.Add(tab); + end; + end; + + + if assigned(shb) then begin + iCount := shb.ChildNodes.Count - 1; + for iNo := iCount downto 0 do begin + sidq := shb.ChildNodes.Get(iNo).Attributes['idQ']; + if (sidq = 'mso:StyleGalleryClassic') or + (sidq.Contains('kdBtnBlankDoc')) then begin + shb.ChildNodes.Delete(iNo); + if iFirst = -1 then begin + iFirst := iNo - 1; + end; + end; + end; + end; + + if assigned(tab) then begin + iCount := tab.ChildNodes.Count - 1; + for iNo := iCount downto 0 do begin + sidq := tab.ChildNodes.Get(iNo).Attributes['idQ']; + if sidq.Contains('kdNumbering') then begin + tab.ChildNodes.Delete(iNo); + end; + if sidq.Contains('kdCUQ') then begin + tab.ChildNodes.Delete(iNo); + end; + end; + end; + + shc := TXmlNode.Create(); + shc.Attributes['idQ'] := 'mso:StyleGalleryClassic'; + shc.Attributes['visible'] := 'true'; + shc.Name := 'mso:control'; + if iFirst = -1 then begin + shb.ChildNodes.Add(shc); + end else begin + shb.ChildNodes.Insert(iFirst, shc); + end; + + //==================================================================================== + shc := TXmlNode.Create(); + shc.Attributes['idQ'] := 'x2:kdBtnBlankDoc'; + shc.Attributes['visible'] := 'true'; + shc.Name := 'mso:control'; + if iFirst = -1 then begin + shb.ChildNodes.Add(shc); + end else begin + shb.ChildNodes.Insert(iFirst, shc); + end; + // + //==================================================================================== + shc := TXmlNode.Create(); + shc.Attributes['idQ'] := 'x2:kdNumbering'; + shc.Name := 'mso:tab'; + tab.ChildNodes.Add(shc); + // + + shc := TXmlNode.Create(); + shc.Attributes['idQ'] := 'x2:kdCUQ'; + shc.Name := 'mso:tab'; + tab.ChildNodes.Add(shc); + + xml.SaveToFile(sPathOut); + + xml.Free; + end else begin + // save a default file. + ts := tstringlist.create; + ts.add( + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + ''); + // + ts.SaveToFile(sPathOut); + ts.Free; + end; +end; + +end. + diff --git a/Error1/Project1.dpr b/Error1/Project1.dpr new file mode 100644 index 0000000..3a4df45 --- /dev/null +++ b/Error1/Project1.dpr @@ -0,0 +1,17 @@ +program Project1; + +uses + Vcl.Forms, + Unit1 in 'Unit1.pas' {Form1}, + KwikQat in 'KwikQat.pas', + Xml.VerySimple in 'Xml.VerySimple.pas', + Xml.VerySimpleFIXED in 'Xml.VerySimpleFIXED.pas'; + +{$R *.res} + +begin + Application.Initialize; + Application.MainFormOnTaskbar := True; + Application.CreateForm(TForm1, Form1); + Application.Run; +end. diff --git a/Error1/Project1.dproj b/Error1/Project1.dproj new file mode 100644 index 0000000..0a1d6ad --- /dev/null +++ b/Error1/Project1.dproj @@ -0,0 +1,907 @@ + + + {CB4DFF0D-7D0C-43CC-8D21-ED36CF1A29ED} + 19.1 + VCL + True + Debug + Win32 + 1 + Application + Project1.dpr + + + true + + + true + Base + true + + + true + Base + true + + + true + Base + true + + + true + Cfg_1 + true + true + + + true + Base + true + + + true + Cfg_2 + true + true + + + .\$(Platform)\$(Config) + .\$(Platform)\$(Config) + false + false + false + false + false + System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace) + $(BDS)\bin\delphi_PROJECTICON.ico + $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png + $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png + Project1 + + + DBXSqliteDriver;vclactnband;vclFireDAC;tethering;zohoprovider270;FireDACADSDriver;cxLibraryRS27;tmswizdXE12;dxRibbonCustomizationFormRS27;adxBuildD17;vcltouch;vcldb;svn;dxPScxExtCommonRS27;cxTreeListRS27;dxPScxSchedulerLnkRS27;tdsprovider270;vclib;frxTee26;dxRichEditDocumentModelRS27;dxPsPrVwAdvRS27;vclx;dxPSdxFCLnkRS27;freshbooksprovider270;dxSpellCheckerRS27;dxPDFViewerRS27;RESTBackendComponents;dynamicsprovider270;nextlocalizer;VCLRESTComponents;dxWizardControlRS27;mailchimpprovider270;fsTee26;cxSchedulerTreeBrowserRS27;vclie;netsuiteprovider270;bindengine;CloudService;dxBarExtDBItemsRS27;FireDACMySQLDriver;fsIBX26;frx26;cxExportRS27;frxOpenFiltersTemp26;bigcommerceprovider270;cxSchedulerWebServiceStorageRS27;bindcompdbx;fsFD26;IndyIPServer;dxPScxPCProdRS27;IndySystem;fsADO26;dxHttpIndyRequestRS27;dac270;dxFlowChartRS27;dsnapcon;FireDACMSAccDriver;fmxFireDAC;dxmdsRS27;vclimg;OLSecManD17;dxPSPrVwRibbonRS27;dxCoreRS27;dclfrxIntIOIndy26;tmsdXE12;adsprovider270;FMXTee;cxSchedulerRibbonStyleEventEditorRS27;soaprtl;DbxCommonDriver;dxRichEditCoreRS27;odbcprovider270;dxCloudServiceLibraryRS27;xmlrtl;soapmidas;fmxobj;rtl;dxdborRS27;DbxClientDriver;dxdbtrRS27;unidacvcl270;salesforceprovider270;appanalytics;lmdrtdocking;dxSpreadSheetCoreRS27;dxPSDBTeeChartRS27;dxGDIPlusRS27;IndyIPClient;dxFireDACServerModeRS27;dxRichEditControlCoreRS27;bindcompvcl;dxFlowChartAdvancedCustomizeFormRS27;dxServerModeRS27;TeeUI;dxPSLnksRS27;aseprovider270;dxorgcRS27;VclSmp;dxDBXServerModeRS27;liteprovider270;cxGridRS27;dxFireDACEMFRS27;dxtrmdRS27;dxSpreadSheetCoreConditionalFormattingDialogsRS27;RESTComponents;DBXInterBaseDriver;dxSpreadSheetConditionalFormattingDialogsRS27;dxGaugeControlRS27;dxSpreadSheetReportDesignerRS27;dxSpreadSheetRS27;bindcompvclsmp;fgx_externals;cxPivotGridOLAPRS27;svnui;lmdrtl;dxPSRichEditControlLnkRS27;dxBarDBNavRS27;cxPivotGridRS27;dxADOServerModeRS27;unidac270;bindcompfmx;pgprovider270;crcontrols270;madSecurity_;inetdb;dxFlowChartDesignerRS27;FmxTeeUI;sugarprovider270;fmx;FireDACIBDriver;fmxdae;accessprovider270;vcledge;StyleControls_dxe104Sydney;fs26;dbexpress;IndyCore;dxRibbonRS27;dxOrgChartAdvancedCustomizeFormRS27;frxIntIO26;dsnap;FireDACCommon;dxTileControlRS27;magentoprovider270;dxBarExtItemsRS27;cxSchedulerRS27;cxGridEMFRS27;html;soapserver;dxRichEditControlRS27;dacfmx270;dxPScxTLLnkRS27;DBXMySQLDriver;dxFlowChartLayoutsRS27;dxPSCoreRS27;dxADOEMFRS27;quickbooksprovider270;FireDACCommonODBC;FireDACCommonDriver;frxIntIOIndy26;inet;dxPScxPivotGridLnkRS27;cxPivotGridChartRS27;IndyIPCommon;dxPSdxOCLnkRS27;vcl;mongoprovider270;dclAbsDBd21;frxDB26;dacvcl270;vquery270;dxMapControlRS27;dxPSdxDBOCLnkRS27;dxComnRS27;madExcept_;dxPSdxGaugeControlLnkRS27;filefinder;tmsxlsdXE12;fsDB26;unidacfmx270;madBasic_;dxEMFRS27;TeeDB;FireDAC;cxTreeListdxBarPopupMenuRS27;dxPScxVGridLnkRS27;dxPSdxPDFViewerLnkRS27;dxPSdxSpreadSheetLnkRS27;frxe26;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;adxolBuildD17;dxTabbedMDIRS27;ibxpress;Tee;dbfprovider270;ibxbindings;vclwinx;dxPScxCommonRS27;madDisAsm_;frxADO26;tmsexdXE12;CustomIPTransport;vcldsnap;dxPSTeeChartRS27;dxSkinsCoreRS27;dxPScxGridLnkRS27;bindcomp;fgx;myprovider270;cxSchedulerGridRS27;cxVerticalGridRS27;oraprovider270;dxDockingRS27;dxNavBarRS27;db2provider270;dbxcds;adortl;ibprovider270;dsnapxml;exacttargetprovider270;dbrtl;IndyProtocols;inetdbxpress;dxBarRS27;dxPSdxLCLnkRS27;dxPSdxMapControlLnkRS27;dxPSdxDBTVLnkRS27;fmxase;$(DCC_UsePackage) + Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace) + Debug + true + CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments= + 1033 + $(BDS)\bin\default_app.manifest + + + DBXSqliteDriver;vclactnband;vclFireDAC;tethering;zohoprovider270;FireDACADSDriver;cxLibraryRS27;dxRibbonCustomizationFormRS27;adxBuildD17;vcltouch;vcldb;dxPScxExtCommonRS27;cxTreeListRS27;dxPScxSchedulerLnkRS27;tdsprovider270;vclib;dxRichEditDocumentModelRS27;dxPsPrVwAdvRS27;vclx;dxPSdxFCLnkRS27;freshbooksprovider270;dxSpellCheckerRS27;dxPDFViewerRS27;RESTBackendComponents;dynamicsprovider270;VCLRESTComponents;dxWizardControlRS27;mailchimpprovider270;cxSchedulerTreeBrowserRS27;vclie;netsuiteprovider270;bindengine;CloudService;dxBarExtDBItemsRS27;FireDACMySQLDriver;cxExportRS27;bigcommerceprovider270;cxSchedulerWebServiceStorageRS27;bindcompdbx;IndyIPServer;dxPScxPCProdRS27;IndySystem;dxHttpIndyRequestRS27;dac270;dxFlowChartRS27;dsnapcon;FireDACMSAccDriver;fmxFireDAC;dxmdsRS27;vclimg;OLSecManD17;dxPSPrVwRibbonRS27;dxCoreRS27;tmsdXE12;adsprovider270;FMXTee;cxSchedulerRibbonStyleEventEditorRS27;soaprtl;DbxCommonDriver;dxRichEditCoreRS27;odbcprovider270;dxCloudServiceLibraryRS27;xmlrtl;soapmidas;fmxobj;rtl;dxdborRS27;DbxClientDriver;dxdbtrRS27;unidacvcl270;salesforceprovider270;appanalytics;lmdrtdocking;dxSpreadSheetCoreRS27;dxPSDBTeeChartRS27;dxGDIPlusRS27;IndyIPClient;dxFireDACServerModeRS27;dxRichEditControlCoreRS27;bindcompvcl;dxFlowChartAdvancedCustomizeFormRS27;dxServerModeRS27;TeeUI;dxPSLnksRS27;aseprovider270;dxorgcRS27;VclSmp;dxDBXServerModeRS27;liteprovider270;cxGridRS27;dxFireDACEMFRS27;dxtrmdRS27;dxSpreadSheetCoreConditionalFormattingDialogsRS27;RESTComponents;DBXInterBaseDriver;dxSpreadSheetConditionalFormattingDialogsRS27;dxGaugeControlRS27;dxSpreadSheetReportDesignerRS27;dxSpreadSheetRS27;bindcompvclsmp;cxPivotGridOLAPRS27;lmdrtl;dxPSRichEditControlLnkRS27;dxBarDBNavRS27;cxPivotGridRS27;dxADOServerModeRS27;unidac270;bindcompfmx;pgprovider270;crcontrols270;inetdb;dxFlowChartDesignerRS27;FmxTeeUI;sugarprovider270;fmx;FireDACIBDriver;fmxdae;accessprovider270;vcledge;StyleControls_dxe104Sydney;dbexpress;IndyCore;dxRibbonRS27;dxOrgChartAdvancedCustomizeFormRS27;dsnap;FireDACCommon;dxTileControlRS27;magentoprovider270;dxBarExtItemsRS27;cxSchedulerRS27;cxGridEMFRS27;soapserver;dxRichEditControlRS27;dacfmx270;dxPScxTLLnkRS27;DBXMySQLDriver;dxFlowChartLayoutsRS27;dxPSCoreRS27;dxADOEMFRS27;quickbooksprovider270;FireDACCommonODBC;FireDACCommonDriver;inet;dxPScxPivotGridLnkRS27;cxPivotGridChartRS27;IndyIPCommon;dxPSdxOCLnkRS27;vcl;mongoprovider270;dacvcl270;vquery270;dxMapControlRS27;dxPSdxDBOCLnkRS27;dxComnRS27;dxPSdxGaugeControlLnkRS27;tmsxlsdXE12;unidacfmx270;dxEMFRS27;TeeDB;FireDAC;cxTreeListdxBarPopupMenuRS27;dxPScxVGridLnkRS27;dxPSdxPDFViewerLnkRS27;dxPSdxSpreadSheetLnkRS27;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;dxTabbedMDIRS27;ibxpress;Tee;dbfprovider270;ibxbindings;vclwinx;dxPScxCommonRS27;tmsexdXE12;CustomIPTransport;vcldsnap;dxPSTeeChartRS27;dxSkinsCoreRS27;dxPScxGridLnkRS27;bindcomp;myprovider270;cxSchedulerGridRS27;cxVerticalGridRS27;oraprovider270;dxDockingRS27;dxNavBarRS27;db2provider270;dbxcds;adortl;ibprovider270;dsnapxml;exacttargetprovider270;dbrtl;IndyProtocols;inetdbxpress;dxBarRS27;dxPSdxLCLnkRS27;dxPSdxMapControlLnkRS27;dxPSdxDBTVLnkRS27;fmxase;$(DCC_UsePackage) + + + DEBUG;$(DCC_Define) + true + false + true + true + true + + + false + true + PerMonitorV2 + + + false + RELEASE;$(DCC_Define) + 0 + 0 + + + true + PerMonitorV2 + + + + MainSource + + +
Form1
+ dfm +
+ + + + + Cfg_2 + Base + + + Base + + + Cfg_1 + Base + +
+ + Delphi.Personality.12 + Application + + + + Project1.dpr + + + + + + Project1.exe + true + + + + + 1 + + + Contents\MacOS + 1 + + + 0 + + + + + classes + 1 + + + classes + 1 + + + + + res\xml + 1 + + + res\xml + 1 + + + + + library\lib\armeabi-v7a + 1 + + + + + library\lib\armeabi + 1 + + + library\lib\armeabi + 1 + + + + + library\lib\armeabi-v7a + 1 + + + + + library\lib\mips + 1 + + + library\lib\mips + 1 + + + + + library\lib\armeabi-v7a + 1 + + + library\lib\arm64-v8a + 1 + + + + + library\lib\armeabi-v7a + 1 + + + + + res\drawable + 1 + + + res\drawable + 1 + + + + + res\values + 1 + + + res\values + 1 + + + + + res\values-v21 + 1 + + + res\values-v21 + 1 + + + + + res\values + 1 + + + res\values + 1 + + + + + res\drawable + 1 + + + res\drawable + 1 + + + + + res\drawable-xxhdpi + 1 + + + res\drawable-xxhdpi + 1 + + + + + res\drawable-ldpi + 1 + + + res\drawable-ldpi + 1 + + + + + res\drawable-mdpi + 1 + + + res\drawable-mdpi + 1 + + + + + res\drawable-hdpi + 1 + + + res\drawable-hdpi + 1 + + + + + res\drawable-xhdpi + 1 + + + res\drawable-xhdpi + 1 + + + + + res\drawable-mdpi + 1 + + + res\drawable-mdpi + 1 + + + + + res\drawable-hdpi + 1 + + + res\drawable-hdpi + 1 + + + + + res\drawable-xhdpi + 1 + + + res\drawable-xhdpi + 1 + + + + + res\drawable-xxhdpi + 1 + + + res\drawable-xxhdpi + 1 + + + + + res\drawable-xxxhdpi + 1 + + + res\drawable-xxxhdpi + 1 + + + + + res\drawable-small + 1 + + + res\drawable-small + 1 + + + + + res\drawable-normal + 1 + + + res\drawable-normal + 1 + + + + + res\drawable-large + 1 + + + res\drawable-large + 1 + + + + + res\drawable-xlarge + 1 + + + res\drawable-xlarge + 1 + + + + + res\values + 1 + + + res\values + 1 + + + + + 1 + + + Contents\MacOS + 1 + + + 0 + + + + + Contents\MacOS + 1 + .framework + + + Contents\MacOS + 1 + .framework + + + 0 + + + + + 1 + .dylib + + + 1 + .dylib + + + 1 + .dylib + + + Contents\MacOS + 1 + .dylib + + + Contents\MacOS + 1 + .dylib + + + 0 + .dll;.bpl + + + + + 1 + .dylib + + + 1 + .dylib + + + 1 + .dylib + + + Contents\MacOS + 1 + .dylib + + + Contents\MacOS + 1 + .dylib + + + 0 + .bpl + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + Contents\Resources\StartUp\ + 0 + + + Contents\Resources\StartUp\ + 0 + + + 0 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + 1 + + + 1 + + + + + ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF + 1 + + + ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF + 1 + + + + + ..\ + 1 + + + ..\ + 1 + + + + + 1 + + + 1 + + + 1 + + + + + ..\$(PROJECTNAME).launchscreen + 64 + + + ..\$(PROJECTNAME).launchscreen + 64 + + + + + 1 + + + 1 + + + 1 + + + + + ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF + 1 + + + + + ..\ + 1 + + + ..\ + 1 + + + + + Contents + 1 + + + Contents + 1 + + + + + Contents\Resources + 1 + + + Contents\Resources + 1 + + + + + library\lib\armeabi-v7a + 1 + + + library\lib\arm64-v8a + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + Contents\MacOS + 1 + + + Contents\MacOS + 1 + + + 0 + + + + + library\lib\armeabi-v7a + 1 + + + + + 1 + + + 1 + + + + + Assets + 1 + + + Assets + 1 + + + + + Assets + 1 + + + Assets + 1 + + + + + + + + + + + + + + + True + False + + + 12 + + + + +
diff --git a/Error1/Project1.res b/Error1/Project1.res new file mode 100644 index 0000000..b43300a Binary files /dev/null and b/Error1/Project1.res differ diff --git a/Error1/Unit1.dfm b/Error1/Unit1.dfm new file mode 100644 index 0000000..6aed55e --- /dev/null +++ b/Error1/Unit1.dfm @@ -0,0 +1,17 @@ +object Form1: TForm1 + Left = 0 + Top = 0 + Caption = 'Form1' + ClientHeight = 299 + ClientWidth = 635 + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'Tahoma' + Font.Style = [] + OldCreateOrder = False + OnCreate = FormCreate + PixelsPerInch = 96 + TextHeight = 13 +end diff --git a/Error1/Unit1.pas b/Error1/Unit1.pas new file mode 100644 index 0000000..24ff9fc --- /dev/null +++ b/Error1/Unit1.pas @@ -0,0 +1,31 @@ +unit Unit1; +interface +uses + Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, + Vcl.Controls, Vcl.Forms, Vcl.Dialogs; + +type + TForm1 = class(TForm) + procedure FormCreate(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + +var + Form1: TForm1; + +implementation +uses + KwikQat; +{$R *.dfm} + +procedure TForm1.FormCreate(Sender: TObject); +begin + RepairQAT('word.org'); + RepairQAT('word2.org'); + RepairQAT('word3.org'); +end; + +end. diff --git a/Error1/Win32/Debug/Word.org b/Error1/Win32/Debug/Word.org new file mode 100644 index 0000000..b286e9f --- /dev/null +++ b/Error1/Win32/Debug/Word.org @@ -0,0 +1 @@ + diff --git a/Error1/Win32/Debug/malformed.PNG b/Error1/Win32/Debug/malformed.PNG new file mode 100644 index 0000000..dbc381e Binary files /dev/null and b/Error1/Win32/Debug/malformed.PNG differ diff --git a/Error1/Win32/Debug/word.officeui b/Error1/Win32/Debug/word.officeui new file mode 100644 index 0000000..e9fa7ed --- /dev/null +++ b/Error1/Win32/Debug/word.officeui @@ -0,0 +1 @@ + diff --git a/Error1/Win32/Debug/word2.officeui b/Error1/Win32/Debug/word2.officeui new file mode 100644 index 0000000..fa8c2ae --- /dev/null +++ b/Error1/Win32/Debug/word2.officeui @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +< +/> \ No newline at end of file diff --git a/Error1/Win32/Debug/word2.org b/Error1/Win32/Debug/word2.org new file mode 100644 index 0000000..a6e902a --- /dev/null +++ b/Error1/Win32/Debug/word2.org @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Error1/Win32/Debug/word3.officeui b/Error1/Win32/Debug/word3.officeui new file mode 100644 index 0000000..1ea5b4b --- /dev/null +++ b/Error1/Win32/Debug/word3.officeui @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +< +/> \ No newline at end of file diff --git a/Error1/Win32/Debug/word3.org b/Error1/Win32/Debug/word3.org new file mode 100644 index 0000000..60ff7fd --- /dev/null +++ b/Error1/Win32/Debug/word3.org @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Source/Xml.VerySimple.pas b/Source/Xml.VerySimple.pas index 3a45d93..bdec94f 100644 --- a/Source/Xml.VerySimple.pas +++ b/Source/Xml.VerySimple.pas @@ -828,6 +828,9 @@ procedure TXmlVerySimple.Walk(Writer: TStreamWriter; const PrefixNode: String; N Line: String; Indent: String; begin + if Node.Name = #13#10 then + exit; + if (Node = Root.ChildNodes.First) or (SkipIndent) then begin Line := '<'; diff --git a/readme.txt b/readme.txt index b9d54a1..0397ed8 100644 --- a/readme.txt +++ b/readme.txt @@ -1,3 +1,7 @@ +Please note: +This is VerySimpleXML used with our customers, with XML-errors fixed. + + VerySimpleXML v2.0.5 - a lightweight, one-unit, cross-platform XML reader/writer for Delphi 2010 - 10.3.2 by Dennis Spreen http://blog.spreendigital.de/2014/09/13/verysimplexml-2-0/