Is there an alternative to Application.DelayInitialize for Delphi 7? I'm trying to create a Delphi 7 Service that hosts a COM Server but it doesn't work and I believe it is because I'm not using Application.DelayInitialize.
Alternative to Application.DelayInitialize for Delphi 7 Service?
539 views Asked by Joshua At
1
There are 1 answers
Related Questions in DELPHI
- How can I read the header of request to webserver
- Receiving Notifications for Individual Task Completion OmniThreadLibrary Parallel.ForEach
- Delphi - How to get result of function from QuickReport without viewing a report?
- Out of memory while adding documents to a Firebird BLOB field with Delphi
- How to MakeScreenshot fullpage on Delphi
- How to program a COM object with an IEnumerator, IEnumerable interface inside
- How to Dynamically Add Controls to Delphi Form
- How to write a string in Stringrid with DelimitedText in FMX Delphi 11
- TGrid/TStringGrid multi cell selection / multi editing in delphi firemonkey (12)
- How to localize "Today" in the Delphi TMonthCalendar?
- How can I call a SOAP webserver method in Vue.js?
- Efficiently Handling Large Number of API Calls with Delphi 10.4 and OmniThreadLibrary
- Delphi can not compile the unit create by its "XML Data Binding Wizard"
- Save Form Properties in File and then restore those Properties after reopening
- Is it possible to open a blob without saving it to file
Related Questions in DELPHI-7
- Delphi - How to get result of function from QuickReport without viewing a report?
- How to handle the "Could Not Load SSL Library" error in Delphi 7 when Posting JSON Data
- Delphi 7 application not loading STRINGTABLE resources on Windows 10
- SQLDirect Delphi 7
- Possible to open a PowerShell (run as Administrator) from Delphi?
- copy & paste command to Powershell
- Can Chilkat validate json?
- EOutOfResources problem sporadically when loading forms: "not enough storage available to process this command"
- How Win11 decides the default File Save As Location with TSaveDialog that has ofNoChangeDir flag (Win32 Delphi App)
- Compilation error with power of ten in old code
- remove duplicates from a named range Excel via Delphi
- Data pointer from LockResource() is not the expected VS_VERSION_INFO structure
- Chilkat and Delphi 7 - post pdf file to a smartcard authentication site
- How to read a packed record written to a TDataSet.Field (ftBytes)
- EIntOverflow in Delphi 7
Related Questions in DCOM
- Creating DCOM Client in .NET 6 with C# for 3rdParty OPC DCOM server
- DCOM Exception in Event Viewer due to IIS related activities in remote machine
- RPC/DCOM Implementation
- The DCOM configuration for 'Run application in this computer' is automatically flagged
- How to allow the 32b OPC DA server to be connected from the 64b client over DCOM?
- Dcom Config Excel "This user" works only for one day
- Is it possible to prevent IIS initialising DCOM security settings or to ensure that IIS does the DCOM security settings in the way we want?
- Utgard - Access is denied, please check whether the [domain-username-password] are correct
- Windows 2019 WMI RPC communication ISystemActivator-RemoteCreateInstace response not reaching source
- Exporting COM+ Component via command line?
- why outlook has access denied with dcomcnfg identity setting to specific user
- 00000005: Unknown error (00000005) when trying to connect to OPC Server using Utgard
- Extend TLocalConnection to support interface implemented by server RemoteDataModule
- Connection with WEB API deployied in IIS
- Windows logs DCOM error (ID 10028) even though remote connection to IIS works fine in code
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
I have written several COM-hosting services using BCB6, and they all work fine in all Windows versions from Win9x onwards, so I have had to deal with this same issue many times.
Simply don't call
Application.Initialize()at process startup on Win2003+, wait until theTService'sOnStartorOnExecuteevent to call it. That way, the service API is running before any COM objects are initialized.The trick is to delay the call to
Application.Initialize()ONLY on Win2003+ and ONLY when the service is actually running. DO NOT delay the call if either:Under those conditions, call
Application.Initialize()normally at process startup.So, you will need to check the OS version and the command line parameters to know when to call
Application.Initialize()correctly.