delphi中createpipe的四个参数分别是啥意思啊?

delphi中createpipe不是有四个参数么?Createpipe(A,B,@C,D);那么四个参数分别是啥意思啊,第三个为啥有一个@号呢?谢谢!to2楼我需要的是... delphi中createpipe不是有四个参数么?Createpipe(A, B, @C, D);

那么四个参数分别是啥意思啊,第三个为啥有一个@号呢?

谢谢!
to 2楼

我需要的是对该问题的正面回答,既然我不懂四个参数分别的含义,那么你拿这段代码给我看又有何用?

我需要真正了解delphi的朋友对我进行回答,而非某个对delphi了解还不如我深的人从百度上随便搜一段代码糊弄我。
展开
 我来答
Aztack
2007-05-23 · TA获得超过607个赞
知道小有建树答主
回答量:450
采纳率:0%
帮助的人:416万
展开全部
BOOL CreatePipe(
PHANDLE hReadPipe,
PHANDLE hWritePipe,
LPSECURITY_ATTRIBUTES lpPipeAttributes,
DWORD nSize
);
这是一个windows API,和delphi没有关系
第一个参数:接受管道的读句柄的变量
第二个:接受管道写句柄的变量
第三个是指向一个管道属性数据结构的指针,也就是结构体首地址,
在delphi中@是取变量首地址的操作符
第四个是管道缓冲的大小

查MSDN,有更详细的说明
大雅新科技有限公司
2024-11-19 广告
这方面更多更全面的信息其实可以找下大雅新。深圳市大雅新科技有限公司从事KVM延长器,DVI延长器,USB延长器,键盘鼠标延长器,双绞线视频传输器,VGA视频双绞线传输器,VGA延长器,VGA视频延长器,DVI KVM 切换器等,优质供应商,... 点击进入详情页
本回答由大雅新科技有限公司提供
piscespcy
2007-05-22 · TA获得超过200个赞
知道答主
回答量:43
采纳率:0%
帮助的人:0
展开全部
这是一段关于delphi中createpipe的例子,看一下吧!
function WinExecAndWait32(FileName:String; Visibility : integer):integer;
var
zAppName:array[0..512] of char;
zCurDir:array[0..255] of char;
WorkDir:String;
StartupInfo:TStartupInfo;
ProcessInfo:TProcessInformation;
begin
StrPCopy(zAppName,FileName);
GetDir(0,WorkDir);
StrPCopy(zCurDir,WorkDir);
FillChar(StartupInfo,Sizeof(StartupInfo),#0);
StartupInfo.cb := Sizeof(StartupInfo);
StartupInfo.dwFlags := STARTF_USESHOWWINDOW;
StartupInfo.wShowWindow := Visibility;
if not CreateProcess(nil,
zAppName, { pointer to command line string }
nil, { pointer to process security attributes }
nil, { pointer to thread security attributes }
false, { handle inheritance flag }
CREATE_NEW_CONSOLE or { creation flags }
NORMAL_PRIORITY_CLASS,
nil, { pointer to new environment block }
nil, { pointer to current directory name }
StartupInfo, { pointer to STARTUPINFO }
ProcessInfo) then Result := -1 { pointer to PROCESS_INF }
else begin
WaitforSingleObject(ProcessInfo.hProcess,INFINITE);
GetExitCodeProcess(ProcessInfo.hProcess,Result);
end;
end;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友9faa444ff
2007-05-22 · 超过10用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:0
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
就烦条0o
2016-01-04 · 知道合伙人软件行家
就烦条0o
知道合伙人软件行家
采纳数:33315 获赞数:46492
从事多年系统运维,喜欢编写各种小程序和脚本。

向TA提问 私信TA
展开全部
CreatePipe()的函数原型为:
  BOOL CreatePipe(PHANDLE hReadPipe, // 指向读句柄的指针
   PHANDLE hWritePipe, // 指向写句柄的指针
   LPSECURITY_ATTRIBUTES lpPipeAttributes, // 指向安全属性的指针
   DWORD nSize // 管道大小
  );
CreatePipe函数创建匿名管道,该函数在创建匿名管道的同时返回两个句柄:管道读句柄和管道写句柄。
函数说明:
说明
创建一个匿名管道
返回值
Long,非零表示成功,零表示失败。会设置GetLastError
参数表
参数 类型及说明
phReadPipe Long,指定一个 变量,设为管道读入(输出)端的一个句柄
phWritePipe Long,指定一个 变量,设为管道写入(输入)端的一个句柄
lpPipeAttributes SECURITY_ATTRIBUTES,指定一个SECURITY_ATTRIBUTES结构,或者传递零值(将参数声明为ByVal As Long,并传递零值),以便使用不允许继承的一个默认描述符
nSize Long,管道缓冲区的建议大小。零表示用默认值
注解
匿名管道不允许异步操作,所以如在一个管道中写入数据,且缓冲区已满,那么除非另一个进程从管道中读出数据,从而腾出了缓冲区的空间,否则写入函数不会返回
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式