I must state that database loading time usually doesn't depend on its size since we don't parse all the file, just headers and some small linked chains. Also this is done before SplashScreen can theoretically appear. (Well, we are not going to implement DB interface in Splash Screen, are we? :) ) Currently the slowest part of startup is plugin initialization which may take few seconds depending on what installed plugins do in their Load() are and how slow computer is.
Well... You can rename splash screeen to something like "!!!!!!!!!!!!!aaaa_Splash.dll" to ensure that being loaded in alphabetical order it will start first, but personally I dislike this way of resolving such problems :)
Also I thought that showing image during first round of Miranda startup, makes it possible to provide interface for plugins (not service-base of cource) so they can show what's loading at the moment. Must note that this is not implemented yet, and AFAIK no atempts were made.
Last edited by nullbie; 22 May 2007 at 1:05 PM.
I'm not that interested. I just have this plugin installed for one specific splash found in collection. And that's all for me.
But I have general interest in Miranda progress.
It looks like last project which still have good progress. (all other projects in which I have interest, now dead or quickly degrades)
Not showing version number on splash screen. Option is marked in settings.
Code:CPU: Intel(R) Pentium(R) 4 CPU 2.80GHz [x86 Family 15 Model 2 Stepping 9] [2 CPUs] Installed RAM: 2047 MBytes Operating System: Windows Vista (TM) Ultimate [version: 6.0.6000 ] Shell: explorer.exe, Internet Explorer 7.0.6000 Administrator privileges: Yes OS Languages: English/English | Bulgarian/Bulgarian [Bulgarian, Tajik (Cyrillic), Persian, Vietnamese, Armenian, Azeri (Latin), Basque, Upper Sorbian, Macedonian (FYROM), Mongolian (Cyrillic), Tibetan, Welsh, Khmer, Galician, Filipino, Divehi, Dari, Arabic, Catalan, Chinese] Free disk space on Miranda partition: 24946 MBytes Miranda path: C:\Program Files\Miranda IM Miranda IM version: 0.7.0 alpha build #28 Unicode Build time: 20:03:35 on 20 May 2007 Profile size: 9,600.00 KBytes Profile creation date: 06 Dec 2006 at 08:57:29 Language pack: Bulgarian (BG)  v. N/A, modified: 09 Aug 2006 at 20:30:54 Nightly: Yes Unicode core: Yes Active Plugins (52): aaaersatz.dll v.0.0.1.0 [19 Oct 2006] - ersatz ¤ advaimg.dll v.0.0.1.0 [20 May 2007] - Miranda Image services ¤ AdvSplashScreen.dll v.0.1.2.0 [17 May 2007] - Splash Screen ¤ attache.dll v.0.2.0.0 [24 Apr 2007] - Attache ¤ avatarhistW.dll v.0.0.2.6 [17 Mar 2007] - Avatar History (Unicode) avh_impW.dll v.0.0.0.4 [04 Mar 2007] - Avatar History Import (Unicode) ¤ avs.dll v.0.0.3.0 [20 May 2007] - Avatar service (Unicode) clientchangenotifyw.dll v.0.1.0.9 [03 Jul 2006] - ClientChangeNotify (Unicode) ¤ clist_modern.dll v.0.7.17.22 [20 May 2007] - Modern Contact List (UNICODE) Console.dll v.0.0.5.1 [17 May 2007] - Console crashrpt.dll v.0.0.0.2 [20 Dec 2005] - Crash Report ¤ cryptopp.dll v.184.108.40.206 [02 Apr 2007] - Crypto++ dbeditorpp.dll v.220.127.116.11 [05 Aug 2006] - Database Editor++ ¤ dbx_mmap.dll v.0.7.1.0 [20 May 2007] - Miranda mmap database driver ¤ Fingerprint.dll v.18.104.22.168 [20 May 2007] - Fingerprint Plus |Unicode aware| ¤ flags.dll v.0.1.1.0 [30 Apr 2007] - Country Flags |Unicode aware| ¤ FlashAvatars.dll v.0.0.1.13 [01 Apr 2007] - Flash avatars service [build #243] |Unicode aware| ¤ folders.dll v.0.1.4.0 [23 Apr 2007] - Custom profile folders ¤ help.dll v.0.2.1.3 [24 Apr 2007] - Help |Unicode aware| ¤ historypp.dll v.22.214.171.124 [09 Mar 2007] - History++ (2in1) ¤ historystats.dll v.0.1.5.1 [26 Mar 2007] - HistoryStats (Unicode) ¤ ICQ.dll v.0.3.10.31 [07 May 2007] - IcqOscarJ S!N Protocol (Unicode) ¤ ieview.dll v.126.96.36.199 [27 Apr 2007] - IEView import.dll v.0.9.7.0 [23 Apr 2007] - Import contacts and messages + keepstatus.dll v.0.0.2.87 [24 Jul 2006] - KeepStatus ¤ langman.dll v.188.8.131.52 [25 Apr 2007] - Language Pack Manager |Unicode aware| ¤ messagenotify.dll v.0.2.0.1 [08 May 2007] - Message Notify |Unicode aware| mirandacomm.dll v.0.3.1.0 [27 Feb 2007] - Miranda Multimedia Communication ¤ msn.dll v.0.7.1.0 [20 May 2007] - MSN Protocol |Unicode aware| mtextcontrolW.dll v.0.0.2.0 [06 Jan 2007] - Miranda Text Control [build #484] mydetails.dll v.0.0.1.4 [18 Oct 2006] - My Details NewAwaySysW.dll v.0.3.7.8 [02 Jul 2006] - New Away System (Unicode) NewStatusNotifyW.dll v.184.108.40.206 [03 May 2007] - NewStatusNotify (Unicode) ¤ nudge.dll v.0.0.1.17 [16 Apr 2007] - Nudge |Unicode aware| OpenFolder.dll v.220.127.116.11 [30 Aug 2006] - Open Miranda Folder ¤ otr.dll v.0.5.2.0 [17 May 2007] - OTR ¤ PopUp.dll v.18.104.22.168 [15 May 2007] - Popup Plus |Unicode aware| ¤ SecureIM.dll v.22.214.171.124 [02 Apr 2007] - SecureIM (2in1) seenplugin.dll v.126.96.36.199 [07 Nov 2006] - Last seen plugin mod (NSNCompat) smileyaddw.dll v.0.1.12.13 [01 Mar 2007] - SmileyAdd Unicode ¤ spellchecker.dll v.0.0.2.5 [25 Apr 2007] - Spell Checker ¤ tabsrmm.dll v.188.8.131.52 [20 May 2007] - tabSRMsgW (unicode) ¤ tipper.dll v.0.4.0.3 [22 May 2007] - Tipper |Unicode aware| TypingNotify.dll v.0.0.1.6 [04 Jul 2004] - Typing Notify ¤ uinfoexW.dll v.0.1.3.3 [30 Apr 2007] - UserinfoEx (Unicode) ¤ updater.dll v.0.5.1.0 [12 Apr 2007] - Updater |Unicode aware| Variables.dll v.0.2.1.73 [16 Sep 2006] - Variables (Unicode) ¤ VersionInfo.dll v.184.108.40.206 [13 May 2007] - Version Information ¤ watrack.dll v.0.0.6.0 [06 May 2007] - Winamp Track |Unicode aware| ¤ WhenWasIt.dll v.0.2.2.3 [13 May 2007] - WhenWasIt birthday reminder (Unicode) XStatusNotifyW.dll v.0.1.1.0 [01 May 2006] - XStatus Notify [ Build #40 Unicode ] ¤ Yahoo.dll v.0.7.0.1 [20 May 2007] - Yahoo Protocol Beta/Nightly
Originally Posted by nullbie
I haven't looked at the code so i don't know for sure if it's possible or not.
When the plugin receives it's PLUGINLINK structure it could replace the CreateServiceFunction function with it's own. Then when a plugin calls that function it passes through SplashScreen which can use the service name string address to find the originating module and display that as the currently loading plugin.
You'd still have to keep the overrided function in place even after Spash Screen finished displaying the splash window though. There are some plugins that save a copy of that structure and would call your function even though you replaced it back in the original PLUGINLINK.