Question and Answer Database FAQ2517C.txt How can I delete my executable while it is running? Category :VCL Platform :All Product :C++Builder 3.x Question: How can I delete my executable while it is running? Answer: Under Win32, unless you are running from a removable drive, you cannot delete a running executable. You can have Windows delete the executable the next time Windows is run by adding an entry to the RunOnce key in the Windows registry under: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce You can name the key anything you like, and specify a command line to another executable or to a dos command passed to command.com. Example: void __fastcall TForm1::Button1Click(TObject *Sender) { TRegistry* reg = new TRegistry; reg->RootKey = HKEY_LOCAL_MACHINE; reg->LazyWrite = false; reg->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce", false); reg->WriteString("Delete Me!","command.com /c del FILENAME.EXT"); reg->CloseKey(); reg->Free(); } 7/2/98 10:32:32 AM
Last Modified: 01-SEP-99