rubberduck-vba / Rubberduck

Every programmer needs a rubberduck. COM add-in for the VBA & VB6 IDE (VBE).
https://rubberduckvba.com
GNU General Public License v3.0
1.91k stars 299 forks source link

VB6 IDE closes on first refresh of Rubberduck #6209

Open Jimbo99 opened 5 months ago

Jimbo99 commented 5 months ago

Rubberduck version information Rubberduck version 2.5.9.6316 Operating System: Windows 10 Enterprise 2009 x64 (Microsoft Windows NT 6.2.9200.0) Host Product: Visual Basic x86 Host Version: 6.00.9782 Host Executable: VB6.EXE;

Description After loading a project into VB6 and clicking Refresh, a few seconds later VB6 closes without any warning. This happens every time for the VB6 project I am working on.

To Reproduce

  1. Start VB6
  2. Load project into VB6
  3. Click the button labelled"pending" button to refresh Rubberduck
  4. Do nothing else except wait
  5. A few seconds later, With the Rubberduck button showing "Resolving references...", VB6 closes without any prompt

Log RubberduckLog.txt

In the Windows Application Log there is this Application Error:

<Event
    xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
- 
    <System>
        <Provider Name="Application Error" />
        <EventID Qualifiers="0">1000</EventID>
        <Version>0</Version>
        <Level>2</Level>
        <Task>100</Task>
        <Opcode>0</Opcode>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2024-04-10T14:04:41.0024388Z" />
        <EventRecordID>64506</EventRecordID>
        <Correlation />
        <Execution ProcessID="0" ThreadID="0" />
        <Channel>Application</Channel>
        <Computer>BeQuiet500DX</Computer>
        <Security />
    </System>
- 
    <EventData>
        <Data>VB6.EXE</Data>
        <Data>6.0.97.82</Data>
        <Data>403acf6c</Data>
        <Data>clr.dll</Data>
        <Data>4.8.9181.0</Data>
        <Data>64b8594f</Data>
        <Data>c00000fd</Data>
        <Data>0002b9ec</Data>
        <Data>8204</Data>
        <Data>01da8b4fee2477b0</Data>
        <Data>C:\Program Files (x86)\Microsoft Visual Studio\VB98\VB6.EXE</Data>
        <Data>C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll</Data>
        <Data>0436e237-aa54-4745-a88a-a9d9d71af4fa</Data>
        <Data />
        <Data />
    </EventData>
</Event>

That is followed 6 seconds later by this Information entry:

<Event
    xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
- 
    <System>
        <Provider Name="Windows Error Reporting" />
        <EventID Qualifiers="0">1001</EventID>
        <Version>0</Version>
        <Level>4</Level>
        <Task>0</Task>
        <Opcode>0</Opcode>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2024-04-10T14:04:47.9830786Z" />
        <EventRecordID>64507</EventRecordID>
        <Correlation />
        <Execution ProcessID="0" ThreadID="0" />
        <Channel>Application</Channel>
        <Computer>BeQuiet500DX</Computer>
        <Security />
    </System>
- 
    <EventData>
        <Data>1291619174030855276</Data>
        <Data>1</Data>
        <Data>APPCRASH</Data>
        <Data>Not available</Data>
        <Data>0</Data>
        <Data>VB6.EXE</Data>
        <Data>6.0.97.82</Data>
        <Data>403acf6c</Data>
        <Data>clr.dll</Data>
        <Data>4.8.9181.0</Data>
        <Data>64b8594f</Data>
        <Data>c00000fd</Data>
        <Data>0002b9ec</Data>
        <Data />
        <Data />
        <Data>\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERF82C.tmp.dmp \\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERF20.tmp.WERInternalMetadata.xml \\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERF30.tmp.xml \\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERF2E.tmp.csv \\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERF4F.tmp.txt</Data>
        <Data>\\?\C:\ProgramData\Microsoft\Windows\WER\ReportArchive\AppCrash_VB6.EXE_4add73c738e350683eb8cb01792d8522edb371_8f577514_d4c82195-fe8c-4e8a-b16e-8f8c8b43dbef</Data>
        <Data />
        <Data>0</Data>
        <Data>0436e237-aa54-4745-a88a-a9d9d71af4fa</Data>
        <Data>268435456</Data>
        <Data>4095eab2fef4be7761ecc0cba5314c6c</Data>
        <Data>0</Data>
    </EventData>
</Event>

Expected behavior Refresh should complete and VB6 should remain open afterwards.

Additional context The VB6 project I am working on is quite large (but not huge). This happens every time and so I am currently unable to use Rubberduck with it. Other smaller projects work ok for me with Rubberduck.

surfer-silver commented 4 months ago

same here when it comes to resolving references ... crashes ide its because of 3rd party dlls and ocxs i guess ... until this resolve we cant use rubberduck in vb6 enviornment

surfer-silver commented 4 months ago

found that cause in my case. if codejock controls used then it crashes vb6 ide .... strange other than its running smooth on complex projects smoothly. most probably this could be the main reason of crashing using such OCX which is not compatible with rubberduck-vba

Jimbo99 commented 4 months ago

My project that crashes VB6 IDE with RubberDuck also contains CodeJock controls.