windows下文件覆盖的问题! 我想覆盖某些正被使用的文件(比如gina.dll),但windows提示该文件在使用不能覆盖。但我注意到有些安装程序可以在重启动后进行覆盖!该功能如何实现,是不是windows有某些设置,谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不是强制结束某些进程!因为gina.dll在系统退出不能被unload的 好象是通过Windows 脚本宿主在重启时运行脚本(一个开机自动运行的特殊脚本,名字忘了)进行文件(.wsh或.wsf)覆盖的,也可以在autoexec.bat中做,不过麻烦些 MoveFileEx,你仔细看这个函数的说明。 HKEY_LOCAL_MACHINE ->Software->Windows->CurrentVersion ->RunOnce重起之前,看看这个地方,你就会明白了 你可以用Wininit.ini文件来实现在Windows中,一个可执行文件如果正在运行或某个文件(如*.dll,*.vxd,*.sys等)正在被打开使用时,则不能被改写或删除。例如,你不可能在资源管理器中删除Windowsexplorer.exe,而在Windows的GDI界面下,有一些文件一直处于这种状态下,除explorer.exe外,还有显示驱动程序文件,文件子系统文件等,如果我们要对这些文件进行升级,改动,就必须在Windows保护模式核心启动前进行,于是Windows就提供了基于Wininit.ini文件的一个机制来完成这个任务,这个机制是,要删除或改写这类文件的应用程序按一定的格式把命令写入Wininit.ini。Windows在重启时,将在Windows目录下搜索Wininit.ini文件,如果找到,就遵照该文件指令删除、改名、更新文件,完成任务后,将删除Wininit.ini文件本身,继续启动过程。所以Wininit.ini文件中的指令只会被执行一次,列目录时也通常没有它的踪影。 Wininit.ini文件的格式简述如下: Windows 95 Resource Kit提到Wininit.ini文件有3个可能的段,但只叙述了rename段的用法,虽然名为rename,却可实现删除、改名、更新文件的功能,其格式如下所示。 [rename] …… filename1=filename2 …… filename1=filename2相当于依次执行copy filename2 filename1及del filename2这两个DOS命令。 启动时,Windows将用filename2覆盖filename1,再删除filename2,这就实现了用filename2与更新filename1的目的,如果filename1不存在,实际结果是将filename2改名为filename1;如果要删除文件,可令filename1为nul,例如, [rename] …… nul=filename2 …… 将删除filename2。 以上文件名都必须包含完整路径。注意,由于Wininit.ini文件的处理是在Windows文件系统调入前,所以不支持长文件名。 Wininit.ini的应用很多,除了经常在软硬件的安装程序中用到外,还有软硬件的卸载程序中用到,比如:假设你要为自己的软件编写一个卸载程序,这个卸载程序本身是不可能被自己删除的,因为它试图删除自身时,自身却正在运行。为了清除卸载程序本身,你就得借助于Wininit.ini文件。顺便提一句,在安装Windows的最后阶段,就是利用Wininit.ini文件来清除和更名被安装程序SETUP自身使用的文件。 参考msdn movefileex说明,9x/nt(2k)实现不同的 在打开串口失败 请大家推荐几本书,关于OpenGL,汇编。。 绘图后的虚框怎么取消 大家帮帮我,我在线等着 为什么打印PDF会占用如此多的资源? 水木清华的bbs怎么注册? 求 X 的 n 次方根用什么函数? 请问如何拷贝一个CBitmap对象? VC++6.0基本图元绘制程序 在CListView如何用上自定义CListCtrl的派生类MyClistCtrl? 请问我如何做一个只包括图标,字符串的dll文件,并且在程序我如何使用这个dll中的资源,有例程最好,谢谢,分不够再加 Stemp Error: variable needs stack frame这个错误是什么意思
->Software->Windows->CurrentVersion
->RunOnce重起之前,看看这个地方,你就会明白了