如上,或者在程序中动态建一个批处理文件,然后写入dos命令。 比如 var FileName:string; F:TextFile; begin FileName := 'C:\myfile.bat'; if not FileExists(FileName) then begin AssignFile(F,FileName); Rewrite(F); Writeln(F, 'del '+TempPath+'*.* /q');//写入批命令 .. .. CloseFile(F); end; WinExec(FileName,SW_HIDE);//执行 end;
比如
var
FileName:string;
F:TextFile;
begin
FileName := 'C:\myfile.bat';
if not FileExists(FileName) then
begin
AssignFile(F,FileName);
Rewrite(F);
Writeln(F, 'del '+TempPath+'*.* /q');//写入批命令
..
..
CloseFile(F);
end;
WinExec(FileName,SW_HIDE);//执行
end;
如果是API的调用.如下:
Function NetShareAdd( ServerName : LPWSTR; Level : DWORD;
Buf : Pointer; Var Parm_Err : DWORD ) :
NET_API_STATUS; StdCall; External 'NETAPI32.DLL';
这是格式.当然你要知道你调的API是在哪个dll中,并且要知道它的参数. 可以查msdn
winexec('rundll32.exe shell32.dll, Control_RunDLL access.cpl, 1', 9);