0

I am a solo developer at a small company. Recently, we undertook a complete re-write of all of our U.I.'s for configuring our windows service which is our core product. I'd been developing primarily for windows 8,8.1, and 10. We had seen no issues and the U.I. looks great. When deploying any of the applications to a windows 7 X64 with identical hardware as the other boxes we've used to test, we are seeing a near 30 second startup time when opening any application written in WPF dot net 4.5, regardless of complexity or lack there of (literally the same problem exists when showing a WPF form with nothing on it, just a blank form). This is extremely disheartening, as this makes them un-usable because one of these apps is a custom credential provider U.I. which is unreasonable to ask a user to wait that duration for the U.I. to be shown so they can log in.The other configuration utilities have this slow load time when running in user space so i do not believe it has to do with being launched from the credential provider COM object we've written. Can anyone shed some light on this issue please? I really don't want to go back to win forms because we really like the new look and feel that WPF provides. Is there some patch, update, or trick we can use to get a machine with plenty of horsepower to behave like its 8&10 counterparts?

All machines are identical i7 3.47 Ghz dual core with 8 gig of ram; which should be PLENTY sufficient.

UPDATE: Installing .net 4.7.2 has drastically sped up the launching from about 30 seconds to about 6 seconds. Still not acceptable, but on the right track i guess.

Thanks in advance.

Scott Jasin
  • 117
  • 6
  • There's some good stuff here to start with. https://learn.microsoft.com/en-us/dotnet/framework/wpf/advanced/application-startup-time – Iain Holder Aug 21 '18 at 13:35
  • Thank you for your reply, but it has nothing to do with optimization. Like i said, a blank form from a newly created project exhibits the same behavior. I will investigate NGen and see what else i can do. This is very unfortunate... Thanks again for the quick reply – Scott Jasin Aug 21 '18 at 13:46
  • 1
    @ScottJasin Did you try to benchmark your performance? You can use either Performance Profiler in Visual Studio or PerfView. Try to do some benchmarking, that 'll help you to narrow down problem area. – Dipen Shah Aug 21 '18 at 14:18
  • Here: https://stackoverflow.com/questions/868841/what-makes-wpf-application-startup-slow you can see at the bottom a small answer talking about some issue with an nvidia driver, just in case since it could still explain the issue with an empty app – Mikitori Aug 21 '18 at 14:23
  • 1
    Is your blank form an all new app? Because it may be linked to some dll you're loading or some DB linked to your project that is not reachable or things like that... – Mikitori Aug 21 '18 at 14:24
  • The blank form is literally a newly created project with nothing in it as a test. It's something to do with WPF on windows 7. .net 4.7.2 has cut the time from 30 seconds to about 6-7 seconds, but im exploring other options to make it faster. Will investigate the nvida driver issue. Thanks for that one :) **Update:** Just tried on an AMD box with the same results – Scott Jasin Aug 21 '18 at 14:32
  • 1
    Delays that long are environmental problems. Start by assuming it is a networking delay, SysInternals' TcpView can provide insight. Reviewing the google hits for ".net disable crl" tends to be useful. Anti-malware is next. – Hans Passant Aug 21 '18 at 16:01
  • https://blogs.msdn.microsoft.com/wpf/2015/01/16/new-ui-performance-analysis-tool-for-wpf-applications/ You might collect some more WPF specific performance data for analysis. If upgrading .NET Framework helps, you might also check what you can find from the release notes. – Lex Li Aug 21 '18 at 16:11
  • I have put my windows 7 box onto the the internet, installed ALL updates, and installed .net 4.7.2 and it seems to have fixed the issue. Thanks for the suggestions. – Scott Jasin Aug 23 '18 at 12:24

1 Answers1

0

I have put my windows 7 box onto the the internet, installed ALL updates, and installed .net 4.7.2 and it seems to have fixed the issue. Thanks for the suggestions.

Scott Jasin
  • 117
  • 6