Pascal中如何调用exe文件 java如何调用exe文件?

作者&投稿:茹平 (若有异议请与网页底部的电邮联系)
在program xxx;后面写uses dos;
然后写下面过程:
procedure cmd(command:String);
begin
SwapVectors;
Exec(GetEnv('COMSPEC'), '/C ' + Command);
SwapVectors;
if DosError <> 0 then
WriteLn('Could not execute COMMAND.COM');
WriteLn;
end;
Pascal中如何调用exe文件
运行cmd('文件名');即可
文件删除 (追5分)
cmd('erase 文件名');
或者assign(f,filename);后用erase(f);
获取文件大小 (追5分) 获取修改时间 (追5分)
{************************************************}
{ }
{ Turbo Directory Demo }
{ Copyright (c) 1985,90 by Borland International }
{ }
{************************************************}

program DirDemo;
{ Demonstration program that shows how to use:

o Directory routines from DOS unit
o Procedural types (used by QuickSort)

Usage:

dirdemo [options] [directory mask]

Options:

-W Wide display
-N Sort by file name
-S Sort by file size
-T Sort by file date and time

Directory mask:

Path, Filename, wildcards, etc.

}

{$I-,S-}
{$M 8192,8192,655360}

uses Dos;

const
MaxDirSize = 512;
MonthStr: array[1..12] of string[3] = (
'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');

type
DirPtr = ^DirRec;
DirRec = record
Attr: Byte;
Time: Longint;
Size: Longint;
Name: string[12];
end;
DirList = array[0..MaxDirSize - 1] of DirPtr;
LessFunc = function(X, Y: DirPtr): Boolean;

var
WideDir: Boolean;
Count: Integer;
Less: LessFunc;
Path: PathStr;
Dir: DirList;

function NumStr(N, D: Integer): String;
begin
NumStr[0] := Chr(D);
while D > 0 do
begin
NumStr[D] := Chr(N mod 10 + Ord('0'));
N := N div 10;
Dec(D);
end;
end;

{$F+}

function LessName(X, Y: DirPtr): Boolean;
begin
LessName := X^.Name < Y^.Name;
end;

function LessSize(X, Y: DirPtr): Boolean;
begin
LessSize := X^.Size < Y^.Size;
end;

function LessTime(X, Y: DirPtr): Boolean;
begin
LessTime := X^.Time > Y^.Time;
end;

{$F-}

procedure QuickSort(L, R: Integer);
var
I, J: Integer;
X, Y: DirPtr;
begin
I := L;
J := R;
X := Dir[(L + R) div 2];
repeat
while Less(Dir[I], X) do Inc(I);
while Less(X, Dir[J]) do Dec(J);
if I <= J then
begin
Y := Dir[I];
Dir[I] := Dir[J];
Dir[J] := Y;
Inc(I);
Dec(J);
end;
until I > J;
if L < J then QuickSort(L, J);
if I < R then QuickSort(I, R);
end;

procedure GetCommand;
var
I,J: Integer;
Attr: Word;
S: PathStr;
D: DirStr;
N: NameStr;
E: ExtStr;
F: File;
begin
WideDir := False;
@Less := nil;
Path := '';
for I := 1 to ParamCount do
begin
S := ParamStr(I);
if S[1] = '-' then
for J := 2 to Length(S) do
case UpCase(S[J]) of
'N': Less := LessName;
'S': Less := LessSize;
'T': Less := LessTime;
'W': WideDir := True;
else
WriteLn('Invalid option: ', S[J]);
Halt(1);
end
else
Path := S;
end;
Path := FExpand(Path);
if Path[Length(Path)] <> '\' then
begin
Assign(F, Path);
GetFAttr(F, Attr);
if (DosError = 0) and (Attr and Directory <> 0) then
Path := Path + '\';
end;
FSplit(Path, D, N, E);
if N = '' then N := '*';
if E = '' then E := '.*';
Path := D + N + E;
end;

procedure FindFiles;
var
F: SearchRec;
begin
Count := 0;
FindFirst(Path, ReadOnly + Directory + Archive, F);
while (DosError = 0) and (Count < MaxDirSize) do
begin
GetMem(Dir[Count], Length(F.Name) + 10);
Move(F.Attr, Dir[Count]^, Length(F.Name) + 10);
Inc(Count);
FindNext(F);
end;
end;

procedure SortFiles;
begin
if (Count <> 0) and (@Less <> nil) then
QuickSort(0, Count - 1);
end;

procedure PrintFiles;
var
I, P: Integer;
Total: Longint;
T: DateTime;
N: NameStr;
E: ExtStr;
begin
WriteLn('Directory of ', Path);
if Count = 0 then
begin
WriteLn('No matching files');
Exit;
end;
Total := 0;
for I := 0 to Count-1 do
with Dir[I]^ do
begin
P := Pos('.', Name);
if P > 1 then
begin
N := Copy(Name, 1, P - 1);
E := Copy(Name, P + 1, 3);
end else
begin
N := Name;
E := '';
end;
Write(N, ' ': 9 - Length(N), E, ' ': 4 - Length(E));
if WideDir then
begin
if Attr and Directory <> 0 then
Write(' DIR')
else
Write((Size + 1023) shr 10: 3, 'k');
if I and 3 <> 3 then
Write(' ': 3)
else
WriteLn;
end else
begin
if Attr and Directory <> 0 then
Write('<DIR> ')
else
Write(Size: 8);
UnpackTime(Time, T);
WriteLn(T.Day: 4, '-',
MonthStr[T.Month], '-',
NumStr(T.Year mod 100, 2),
T.Hour: 4, ':',
NumStr(T.Min, 2));
end;
Inc(Total, Size);
end;
if WideDir and (Count and 3 <> 0) then WriteLn;
WriteLn(Count, ' files, ', Total, ' bytes, ',
DiskFree(Ord(Path[1])-64), ' bytes free');
end;

