SmartCost_GuangDong_Simple.dpr 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435
  1. program SmartCost_GuangDong_Simple;
  2. uses
  3. FastMM4,
  4. Forms,
  5. Windows,
  6. SysUtils,
  7. ComObj,
  8. Registry,
  9. VCLFixPack,
  10. MainToolFrm in '..\..\MainUI\Forms\MainToolFrm.pas' {MainToolForm},
  11. ScBillsSubItemViews in '..\..\MainModule\UI\ScBillsSubItemViews.pas' {ScBillsSubItemView: TFrame},
  12. ScBillsViews in '..\..\MainModule\UI\ScBillsViews.pas' {ScBillsView: TFrame},
  13. ScRAdjustViews in '..\..\MainModule\UI\ScRAdjustViews.pas' {ScRAdjustView: TFrame},
  14. ScFeeRate in '..\..\MainModule\Model\ScFeeRate.pas' {ScFeeRates: TDataModule},
  15. ScFeeRateView in '..\..\SideModule\FeeRate\ScFeeRateView.pas' {frmFeeRateView: TFrame},
  16. BaseChildFrm in '..\..\MainUI\BaseMDIUI\BaseChildFrm.pas' {BaseChildForm},
  17. BaseMainFrm in '..\..\MainUI\BaseMDIUI\BaseMainFrm.pas' {BaseMainForm},
  18. ScMainFrm in '..\..\MainUI\Forms\ScMainFrm.pas' {ScMainForm},
  19. ScProjFrm in '..\..\MainUI\Forms\ScProjFrm.pas' {ScProjForm},
  20. ScRelaFiles in '..\..\MainModule\Model\ScRelaFiles.pas' {ScRelaFilesDM: TDataModule},
  21. ScTenderViews in '..\..\MainModule\UI\ScTenderViews.pas' {ScTenderView: TFrame},
  22. ScProjectGLJ in '..\..\MainModule\Model\ScProjectGLJ.pas' {ScProjGLJ: TDataModule},
  23. ScBillsGLJView in '..\..\MainModule\UI\ScBillsGLJView.pas' {ScFrmBillsGLJView: TFrame},
  24. ScDataModule in '..\..\MainModule\Model\ScDataModule.pas' {ScDM: TDataModule},
  25. ScBillsPrcElementView in '..\..\MainModule\UI\ScBillsPrcElementView.pas' {ScFrmBillsPrcElementView: TFrame},
  26. ScGLJGatherView in '..\..\MainModule\UI\ScGLJGatherView.pas' {ScFrmGLJGatherView: TFrame},
  27. ScGLJTypeFrm in '..\..\MainUI\Forms\ScGLJTypeFrm.pas' {ScGLJTypeForm},
  28. ScUnitPriceLibsUnit in '..\..\SideModule\UnitPrice\ScUnitPriceLibsUnit.pas' {ScUnitPriceLib: TDataModule},
  29. ScRAdjusts in '..\..\MainModule\Model\ScRAdjusts.pas' {ScRAdjustData: TDataModule},
  30. ProjectsDM in '..\..\MainUI\ProjectManage\ProjectsDM.pas' {ManageProjects: TDataModule},
  31. ScFeeRateLibsUnit in '..\..\SideModule\FeeRate\ScFeeRateLibsUnit.pas' {ScFeeRateLib: TDataModule},
  32. FeeCalculateUnit in '..\..\SideModule\FeeRate\FeeCalculateUnit.pas',
  33. ScBillsFairy in '..\..\MainModule\Expert\ScBillsFairy.pas' {ScBillsFairyView: TFrame},
  34. ScFileArchiver in '..\..\Common\ScFileArchiver.pas',
  35. ScFileProviders in '..\..\MainModule\Model\ScFileProviders.pas',
  36. ScFTViews in '..\..\MainModule\UI\ScFTViews.pas' {ScFTView: TFrame},
  37. ScFTBills in '..\..\MainModule\Model\ScFTBills.pas' {ScFTBillsData: TDataModule},
  38. ScStreamArchiver in '..\..\Common\ScStreamArchiver.pas',
  39. ScProjBaseDM in '..\..\MainModule\Model\ScProjBaseDM.pas' {ScProjBaseData: TDataModule},
  40. ScProjList in '..\..\MainModule\Model\ScProjList.pas',
  41. ScProjectsGather in '..\..\MainModule\Model\ScProjectsGather.pas' {ScProjGatherDM: TDataModule},
  42. ScProjGatherFrm in '..\..\MainModule\UI\ScProjGatherFrm.pas' {ScProjectGatherForm},
  43. ScProjectCompare in '..\..\MainModule\Model\ScProjectCompare.pas' {ScProjectCompareDM: TDataModule},
  44. ScProjectCompareFrm in '..\..\MainModule\UI\ScProjectCompareFrm.pas' {ScProjectCompareForm},
  45. WelcomeFrm in '..\..\MainUI\Forms\Forms.8\WelcomeFrm.pas' {WelcomeForm},
  46. ScProjectProportiesFrm in '..\..\MainUI\Forms\ScProjectProportiesFrm.pas' {ScProjectProportiesForm},
  47. ScOptionFrm in '..\..\MainUI\Forms\ScOptionFrm.pas' {ScOptionForm},
  48. ScReportsFrm in '..\..\Reports\UI\ScReportsFrm.pas' {ScReportsForm},
  49. AboutFrm in '..\..\MainUI\Forms\Forms.8\AboutFrm.pas' {AboutForm},
  50. ScCountPrices in '..\..\MainModule\Model\ScCountPrices.pas' {ScCountPriceData: TDataModule},
  51. ScDataSetWrappers in '..\..\MainModule\Model\ScDataSetWrappers.pas',
  52. ScExprs in '..\..\MainModule\Model\ScExprs.pas' {ScExprsData: TDataModule},
  53. ScGLJ in '..\..\MainModule\Model\ScGLJ.pas' {ScGLJData: TDataModule},
  54. ScProject in '..\..\MainModule\Model\ScProject.pas',
  55. ScRations in '..\..\MainModule\Model\ScRations.pas' {ScRationData: TDataModule},
  56. ScRationSQLExp in '..\..\MainModule\Expert\ScRationSQLExp.pas',
  57. ScBillsLibFrm in '..\..\MainModule\UI\ScBillsLibFrm.pas' {ScBillsLibForm},
  58. ScPerformFTFrm in '..\..\MainModule\UI\ScPerformFTFrm.pas' {ScPerformFTForm},
  59. FeeStdFrm in '..\..\SideModule\FeeRate\FeeStdFrm.pas' {FeeStdEditorForm},
  60. ScBrowseGLJFrm in '..\..\Common\ScBrowseGLJFrm.pas' {ScBrowseGLJForm},
  61. ScRationAssistant in '..\..\SideModule\Ration\ScRationAssistant.pas' {frmRationAssistant: TFrame},
  62. ScRationAssistantDM in '..\..\SideModule\Ration\ScRationAssistantDM.pas' {RationAssistantDM: TDataModule},
  63. AddNewGLJFrm in '..\..\Common\AddNewGLJFrm.pas' {AddNewGLJForm},
  64. ReportAdjusterUnit in '..\..\Reports\Config\ReportAdjusterUnit.pas' {ReportAdjuster},
  65. ScBills in '..\..\MainModule\Model\ScBills.pas' {ScBillsData: TDataModule},
  66. ExprsGraph in '..\..\Common\ExprsGraph.pas',
  67. ScConfig in '..\..\Common\ScConfig.pas',
  68. ScConsts in '..\..\Common\ScConsts.pas',
  69. ScEvaluate in '..\..\Common\ScEvaluate.pas',
  70. ScIDTree in '..\..\Common\ScIDTree.pas',
  71. ScMessage in '..\..\Common\ScMessage.pas',
  72. ScParser in '..\..\Common\ScParser.pas',
  73. ScUtils in '..\..\Common\ScUtils.pas',
  74. ScExprsEdt in '..\..\MainModule\UI\ScExprsEdt.pas' {ScExprsEditor},
  75. ScBillsTemplate in '..\..\MainModule\UI\ScBillsTemplate.pas' {ScBillsTemplateForm},
  76. ScEncryptUnit in '..\..\MainModule\Model\ScEncryptUnit.pas',
  77. ScFilterRation in '..\..\SideModule\Ration\ScFilterRation.pas' {ScFilterRationView: TFrame},
  78. ScFindRationFrm in '..\..\SideModule\Ration\ScFindRationFrm.pas' {ScFindRationForm},
  79. ScReportCompareFrm in '..\..\Reports\UI\ScReportCompareFrm.pas' {ScReportCompareForm},
  80. ScSelectBuildUnitFrm in '..\..\MainModule\UI\ScSelectBuildUnitFrm.pas' {ScSelectBuildUnitForm},
  81. ScMaterial in '..\..\MainModule\Model\ScMaterial.pas' {MaterialData: TDataModule},
  82. ScOpenAPI in '..\..\OpenAPI\ScOpenAPI.pas',
  83. ScMaterialRationExp in '..\..\MainModule\Expert\ScMaterialRationExp.pas',
  84. ScUpdateDataBase in '..\..\MainModule\Model\ScUpdateDataBase.pas',
  85. ScXMLConsts in '..\..\MainModule\Model\ScXMLConsts.pas',
  86. ScXMLSavers in '..\..\MainModule\Model\ScXMLSavers.pas',
  87. ScProjGLJGatherDM in '..\..\Reports\Model\ScProjGLJGatherDM.pas' {ScProjGLJGather: TDataModule},
  88. ScRCodeEdts in '..\..\MainModule\UI\ScRCodeEdts.pas',
  89. ScMaterialDataFrm in '..\..\MainModule\UI\ScMaterialDataFrm.pas' {ScMaterialDataForm},
  90. ScLocalGLJDM in '..\..\MainModule\Model\ScLocalGLJDM.pas' {LocalGLJ: TDataModule},
  91. ScMaterialXSFrm in '..\..\MainModule\UI\ScMaterialXSFrm.pas' {MaterialXSForm},
  92. ScCompareGLJFrm in '..\..\MainModule\UI\ScCompareGLJFrm.pas' {CompareGLJForm},
  93. WCImportTipFrm in '..\..\ImportAndExport\WCImportTipFrm.pas' {WCImportTipForm},
  94. ScProjProperty in '..\..\MainModule\Model\ScProjProperty.pas',
  95. ScNewProjFrm in '..\..\MainUI\Forms\ScNewProjFrm.pas' {ScNewProjForm},
  96. ScLoadMTTransFrm in '..\..\MainModule\UI\ScLoadMTTransFrm.pas' {LoadMTTransForm},
  97. ScStdLibs in '..\..\MainModule\Model\ScStdLibs.pas',
  98. ScMachine in '..\..\MainModule\Model\ScMachine.pas' {ScMachineData: TDataModule},
  99. ScAdvMsgDlg in '..\..\Common\ScAdvMsgDlg.pas' {AdvMsgDlg},
  100. ScAuthFrm in '..\..\MainUI\Forms\ScAuthFrm.pas' {AuthorizeForm},
  101. ScRationLibsUnit in '..\..\SideModule\Ration\ScRationLibsUnit.pas' {ScRationLib: TDataModule},
  102. ScProjectRationLibsUnit in '..\..\SideModule\Ration\ScProjectRationLibsUnit.pas' {ScProjectRationLib: TDataModule},
  103. ScRationLibsFrm in '..\..\SideModule\Ration\ScRationLibsFrm.pas' {ScRationLibsForm},
  104. ScRationLibManageView in '..\..\SideModule\Ration\ScRationLibManageView.pas' {ScRationLibManageFrm: TFrame},
  105. ScGLJTypeView in '..\..\MainModule\UI\ScGLJTypeView.pas' {GLJTypeView: TFrame},
  106. ScBuildProjectSaverUnit in '..\..\MainModule\Model\ScBuildProjectSaverUnit.pas',
  107. CommonMessages in '..\..\Common\CommonMessages.pas',
  108. ScCommonFeeDM in '..\..\MainModule\Model\ScCommonFeeDM.pas' {ScCommonFeesDM: TDataModule},
  109. ScInputAdjustXSFrm in '..\..\MainModule\UI\ScInputAdjustXSFrm.pas' {ScInputAdjustXSDialog},
  110. ScMtOrgPriceFileDM in '..\..\MainModule\Model\ScMtOrgPriceFileDM.pas' {MtOrgPriceFileDM: TDataModule},
  111. ScMtOrgPriceEditorFrm in '..\..\SideModule\UnitPriceEditor\ScMtOrgPriceEditorFrm.pas' {MtOrgPriceForm},
  112. ScBillsTree2 in '..\..\MainModule\Model\ScBillsTree2.pas',
  113. ScFeeTaxDM in '..\..\SideModule\UnitPrice\ScFeeTaxDM.pas' {FeeTaxDM: TDataModule},
  114. ScFeeTaxEditorFrm in '..\..\SideModule\UnitPriceEditor\ScFeeTaxEditorFrm.pas' {FeeTaxEditorForm},
  115. SbBidFile in '..\..\SbBills\SbBidFile.pas',
  116. SbBillsTree in '..\..\SbBills\SbBillsTree.pas',
  117. SbBillsFrm in '..\..\SbBills\SbBillsFrm.pas' {SbBillsForm},
  118. ScDataIntfDM in '..\..\MainModule\Model\ScDataIntfDM.pas' {DataInterface: TDataModule},
  119. ScProjectCompare_HLJ in '..\..\MainModule\Model\ScProjectCompare_HLJ.pas' {ScProjectCompareHLJDM: TDataModule},
  120. ScSetFeeTenderFrm in '..\..\MainModule\UI\ScSetFeeTenderFrm.pas' {SetFeeTenderForm},
  121. ScMtOrgBatchAddFrm in '..\..\MainModule\UI\ScMtOrgBatchAddFrm.pas' {MtOrgBatchAddForm},
  122. ScExportBuildProjectsFrm in '..\..\MainUI\Forms\ScExportBuildProjectsFrm.pas' {ExportBuildProjectsForm},
  123. ScShowRationsZeroQuantityFrm in '..\..\MainModule\UI\ScShowRationsZeroQuantityFrm.pas' {ShowRationsZeroQuantityForm},
  124. ScSelectBillsFrm in '..\..\Common\ScSelectBillsFrm.pas' {SelectBillsFrm},
  125. ScReportTempTables in '..\..\MainModule\Model\ScReportTempTables.pas',
  126. ScTablesUnit in '..\..\Common\ScTablesUnit.pas',
  127. ScUpdateLockFrm in '..\..\MainUI\Forms\ScUpdateLockFrm.pas' {UpdateLockForm},
  128. ScSelectGatherForm in '..\..\MainModule\UI\ScSelectGatherForm.pas' {SelectGatherForm},
  129. ScGLJTypesDM in '..\..\Common\ScGLJTypesDM.pas' {GLJTypeData: TDataModule},
  130. ScGLJLibs in '..\..\MainModule\Model\ScGLJLibs.pas' {GLJLib: TDataModule},
  131. ScGLJLibEditorFrm in '..\..\MainModule\UI\ScGLJLibEditorFrm.pas' {GLJLibEditorForm},
  132. ScWorkListFrm in '..\..\Reports\UI\ScWorkListFrm.pas' {ScWorkListForm},
  133. ScBigProjManageView in '..\..\MainUI\ProjectManage\ScBigProjManageView.pas' {ScfrmBigProjManage: TFrame},
  134. ScTypes in '..\..\Common\ScTypes.pas',
  135. ScFeeStdLibUnit in '..\..\SideModule\FeeRate\ScFeeStdLibUnit.pas' {ScFeeStdLibDM: TDataModule},
  136. ScProjectFeeRateLibsUnit in '..\..\SideModule\FeeRate\ScProjectFeeRateLibsUnit.pas' {ScProjectFeeRateLib: TDataModule},
  137. ScProjectUnitPriceLibsUnit in '..\..\SideModule\UnitPrice\ScProjectUnitPriceLibsUnit.pas' {ScProjectUnitPriceLib: TDataModule},
  138. ScBrowseRelaFilesFrm in '..\..\MainModule\UI\ScBrowseRelaFilesFrm.pas' {ScBrowseRelaFilesForm},
  139. ScSelectBuildProjectsFrm in '..\..\MainUI\Forms\ScSelectBuildProjectsFrm.pas' {SelectBuildProjectForm},
  140. ScParseFileInfo in '..\..\MainUI\ProjectManage\ScParseFileInfo.pas',
  141. ConcreteFrm in '..\..\MainModule\UI\ConcreteFrm.pas' {ConcreteForm},
  142. ScBlockNewLibFrm in '..\..\MainModule\UI\ScBlockNewLibFrm.pas' {ScBlockNewLibForm},
  143. ScBrowseProjectFileFrm in '..\..\MainModule\UI\ScBrowseProjectFileFrm.pas' {ScBrowseProjectFileForm},
  144. ScDigitConfig in '..\..\MainModule\Model\ScDigitConfig.pas',
  145. ScDigitManagerUnit in '..\..\MainModule\Model\ScDigitManagerUnit.pas',
  146. ScReNameFrm in '..\..\MainModule\UI\ScReNameFrm.pas' {ReNameForm},
  147. ScBillsInsPosFrm in '..\..\MainModule\UI\ScBillsInsPosFrm.pas' {ScBillsInsPosForm},
  148. ScRelateBillFrm in '..\..\MainModule\UI\ScRelateBillFrm.pas' {ScRelateBillForm},
  149. ScSearchAndReplaceView in '..\..\MainModule\UI\ScSearchAndReplaceView.pas' {frmSearchAndReplace: TFrame},
  150. ScQuestFrm in '..\..\MainModule\UI\ScQuestFrm.pas' {ScQuestForm},
  151. ScBlockManagerViews in '..\..\MainModule\UI\ScBlockManagerViews.pas' {FrmBlockManager: TFrame},
  152. ScBlockCloneQuestFrm in '..\..\MainModule\UI\ScBlockCloneQuestFrm.pas' {BlockCloneQuestForm},
  153. ScImportExcelTree in '..\..\MainModule\Excel\ScImportExcelTree.pas',
  154. ScDrawingQuantityDM in '..\..\MainModule\Model\Budget\ScDrawingQuantityDM.pas' {DrawingQuantityDM: TDataModule},
  155. ScRationSearch in '..\..\MainModule\UI\ScRationSearch.pas' {frmRationSearch: TFrame},
  156. ScHistoryProjectsDM in '..\..\MainModule\Model\ScHistoryProjectsDM.pas' {DMHistoryProjects: TDataModule},
  157. ScKindsOfTrees in '..\..\MainModule\Model\ScKindsOfTrees.pas',
  158. ScHistoryProjectsForm in '..\..\MainModule\UI\ScHistoryProjectsForm.pas' {HistoryProjectsFrm},
  159. ScBackUpManagerForm in '..\..\MainModule\UI\ScBackUpManagerForm.pas' {BackUpManagerFrm},
  160. ScRefrencePriceFrm in '..\..\MainModule\UI\ScRefrencePriceFrm.pas' {frmRefrencePrice},
  161. ScProjectAnalyseFrm in '..\..\MainModule\UI\ScProjectAnalyseFrm.pas' {ScProjectAnalyseForm},
  162. ScProjectAnalyse in '..\..\MainModule\Model\ScProjectAnalyse.pas' {ScProjectAnalyseDM: TDataModule},
  163. ScProjectCloneFrm in '..\..\MainModule\UI\ScProjectCloneFrm.pas' {ScProjectCloneForm},
  164. ScZeroBillsFrm in '..\..\MainModule\UI\ScZeroBillsFrm.pas' {ZeroBillsForm},
  165. ScElectricityCalcDM in '..\..\MainModule\Model\ScElectricityCalcDM.pas' {ElectricityCalcDM: TDataModule},
  166. ScMEFeeRateFrm in '..\..\MainModule\UI\ScMEFeeRateFrm.pas' {MEFeeRateForm},
  167. ScElectricityCalcFrm in '..\..\MainModule\UI\ScElectricityCalcFrm.pas' {ScElectricityCalcForm},
  168. ScBlockLibsUnit in '..\..\MainModule\Model\ScBlockLibsUnit.pas',
  169. ScMtTransInfoFrm in '..\..\MainModule\UI\ScMtTransInfoFrm.pas' {MtTransInfoForm},
  170. ScBlockLibSelectFrm in '..\..\MainModule\UI\ScBlockLibSelectFrm.pas' {ScBlockLibSelectForm},
  171. ScCustomMachineDM in '..\..\MainModule\Model\ScCustomMachineDM.pas' {ScCustomMachine: TDataModule},
  172. ScResolver in '..\..\MainModule\Excel\ScResolver.pas',
  173. ScCommonIntf in '..\..\MainModule\Excel\ScCommonIntf.pas',
  174. ScExcel in '..\..\MainModule\Excel\ScExcel.pas',
  175. ScExcelImEx in '..\..\MainModule\Excel\ScExcelImEx.pas',
  176. ScPersistentData in '..\..\MainModule\Model\ScPersistentData.pas',
  177. ScNodeRecycleBinDM in '..\..\MainModule\Model\ScNodeRecycleBinDM.pas' {NodeRecycleBinDM: TDataModule},
  178. ScImportHintFrm in '..\..\MainUI\Forms\ScImportHintFrm.pas' {ScImportHintForm},
  179. ScNodeRecycleBinForm in '..\..\MainModule\UI\ScNodeRecycleBinForm.pas' {NodeRecycleBinFrm},
  180. ScSelectProjectPackageFilesFrm in '..\..\MainUI\ProjectManage\ScSelectProjectPackageFilesFrm.pas' {SelectProjectPackageFilesForm},
  181. ScCustomConcreteDM in '..\..\MainModule\Model\ScCustomConcreteDM.pas' {ScCustomConcrete: TDataModule},
  182. ScBillsCtrls in '..\..\MainModule\Model\ScBillsCtrls.pas',
  183. ScTreesEx in '..\..\MainModule\Excel\ScTreesEx.pas',
  184. ScBatchRationDataFrm in '..\..\MainModule\UI\ScBatchRationDataFrm.pas' {BatchRationDataForm},
  185. ScPriceDiffDM in '..\..\MainModule\Model\ScPriceDiffDM.pas' {ScPriceDiffData: TDataModule},
  186. ScPriceDiffView in '..\..\MainModule\UI\ScPriceDiffView.pas' {frmPriceDiff: TFrame},
  187. ScPeriodSetupFrm in '..\..\MainModule\UI\ScPeriodSetupFrm.pas' {PeriodSetupForm},
  188. ScGLJExtendDM in '..\..\MainModule\Model\ScGLJExtendDM.pas' {GLJExtendDM: TDataModule},
  189. ScProjectGLJSelectFrm in '..\..\MainModule\UI\ScProjectGLJSelectFrm.pas' {ProjectGLJSelectForm},
  190. ScHelpFrm in '..\..\MainModule\UI\ScHelpFrm.pas' {HelpForm},
  191. ScBPInsPosFrm in '..\..\MainUI\ProjectManage\ScBPInsPosFrm.pas' {ScBPInsPosForm},
  192. ScWebSearchFrm in '..\..\MainModule\UI\ScWebSearchFrm.pas' {WebSearchFrm},
  193. ScPHPWeb in '..\..\MainModule\Model\ScPHPWeb.pas' {PHPWeb: TDataModule},
  194. ScStaticBills in '..\..\MainModule\Model\ScStaticBills.pas',
  195. ScBillsLibDM in '..\..\MainModule\Model\ScBillsLibDM.pas' {BillsLibData: TDataModule},
  196. ScBillsLibView in '..\..\MainModule\UI\ScBillsLibView.pas' {BillsLibView: TFrame},
  197. ScWebInformationFrm in '..\..\MainModule\UI\ScWebInformationFrm.pas' {ScWebInformationForm},
  198. ScJumpFrm in '..\..\MainModule\UI\ScJumpFrm.pas' {JumpForm},
  199. ScBillsDM in '..\..\MainModule\Model\ScBillsDM.pas' {ScBillsModule: TDataModule},
  200. ScBillsConsts in '..\..\MainModule\Model\ScBillsConsts.pas',
  201. BuildLoanDataUnit in '..\..\MainModule\Model\BuildLoanDataUnit.pas' {BuildLoanDM: TDataModule},
  202. ScLeafTrees in '..\..\MainModule\Model\ScLeafTrees.pas' {LeafTreesDM: TDataModule},
  203. ScBaseTreeDM in '..\..\MainModule\Model\ScBaseTreeDM.pas' {BaseTreeDM: TDataModule},
  204. ScGroundCompensateDM in '..\..\MainModule\Model\ScGroundCompensateDM.pas' {GCTreeDM: TDataModule},
  205. ScGroundCompensateFeeLib in '..\..\MainModule\Model\ScGroundCompensateFeeLib.pas' {GCFeeLib: TDataModule},
  206. ScBillsGradeDM in '..\..\MainModule\Model\ScBillsGradeDM.pas' {ScBillsGradeData: TDataModule},
  207. ScStdItemLibDM in '..\..\MainModule\Model\ScStdItemLibDM.pas' {ScStdItemLibData: TDataModule},
  208. ScProjCustomStepDM in '..\..\MainModule\Model\ScProjCustomStepDM.pas' {ScProjCustomStepData: TDataModule},
  209. ScCustomStepDM in '..\..\MainModule\Model\ScCustomStepDM.pas' {CustomStepDM: TDataModule},
  210. ScXMLPort in '..\..\MainModule\Model\ScXMLPort.pas',
  211. ScGroundCompBatchSetFrm in '..\..\MainModule\UI\ScGroundCompBatchSetFrm.pas' {GCBatchSetForm},
  212. ScGroundCompensateCoeFrm in '..\..\MainModule\UI\ScGroundCompensateCoeFrm.pas' {GroundCompensateCoeForm},
  213. ScAreaFrm in '..\..\MainModule\UI\ScAreaFrm.pas' {AreaForm},
  214. BuildLoanFrm in '..\..\MainModule\UI\BuildLoanFrm.pas' {BuildLoanForm},
  215. ScGetCompareFrm in '..\..\MainModule\UI\ScGetCompareFrm.pas' {GetSourceForm},
  216. ScBillsGradeView in '..\..\MainModule\UI\ScBillsGradeView.pas' {frmBillsGrade: TFrame},
  217. ScCustomSetErrorFrm in '..\..\MainModule\UI\ScCustomSetErrorFrm.pas' {ScCustomSetErrorForm},
  218. ScForestRecoverFeeFrm in '..\..\MainModule\UI\ScForestRecoverFeeFrm.pas' {ForestRecoverFeeForm},
  219. ScGCNewFeeDisplaySetupFrm in '..\..\MainModule\UI\ScGCNewFeeDisplaySetupFrm.pas' {ScGCNewFeeDisplaySetupForm},
  220. ScTenderAlgorithm in '..\..\MainModule\Model\ScTenderAlgorithm.pas',
  221. ScTenderDM in '..\..\MainModule\Model\ScTenderDM.pas' {ScTenderData: TDataModule},
  222. CfgPort in '..\..\netclient\CfgPort.pas',
  223. ClientService in '..\..\netclient\ClientService.pas',
  224. CorrespondClient in '..\..\netclient\CorrespondClient.pas',
  225. EnctyptClientData in '..\..\netclient\EnctyptClientData.pas',
  226. ScConnectEncrypt in '..\..\netclient\ScConnectEncrypt.pas',
  227. csUser in '..\..\CostService\csUser.pas',
  228. UserWaitFrm in '..\..\CostService\UserWaitFrm.pas' {UserWaitForm},
  229. ScReportBuildProjCompareFrm in '..\..\Reports\UI\ScReportBuildProjCompareFrm.pas' {ScReportBPCompareForm},
  230. dsErrorNodeList in '..\..\dsInterface\dsErrorNodeList.pas',
  231. dsExportExcel in '..\..\dsInterface\dsExportExcel.pas',
  232. dsGatherControl in '..\..\dsInterface\dsGatherControl.pas',
  233. dsGatherDataFrm in '..\..\dsInterface\dsGatherDataFrm.pas' {GatherDataForm},
  234. dsGatherDm in '..\..\dsInterface\dsGatherDm.pas' {dsGatherData: TDataModule},
  235. dsGatherSelectFrm in '..\..\dsInterface\dsGatherSelectFrm.pas' {GatherSelectForm},
  236. dsGatherTree in '..\..\dsInterface\dsGatherTree.pas',
  237. dsGatherUnit in '..\..\dsInterface\dsGatherUnit.pas',
  238. dsGatherUtils in '..\..\dsInterface\dsGatherUtils.pas',
  239. ScProjGLJCompare in '..\..\MainModule\Model\ScProjGLJCompare.pas',
  240. ScPriceDiffGatherSelectFrm in '..\..\Reports\UI\ScPriceDiffGatherSelectFrm.pas' {PriceDiffGatherSelectForm},
  241. ScPriceDiffGather in '..\..\Reports\Model\ScPriceDiffGather.pas',
  242. ScPriceDiffGatherDm in '..\..\Reports\Model\ScPriceDiffGatherDm.pas' {PriceDiffGatherData: TDataModule},
  243. ScPriceDiffGatherTables in '..\..\Reports\Model\ScPriceDiffGatherTables.pas',
  244. ScPriceDiffGatherTree in '..\..\Reports\Model\ScPriceDiffGatherTree.pas',
  245. ScMicroWebHintFrm in '..\..\MainModule\UI\ScMicroWebHintFrm.pas' {ScMicroWebHintForm},
  246. ScBidGradeFrm in '..\..\MainModule\UI\ScBidGradeFrm.pas' {ScBidGradeForm},
  247. ScBidGradeDM in '..\..\MainModule\Model\ScBidGradeDM.pas' {ScBidGrade: TDataModule},
  248. ScBatchReplaceBillsFrm in '..\..\MainModule\UI\ScBatchReplaceBillsFrm.pas' {BatchReplaceBillsForm},
  249. ScFeeCrossBlockFrm in '..\..\MainModule\UI\ScFeeCrossBlockFrm.pas' {FeeCrossBlockForm},
  250. ScProjManagerTree in '..\..\MainUI\ProjectManage\ScProjManagerTree.pas',
  251. ScBuildProjSelectFme in '..\..\MainUI\ProjectManage\ScBuildProjSelectFme.pas' {ScBuildProjSelectFrame: TFrame},
  252. ScReportHelperUnit in '..\..\Reports\UI\ScReportHelperUnit.pas',
  253. ScPriceMinusTaxFrm in '..\..\MainModule\UI\ScPriceMinusTaxFrm.pas' {ScPriceMinusTaxForm},
  254. ScPriceMinusTaxDm in '..\..\MainModule\Model\ScPriceMinusTaxDm.pas' {PriceMinusTaxData: TDataModule},
  255. CheckProjectDataFrm in '..\..\Debug\CheckProjectDataFrm.pas' {CheckProjectDataForm},
  256. ShowData in '..\..\Debug\ShowData.pas' {Form1},
  257. NewSingleGLJFrm in '..\..\MainModule\UI\NewSingleGLJFrm.pas' {NewSingleGLJForm},
  258. ScReportSolutionFrm in '..\..\Reports\UI\ScReportSolutionFrm.pas' {RptSolutionFrm},
  259. ScXMLPortMap in '..\..\MainModule\Model\ScXMLPortMap.pas',
  260. ScSaveAsFileFrm in '..\..\MainUI\ProjectManage\ScSaveAsFileFrm.pas' {ScSaveAsFileForm},
  261. ScNeiMengTransPriceFrm in '..\..\MainModule\UI\ScNeiMengTransPriceFrm.pas' {ScNeiMengTransPriceForm},
  262. ScDeletedProjectsFrm in '..\..\MainModule\UI\ScDeletedProjectsFrm.pas' {ScDeletedProjectsForm},
  263. ScCorrectGLJDM in '..\..\MainModule\Model\ScCorrectGLJDM.pas' {ScCorrectGLJ: TDataModule},
  264. ScDeviceStdDataDM in '..\..\MainModule\Model\ScDeviceStdDataDM.pas' {ScDeviceStdData: TDataModule},
  265. ScReportPrjCollectFrm in '..\..\Reports\UI\ScReportPrjCollectFrm.pas' {ScReportPrjCollectFrm},
  266. ScAutoCodeFrm in '..\..\MainModule\UI\ScAutoCodeFrm.pas' {ScAutoCodeForm},
  267. ScEncryptEditions in '..\..\Common\ScEncryptEditions.pas';
  268. {$R *.res}
  269. // zhangyin 2021-05-24 启用大内存地址模式,配合FastMM,使用4GB内存,实际可用3.7GB ($0020 = LARGE_ADDRESS_AWARE)
  270. {$SetPEFlags $0020}
  271. var
  272. // 文件映射对象句柄
  273. ShareHandle: THandle;
  274. // 已运行实例的主窗体句柄
  275. PHWND: HWND;
  276. pData: PScShareMemory;
  277. SA: TSecurityAttributes;
  278. bWantAuthorize: Boolean;
  279. sToken, sInfo, sURL, sHint: string;
  280. begin
  281. Application.Initialize;
  282. // 2020-09-24 InitConstsByDog要放在InitConsts前面
  283. InitConstsByDog;
  284. // 2020-08-14初始化常量从ScConsts.pas移到这里
  285. InitConsts;
  286. ShowWelcome;
  287. // 2024-11-01 zhangyin 带锁版本需要访问服务器获取时间,将这两句提前到这里
  288. //G_URL := 'http://ol.smartcost.com.cn/'; // 从代码上看,只有网络版会用到此域名,所以暂不考虑非网络版。如果要考虑,则这一句挪到其它能通用的地方。
  289. PHPWeb.AnalyzeProtocol(ParamStr(1), sToken, G_URL); // Z+启动,如果参数有传域名,则对 G_URL 进行覆盖
  290. PHWND := 0;
  291. SA.nLength := SizeOf(SA);
  292. SA.lpSecurityDescriptor := nil;
  293. SA.bInheritHandle := False;
  294. ShareHandle := CreateFileMapping($FFFFFFFF, @SA, PAGE_READWRITE,
  295. 0, SizeOf(TScShareMemory), PChar(ScShareMemoryName));
  296. try
  297. // 已存在共享内存
  298. if GetLastError = ERROR_ALREADY_EXISTS then
  299. begin
  300. pData := MapViewOfFile(ShareHandle, File_MAP_WRITE, 0, 0, 0);
  301. try
  302. if pData <> nil then
  303. PHWND := pData^.AppHandle;
  304. if IsWindow(PHWND) then
  305. begin
  306. if ParamCount > 0 then
  307. pData^.CmdStr := ParamStr(1);
  308. PostMessage(PHWND, SCM_SHOWMAINFORM, 0, 0);
  309. if ParamCount > 0 then
  310. PostMessage(PHWND, SCM_OpenFile, 0, 0);
  311. end;
  312. finally
  313. if pData <> nil then
  314. UnmapViewOfFile(pData);
  315. end;
  316. Halt;
  317. end
  318. // 尚未存在共享内存
  319. else
  320. begin
  321. MainApp := Application;
  322. {$IFDEF _ScEncrypt}
  323. bWantauthorize := False;
  324. CreateEncryptLog;
  325. case OpenDog of
  326. CS_NeedAuthorize:
  327. begin
  328. CommonMessage(pmtError, [pmbOk], '您的试用时间已到,需要进行注册。');
  329. if not Authorize then
  330. begin
  331. HideWelcome;
  332. Halt;
  333. end;
  334. end;
  335. CS_NeedUpdate:
  336. begin
  337. CommonMessage(pmtHint, [pmbOk], '您的加密锁需要升级后才可使用。');
  338. if not UpdateLock then
  339. begin
  340. HideWelcome;
  341. Halt;
  342. end;
  343. end;
  344. CS_Error, CS_NoDog, CS_DogTypeError, CS_VerifyError:
  345. begin
  346. HideWelcome;
  347. CommonMessage(pmtError, [pmbOk], '没有检查到加密锁。'#13#10'请购买正版SmartCost。'
  348. + #13#10'如果插上加密锁后仍有问题,请拨打客服热线:' + LoadServicePhone + '。');
  349. {MessageError(0, '没有检查到加密锁。'#13#10'请购买正版SmartCost。'
  350. + #13#10'如果插上加密锁后仍有问题,请拨打客服热线:' + LoadServicePhone + '。');}
  351. Halt;
  352. end;
  353. // 2009-10-19 zhangyin 时间限制锁
  354. CS_EndDate:
  355. begin
  356. if (CommonMessage(pmtWarning, [pmbOk, pmbCancel],
  357. '您的使用时间已到,是否通过注册文件延长使用时间?') = pmOK) then
  358. begin
  359. if not Authorize then
  360. begin
  361. HideWelcome;
  362. Halt;
  363. end;
  364. end
  365. else
  366. begin
  367. HideWelcome;
  368. Halt;
  369. end;
  370. end;
  371. CS_CloseToLimitDate:
  372. begin
  373. CommonMessage(pmtHint, [pmbOk], '您的加密锁使用时间即将到期,如需延长使用时间,请联系客服中心。');
  374. end;
  375. CS_WantAuthorize:
  376. bWantAuthorize := True;
  377. end;
  378. if CheckDog = CS_VerifyError then
  379. begin
  380. HideWelcome;
  381. CommonMessage(pmtError, [pmbOk], '没有检查到加密锁。'#13#10'请购买正版SmartCost。'
  382. + #13#10'如果插上加密锁后仍有问题,请拨打客服热线:' + LoadServicePhone + '。');
  383. {MessageError(0, '没有检查到加密锁。'#13#10'请购买正版SmartCost。'
  384. + #13#10'如果插上加密锁后仍有问题,请拨打客服热线:' + LoadServicePhone + '。');}
  385. Halt;
  386. end;
  387. if CheckDog = CS_DogTypeError then
  388. begin
  389. HideWelcome;
  390. CommonMessage(pmtError, [pmbOk], '加密锁类型不正确,请检查。'
  391. + #13#10'如果插上加密锁后仍有问题,请拨打客服热线:' + LoadServicePhone + '。');
  392. {MessageError(0, '加密锁类型不正确,请检查。'
  393. + #13#10'如果插上加密锁后仍有问题,请拨打客服热线:' + LoadServicePhone + '。');}
  394. Halt;
  395. end;
  396. if bWantAuthorize then
  397. ShowADVMessage('感谢您购买SmartCost!'#13#10'目前本产品处于试用状态,需要进行注册。'#13#10+
  398. '了解详细信息请进入菜单“帮助”->“产品注册”。', '1');
  399. {$ENDIF}
  400. pData := MapViewOfFile(ShareHandle, File_MAP_WRITE, 0, 0, 0);
  401. try
  402. if pData <> nil then
  403. begin
  404. ZeroMemory(pData, SizeOf(TScShareMemory));
  405. pData^.AppHandle := Application.Handle;
  406. end;
  407. finally
  408. if pData <> nil then
  409. UnmapViewOfFile(pData);
  410. end;
  411. end;
  412. Application.CreateForm(TScMainForm, ScMainForm);
  413. BringWelcomeToTop;
  414. Application.Run;
  415. finally
  416. CloseHandle(ShareHandle);
  417. SaveDog;
  418. end;
  419. end.