Search code examples
python-3.xpyqtpyqt6

How to find "qtblurimage" attribute on PyQt6 dll which is required for neon effect


I am trying to use neon effect using from here but that attribute I.e ?qt_blurImage@@YAXPEAVQPainter@@AEAVQImage@@N_N2H@Z in Qt6Widgets.dll How to know what has been introduced in this place in PyQt6 or it has been removed!!.


Solution

  • Actually the problem lies in PyQt6 they have just changed the name of that attribute slightly. In PyQt5 --

    ?qt_blurImage@@YAXPAVQPainter@@AAVQImage@@N_N2H@Z
    

    But in PyQt6 it has been changed to

    ?qt_blurImage@@YAXPEAVQPainter@@AEAVQImage@@N_N2H@Z
    

    Now we can use this in here

    To detect in attribute name in future version, objdump could be a choice but for my case dumpbin helped me.

    Here is the command in Powershell

    PS C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.37.32822\bin\Hostx64\x64> .\dumpbin.exe /EXPORTS "C:\Users\Prem\Desktop\Qt6Widgets.dll" |findstr ?qt_blurImage
    

    Output will be like

    4873 1308 000E4A20 ?qt_blurImage@@YAXAEAVQImage@@N_NH@Z
    4874 1309 000E4AA0 ?qt_blurImage@@YAXPEAVQPainter@@AEAVQImage@@N_N2H@Z