begin
GetCommand;
FindFiles;
SortFiles;
PrintFiles;
end.
启动别的EXE (追20分)
cmd('文件名');

这个要用DOS库,sysutils 库
具体看api
几个相关的过程或函数
DeleteFile
GetFAttr
GetFTime
FileAge
FileGetDate
... 有好多相似功能的 用法不同 具体请看帮助
\doc\units.pdf

在pascal程序中如何打开同一目录中的exe文件?~

前面加上uses dos;
然后假设此exe文件为x.exe
这么写:
exec('x.exe','');

public class transferExe {
public static void main(String[] args) {
openWinExe();
openExe();
}
//用 Java 调用windows系统的exe文件,比如notepad,calc之类
public static void openWinExe() {
Runtime rn = Runtime.getRuntime();
Process p = null;
try {
String command = "notepad";
p = rn.exec(command);
} catch (Exception e) {
System.out.println("Error win exec!");
}
}
//调用其他的可执行文件,例如:自己制作的exe,或是 下载 安装的软件.
public static void openExe() {
Runtime rn = Runtime.getRuntime();
Process p = null;
try {
p = rn.exec("\"D:/QQ2010.exe\"");
} catch (Exception e) {
System.out.println("Error exec!");
}
}
}

krkr.exe怎么提取?
答:用ExtractData提取。用软件crass解包出来。用xp3dumper提取。把xp3文件和krkr.exe放一个文件夹里,然后打开运行krkr.exe文件。电脑文件,也可以称之为计算机文件,是存储在某种长期储存设备或临时存储设备中的一段数据流,并且归属于计算机文件系统管理之下。所谓“长期储存设备”一般指磁盘、光盘、磁带等。而“...

我想问dos运行.exe文件的指令是什么?如果可能的话,我希望知道更多有关的...
答:〔适用场合〕 当您无法在多个目录中寻找到自己输入的文稿时,可以试一试这个命 令,用法类似path。 〔用法〕 append [路径];[路径] 〔例子〕 C:\>append c:\test� 设置寻找非可执行文件路径为c:\test如果该目录下有文件1.txt时, 在其它目录下调用1.txt找不到时,可自动寻找到c:\test目录。 D:\UCDOS>...

想在手机上看电脑上的exe格式的视频该怎么做啊
答:6、设置好后,点击“转换”按钮;7、输入转换视频后的文件名,保存类型不动,再点击“保存”按钮;8、耐心等待视频转换好(电脑配置高的话,很快就好了);9、这个“FLV”视频文件就是刚刚转换好的(可以看到视频内存文件比EXE还小了不少);10、用电脑的播放器来测试一下,能不能正常播放,可以播放...

计算机命令
答:if 在批处理程序中执行条件处理(更多说明见if命令及变量) goto 标签 将cmd.exe导向到批处理程序中带标签的行(标签必须单独一行,且以冒号打头,例如:“:start”标签) call 路径\批处理文件名 从批处理程序中调用另一个批处理程序 (更多说明见call /?) for 对一组文件中的每一个文件执行某个特定命令(更多说明...

...执行文件里,是什么编码。在内存中查找是ascii 码还是二进制还是什么...
答:二进制 如果你可以看到内存中的数据,可以使用UltraEdit将内存中的数据打开,应该可以看到中文。例如:山 在内存中为C9 BD "用什么软件能把汉字译成二进制。"UltraEdit等文本编译软件都可以。

在网上下的视频文件,格式是exe格式的,有加密!跪求怎么破解???_百度...
答:3. 回到FileMon,看到什么了?对!所有的文件调用均被记录下来啦!现在再将“Capture Events”前面的勾去掉,免得它仍旧不断的增加记录,然后来看看记录的都是什么。以下是截取的部分内容:Explorer FindOpen E:DDR99.EXE SUCCESS Explorer FindClose E:DDR99.EXE SUCCESS ……… ……… ……… ……...

java的jdk中自带的native2ascii.exe,转换出来的是什么编码? 就是\0...
答:native2ascii这个工具主要用来把本地编码(比如gbk)的文件转换成标准的Properties属性文件。属性文件中,除字母数字外的字符要用\转义,具体的标准参考java文档Properties类的说明。

运行exe文件时,打开的都是.txt文件,结果使exe文件不能运行,出现的全是...
答:exe文件关联错误,导致exe文件一文本方式打开。exe用txt打开肯定是乱骂一堆了,毕竟十六进制和普通ASCII码有很大区别的。。解决方法多着呢!楼上的说的都不是很全面,导致让人没有选择了啊。。修复EXE文件关联的方法如下:一、在控制面板--文件夹选项里设置显示所有文件,并且取消对隐藏已知文件的扩展名...

exe是用什么语言编写的?
答:exe是编译过后的二进制机器代码,和语言没什么关系。你写完程序后要编译链接然后生成目标代码,那才是exe文件。编程语言(programming language),是用来定义计算机程序的形式语言。它是一种被标准化的交流技巧,用来向计算机发出指令。一种计算机语言让程序员能够准确地定义计算机所需要使用的数据,并精确地...

请问怎么打开ASCII文件
答:ASCII码文件,Matlab都能打开,不管是dat,txt还是abc文件。 如你用在记事本中输入: 1 2 3 4 然后存成test.xxx。 在Matlab中,把Current Directory设成放置该文件的地方,输入: >> load test.xxx 就能把后到变量test,内容为[1 2;3 4]的矩阵。 本回答由电脑网络分类达人 郭强推荐 举报| 答案纠错 | 评论 0...