If you experience a GPF in devshl.dll when starting VC++, try the following (especially if the last time VC++ ran, you installed an addin or customized toolbars or menus).
- Start regedit
- Open
HKCU\Software\Microsoft\DevStudio\6.0
(or 5.0)
- Select the Layout key
- Press F2 and rename it Layout.sav
- Try opening VC++ again
- If this doesn't allow VC++ to startup, reverse the key name change. Consider swapping in the mfc*.dlls from your VC CDs.
- If this does allow VC++ to start, go to the next section (Fixing the Layout Key)
Fixing the Layout key
Warning: you will lose some of your IDE customizations (window placement, toolbars, etc)
- Close VC++
- In regedit, delete the new Layout key
- Rename Layout.sav to Layout
- Open the Layout key, find all the values whose names start with Layout (ie
HKCU\Software\Microsoft\DevStudio\6.0\Layout
: value Layout0) and delete them. If you can't find any values named Layout? using regedit, then try using regedt32 - the UI isn't as nice, but it's not as buggy as regedit.
출처 : http://www.codeproject.com/KB/tips/devshl_fix.aspx FileTool.exe Replaces the Open and Add-to-Project Features in Visual C++
SUMMARY
Launching the Open File dialog box in Visual C++ using the keyboard shortcut key or from the File menu results in the following error:
Access Violation (0xC0000005) in DEVSHL.DLL at 0x5003eaed.DevShl.Dll referenced memory at 0x0000000. The memory could not be read.
The same error occurs when you select Add to Project from the Project menu and click Files.
FileTool.exe is a sample that replaces the Open and Add to Project menu items in Visual C++ using the Developer Studio Object Model.
The Developer Studio Object Model contains methods that both open files and add files to a project. The BuildProject object contains an AddFile method that adds files to a project. The Documents object contains an Open method that can open files into Developer Studio. These can be used in either a macro or Add-In.
The following file is available for download from the Microsoft Download Center:
FileTool.exe (http://download.microsoft.com/download/vc60ent/s1/6.0/w9xnt4/en-us/filetool.exe)
The self-extracting FileTool.exe file contains the following files:
For additional information about how to download Microsoft Support files, click the following article number to view the article in the Microsoft Knowledge Base:
119591 (http://support.microsoft.com/kb/119591/EN-US/) How to Obtain Microsoft Support Files from Online Services Microsoft scanned this file for viruses. Microsoft used the most current virus-detection software that was available on the date that the file was posted. The file is stored on security-enhanced servers that help to prevent any unauthorized changes to the file.
Installing the Add-In
1. |
Run FileTool.Exe to extract the Visual C++ 6.0 project. |
2. |
Build the project in Visual C++ in Release or Debug configuration. |
3. |
In Visual C++, click Customize from the Tools menu. |
4. |
In the Customize dialog box, click the Add-Ins and Macro Files tab. |
5. |
Click the Browse button and locate the FileTool.dll file that was built in step 2. |
6. |
Click OK to save the settings. |
A toolbar for the two commands appears.
NOTE: Only the Open command works in Visual C++ 5.0. The AddFile method was added with the Visual Studio 6.0 release.
Removing Shortcut Keys
After you load the add-in, you can remove the shortcut keys for the menu items that stop Visual C++ and assign them to the two add-in commands by following the steps below:
1. |
From the Visual C++ Tools menu, click Customize. |
2. |
In the Customize dialog box, click the Keyboard tab. |
3. |
From the Category box select File. |
4. |
In the Commands window, select FileOpen. |
5. |
In the Current keys window, select the CTRL+O entry and then click Remove. |
6. |
From the Category box select Project. |
7. |
In the Commands window, select InsertFilesIntoProject. If there is a shortcut associated with it, follow step 5 to remove it. By default there is no shortcut key for this item. |
8. |
From the Category box select Add-Ins. |
9. |
The two add-in commands AddFileToProject and OpenFile appear in the Commands window. |
10. |
Select OpenFile then put the cursor in the Press New Shortcut Key box, press the shortcut key or key combination that you want, and click Assign. |
11. |
Repeat the above step for the other command. The assigned shortcut keys for the two commands appear in the Current Keys window. |
You may also wish to remove the menu commands and insert the AddIn commands in their place. To insert the new AddIn commands in the MenuBar, use the following steps:
1. |
From the Visual C++ Tools menu, click Customize. |
2. |
Click the File menu and then drag the Open command off of the File popup and release it. |
3. |
Click the Project menu, click Add To Project and then drag the Files command off of the popup and release it. |
4. |
In the Customize dialog box, select the Commands tab. |
5. |
Select Add-ins from the Category list box. |
6. |
Drag the OpenFile command to the File menu and drop it in the space vacated by the Open command. |
7. |
Drag the AddFileToProject command to the Add To Project item on the Project menu and drop it in the space vacated by the Files command. |
When the menus have been modified as above, it is not necessary to have the AddIn toolbar visible.
저의 경우 아예 devshl.dll 를 패치해버렸습니다~ 1,2번도 안되고, 3번은... 툴바가 솔직히 너무 부실해서 -_-; (Open 창에 Auto,Text,Binary,Resource 선택 콤보상자가 없어서 쓰기가 싫더군요...) ...
답글삭제괜찮으시면 아래 주소에 한번 들어가보세요...^^
http://vbdream.tistory.com/entry/Bug-Fix-VC-60-Devshldll-at-0x5003eaed-0xC0000005-Access-Denied-%EC%98%A4%EB%A5%98-%ED%95%B4%EA%B2%B0%EB%B2%95-NULL-pointer-reference
정말 감사합니다^^ 이 문제 때문에 골치 아팠거든요.. 마지막 링크된 파일 덮어 씌우니까 말끔하게 해결 되네요^ㅡ^/~
답글삭제컴퓨터 포멧하고 프로그램 삭제하고... 고생고생 하다가... 발견했네요.
답글삭제감사합니다. 덕분에 이젠 프로그램이 돌아가네요. 정말... (^^)(__)(^^)
가끔 발생하는 VC의 이런 문제들은 정말... ㅡㅡ+
정말 감사합니다!! ㅜㅜ 이 문제 때문에 골치 많았는데 devshl.dll파일 붙여넣으니까 되는군요!
답글삭제정말정말감사합니다~!
별짓 다하다가 이글을 발견했습니다... 정말 좋은 정보 감사합니다.... 4번으로 해결했습니다.
답글삭제정말 감사합니다...꽤 오래 고생했는데..
답글삭제까먹을 거 같아 제 블로그에 퍼감니다..