This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Fatal error L213

Information in this support solution applies to:

C51 Version 6.00

I receive the following error when I link a very simple project in the EVAL version:

FATAL ERROR L213:I/O ERROR ON WORK FILE:
EXCEPTION 0029H: ACCESS TO FILE DENIED

I've checked all the Environment Setup settings (TOOLS.INI or BIN/INC/LIB Folder) and everything seems OK.

The autoexec.bat file settings:

SET TEMP=C:\WINDOWS\TEMP
SET TMP=C:\WINDOWS\TEMP

Why am I receiving this error message?

Parents
  • The problem is that keil uses the enviormental variables defined by windows, but in windows xp, there are some local variables defined for the local user, wich are diferent from the main variables.
    Anyway what you have to do (if you have windows xp) is go to:

    CONTROLPANEL>SYSTEM>ADVANCEDOPTIONS>

    Once there, go to the envioremental variables button (at the end of the tab, the last button) and set the TMP and TEMP variables to a simple directory like c:\temp or c:\windows\temp, cause they usually point to a directory a little complex that may have something to do with the Documents and Settings Dir,so it may have some access permission rules....

    ok, that's all.
    hope it works for you guys.

Reply
  • The problem is that keil uses the enviormental variables defined by windows, but in windows xp, there are some local variables defined for the local user, wich are diferent from the main variables.
    Anyway what you have to do (if you have windows xp) is go to:

    CONTROLPANEL>SYSTEM>ADVANCEDOPTIONS>

    Once there, go to the envioremental variables button (at the end of the tab, the last button) and set the TMP and TEMP variables to a simple directory like c:\temp or c:\windows\temp, cause they usually point to a directory a little complex that may have something to do with the Documents and Settings Dir,so it may have some access permission rules....

    ok, that's all.
    hope it works for you guys.

Children
  • "CONTROLPANEL>SYSTEM>ADVANCEDOPTIONS>"

    Also available by right-clicking 'My Computer' on the 'Advanced' tab in 'Properties'

  • Once there, go to the envioremental variables button (at the end of the tab, the last button) and set the TMP and TEMP variables to a simple directory like c:\temp or c:\windows\temp, cause they usually point to a directory a little complex that may have something to do with the Documents and Settings Dir,so it may have some access permission rules....

    Actually, that tip is more likely to cause this problem in the first place than to resolve it. The default %TEMP% on 2000 and XP is, indeed, in the "Documents and Settings" tree. But that's the right thing to do, because that's the only place every user is guaranteed to have write access to --- it's his private home directory. This may well not be the case for c:\windows\temp if you're on an NTFS file system, and even less likely for c:\temp. A fresh XP install, e.g., will not have a c:\temp in the first place, and if your admin creates it, it'll likely be off-limits for ordinary users.

    The only actual drawback with the system default for %TEMP%, if any, would be that it's in a path with whitespace in its name. Some tools can't deal with that, and fail miserably. But from what I see, Keil doesn't seem to have that problem. Not in its current versions, anyway.

  • "But from what I see, Keil doesn't seem to have that problem. Not in its current versions, anyway."

    There are some inconsistencies in the way Keil passess filenames to external tools - which can result in problems with spaces. :-(