Help and Support

Access Violation in Cmd.exe in Long Batch Files Using "FOR /F"

Article ID:250998
Last Review:February 28, 2007
Revision:2.4
This article was previously published under Q250998
On This Page

SYMPTOMS

When you are running complex batch files for a long time (to run routine jobs, monitor services, and so on), and the batch files contain the for /f command to process files line-by-line and run commands using the line contents as parameters, you may receive "access violation" and "access denied" error messages in Cmd.exe

Back to the top

CAUSE

When you run the batch files for a long time, the reuse of memory areas by the program is more likely. In this case, the memory is not "nulled out" by the operating system. The algorithm used by Cmd.exe to extract tokens used as parameters for the command in the for /f command is vulnerable to reused memory.

Back to the top

RESOLUTION

Windows 2000

To resolve this problem, obtain the latest service pack for Windows 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
260910 (http://support.microsoft.com/kb/260910/EN-US/) How to Obtain the Latest Windows 2000 Service Pack

Back to the top

Windows NT 4.0

A supported fix is now available from Microsoft, but it is only intended to correct the problem that is described in this article. Apply it only to computers that are experiencing this specific problem.

To resolve this problem, contact Microsoft Product Support Services to obtain the fix. For a complete list of Microsoft Product Support Services phone numbers and information about support costs, visit the following Microsoft Web site:
http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS (http://support.microsoft.com/default.aspx?scid=fh;en-us;cntactms)
NOTE: In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will resolve your problem. The usual support costs will apply to additional support questions and issues that do not qualify for the specific update in question.

The English version of this fix should have the following file attributes or later:
   Date       Time     Size      File name   Platform
   --------------------------------------------------
   01/25/00   08:51a   208,144   Cmd.exe     x86
   01/25/00   08:50a   357,648   Cmd.exe     Alpha
				

Back to the top

WORKAROUND

This problem is aggregated by the changes in Heap Manager introduced in Windows NT 4.0 Service Pack 4. You should be able to avoid the problem by using the workaround described in the following Microsoft Knowledge Base article:
195009 (http://support.microsoft.com/kb/195009/EN-US/) Application Access Violation or Hang After Applying SP4

Back to the top

STATUS

Windows 2000

Microsoft has confirmed that this is a problem in Windows 2000. This problem was first corrected in Windows 2000 Service Pack 1.

Back to the top

Windows NT 4.0

Microsoft has confirmed that this is a problem in Windows NT 4.0.

Back to the top


APPLIES TO
Microsoft Windows 2000 Server
Microsoft Windows 2000 Advanced Server
Microsoft Windows 2000 Professional Edition
Microsoft Windows NT Workstation 4.0 Developer Edition
Microsoft Windows NT Server 4.0 Enterprise Edition
Microsoft Windows NT Server 4.0 Standard Edition

Back to the top

Keywords: 
kbhotfixserver kbqfe kbbug kbfix KB250998

Back to the top

Article Translations

 

Other Support Options

  • Contact Microsoft
    Phone Numbers, Support Options and Pricing, Online Help, and more.
  • Customer Service
    For non-technical assistance with product purchases, subscriptions, online services, events, training courses, corporate sales, piracy issues, and more.
  • Newsgroups
    Pose a question to other users. Discussion groups and Forums about specific Microsoft products, technologies, and services.