ALTaleX531 / TranslucentFlyouts

Translucent effect for most of the win32 flyouts

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Animation feature causes an internal error in uiautomationcore.dll

Satanarious opened this issue · comments

Explorer crashes regardless of whether it is being shown or not, i.e. The explore might be in use by the user or it might not even be open. Using the context menu somehow crashes it.

OS: Win10 v19045.4123
Dump Files:
Explorer.EXE-minidump-2024-03-13-17-02-50.dmp
explorer.exe-minidump-2024-03-13-17-06-16.dmp

image
This seems like a tricky stuff because the exception is not thrown by TF but by UIAutomationCore.dll. As far as I know UIAutomationCore is only called if something like a narrator is turned on or something like that, which I think will take a while to look into.

Also, I use ExplorerBlurMica and TaskbarX if that matters somehow.

So can you run the test again with TaskbarX stopped?

I cannot seem to reproduce the error now. Just right-clicking a few times and hovering over items in the menu would crash the explorer. I stopped TaskbarX and restarted it. But now it seems fine somehow.

I believe this is an internal issue with UIAutomationCore.dll as the issue has been mentioned by many people. When it tries to read any UI element, if a window is created at that point, then there is a high probability that it will crash. This is because with EnableFluentAnimation enabled TF needs to create an additional window to display the animation, which is exactly the situation described above. And TaskbarX indirectly calls the function in UIAutomationCore.dll through MSAA. The solution for now is to disable the animation, so that basically there will be no crash.

Sometimes explorer.exe doesn't even create a minidump and just crashes when I use the context menu

I got you few dump files, if it helps. You already know the uiautomationcore.dll error, but there is an oleacc.dll error now. I got the uiautomationcore.dll error at first and kept getting the oleacc.dll error multiple times after that.

oleacc.dll_causing_error.dmp
uiautomationcore.dll_causing_error.dmp

TF v3.1.0

They are actually the same error, as they all show uiautomationcore.dll near the call stack, except that the oleacc.dll error comes from uiautomationcore.dll passing it a null pointer. These dump files are the same error described in the dump file you uploaded earlier. Do you get this problem even if you disable EnableFluentAnimation? I'm curious if you also get this problem if you add the Menu to the DisabledList, I suspect it has something to do with global hook.

Disabling EnableFluentAnimation does work. What Menu are you talking about?
Enabling EnableFluentAnimation and still using TaskbarX while it has been added to the disabledList and restarting doesn't solve the problem.

Edit: I'm also using Rainmeter, if that matters.
Edit: I added Rainmeter to disabledList, still explorer crashing.

Oh, I thought explorer was still crashing even though you had EnableFluentAnimation disabled, never mind. As I explained before, the animation feature causes an internal error in uiautomationcore.dll, which happens on both Windows 10 and 11, and if any of the programs use the functionality of uiautomationcore.dll, that will crash explorer. If you are still using TaskbarX, then it will crash explorer unless the animation feature is disabled. By the way, DisabledList only works for programs that use classic context menus, tooltips etc.

I will try to fix this issue, but this is more like something Microsoft should do.

Good news, I have managed to find a way to mitigate this issue, please wait for the next update.

Fixed.