AirDC++ Crash: Exceptioninfo.log And File List Issues
Encountering crashes with AirDC++ can be frustrating, especially when you're not sure what's causing them. This article delves into a specific AirDC++ crash scenario, focusing on the "exceptioninfo.log" error and potential file list issues. If you've been experiencing similar problems, read on to understand the possible causes and troubleshooting steps.
The AirDC++ Crash Scenario
Guys, imagine this: You're using AirDC++, and suddenly, it crashes. A window pops up, asking if you want to open "exceptioninfo.log". Whether you click "Yes" or "No," the program just closes. Sounds familiar? This is the exact problem we're going to dissect.
Prerequisites
Before diving in, let's make sure we've covered the basics:
- You've searched for similar issues: You've already checked the issue tracker to avoid duplicates.
- You're using the latest version: You're running the most up-to-date AirDC++.
- It's not a Web UI issue: The problem isn't related to the Web UI/API/extensions.
Describing the Issue
The core problem is that AirDC++ crashes, displaying a prompt to open the exceptioninfo.log
file. Clicking either option (Yes or No) results in the program closing. There's no expected behavior occurring; instead, the program terminates unexpectedly.
Steps to Reproduce (If Applicable)
Unfortunately, the steps to reproduce aren't immediately clear from the initial report. These crashes can sometimes be sporadic and difficult to pinpoint.
Analyzing the Crash Log
The crash log provides valuable clues about what might be going wrong. Let's break down the key parts:
Code: c0000005 ( Access violation )
Version: AirDC++ 4.30 x64
Build: 4980
Major: 6
Minor: 2
Build: 9200
SP: 0
Type: 1
Time: 2025-10-16 12:14:56
TTH: QUKP42QGJCT6XVMP7AQIADLS6EDTIFMTS2T4OKI
C:\Projects\airdcpp-windows\windows\windows\frames\filelist\DirectoryListingFrm.cpp(1165): wingui::DirectoryListingFrame::insertItems
C:\Projects\airdcpp-windows\windows\windows\frames\filelist\DirectoryListingFrm.cpp(1150): wingui::DirectoryListingFrame::filterList
C:\Projects\airdcpp-windows\windows\windows\frames\filelist\DirectoryListingFrm.h(123): wingui::DirectoryListingFrame::ProcessWindowMessage
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.44.35207\ATLMFC\include\atlwin.h(3578): ATL::CWindowImplBaseT<WTL::CMDIWindow=0xC8BD2A38,ATL::CWinTraits<1456406528=0x00007FFD,64> >::WindowProc
atlthunk!0x7FFDC8BD2A38: ?
USER32!0x7FFE0847EF5C: CallWindowProcW
USER32!0x7FFE0847E684: DispatchMessageW
C:\Projects\airdcpp-windows\compiled\x64-release\vcpkg_installed\x64-windows-static\include\atlapp.h(666): WTL::CMessageLoop::Run
C:\Projects\airdcpp-windows\windows\windows\WinClient.cpp(331): wingui::WinClient::run
C:\Projects\airdcpp-windows\windows\windows\main.cpp(348): wWinMain
D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl(288): __scrt_common_main_seh
KERNEL32!0x7FFE08FD7374: BaseThreadInitThunk
ntdll!0x7FFE09B3CC91: RtlUserThreadStart
- Code: c0000005 (Access violation): This is a critical error indicating that the program tried to access memory it didn't have permission to. This is a big deal.
- DirectoryListingFrm.cpp: The crash seems to be occurring within the file list handling code, specifically related to inserting and filtering items.
The access violation within DirectoryListingFrm.cpp
suggests a problem with how AirDC++ is managing the file list data. This could be due to a bug in the code, corrupted data, or a conflict with another program.
System Log and File List Error
The system log provides another potential clue:
Failed to load the file list RedactedUserName: The base directory specified in the file list (**/**Redacted/yyyy.mm/ddd ddd dd/) doesn't match with the expected base (**//**Redacted/yyyy.mm/ddd ddd dd/)
This message indicates a discrepancy between the expected and actual base directories in a file list. The difference highlighted is the presence of a single /
versus a double //
at the beginning of the path.
Is this related to the crash? It's highly possible. A mismatch in file paths, especially when dealing with network shares or virtual directories, can lead to access violations and crashes.
AirDC++ Version and Operating System
- AirDC++ version: 4.30 x64
- Operating System: Windows 10 22H2 x64
This information helps narrow down the potential causes, as the issue might be specific to this version of AirDC++ or a compatibility problem with Windows 10 22H2.
Troubleshooting Steps
Okay, folks, let's get to the troubleshooting. Here's a breakdown of steps you can take to try and resolve this issue:
-
Verify File List Paths:
- Check your shares: Double-check the paths to your shared directories in AirDC++. Ensure they are correctly entered and accessible. Pay close attention to the beginning of the paths. Are they using single or double slashes? Consistency is key.
- Test network connectivity: If your shares are on a network drive, make sure you can access them from Windows Explorer without any issues. A temporary network problem could be causing the file list error.
-
Clear AirDC++ Cache:
- Locate the cache directory: Find the AirDC++ cache directory. The location varies depending on your configuration, but it's often in your user profile's AppData folder.
- Delete cached files: Clear out the contents of the cache directory. This can help resolve issues caused by corrupted cached data.
-
Rebuild File Lists:
- Remove and re-add shares: In AirDC++, remove your existing shares and then re-add them. This forces AirDC++ to rebuild the file lists from scratch.
-
Run AirDC++ as Administrator:
- Elevated privileges: Running AirDC++ with administrator privileges can sometimes resolve access-related issues. Right-click the AirDC++ icon and select "Run as administrator."
-
Check for Conflicting Software:
- Antivirus and firewalls: Temporarily disable your antivirus software and firewall to see if they are interfering with AirDC++'s access to files or network shares. If this resolves the issue, you'll need to configure your antivirus/firewall to allow AirDC++.
- Other applications: Consider whether any other applications might be conflicting with AirDC++, especially those that access files or network resources.
-
Update Graphics Drivers:
- Outdated drivers: Although the crash seems file-related, outdated graphics drivers can sometimes cause unexpected issues. Update your graphics drivers to the latest version.
-
Reinstall AirDC++:
- Clean installation: As a last resort, try uninstalling AirDC++ completely and then reinstalling it. Make sure to delete any residual files or folders from the previous installation.
-
Check Disk for Errors
- Run Check Disk: Open Command Prompt as administrator and type
chkdsk /f /r
and press Enter. This command will scan the disk for errors and attempt to repair them. You may need to restart your computer for the scan to begin.
- Run Check Disk: Open Command Prompt as administrator and type
Analyzing the Exceptioninfo.log
If the above steps don't resolve the issue, examining the exceptioninfo.log
file itself can provide more specific details about the crash. The log will contain technical information about the state of the program at the time of the crash, including the call stack, register values, and loaded modules.
Guys, if you're not comfortable deciphering this kind of technical data, you can share the contents of the exceptioninfo.log
file with the AirDC++ developers or community forums. They may be able to identify the root cause of the crash based on the log information.
Reporting the Issue
If you've tried all the troubleshooting steps and are still experiencing crashes, it's essential to report the issue to the AirDC++ developers. Provide as much information as possible, including:
- AirDC++ version and architecture
- Operating system name, version, and architecture
- A detailed description of the issue
- Steps to reproduce the behavior (if applicable)
- The contents of the
exceptioninfo.log
file - Any relevant screenshots or videos
By providing comprehensive information, you can help the developers identify and fix the bug, ultimately improving the stability of AirDC++ for everyone.
Conclusion
Crashing issues like the exceptioninfo.log
error in AirDC++ can be caused by a number of factors, often related to file access, network connectivity, or software conflicts. By systematically troubleshooting the potential causes and providing detailed information to the developers, you can increase the chances of resolving the problem and enjoying a stable AirDC++ experience. Good luck, and happy sharing!