递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 4814|回复: 6
打印 上一主题 下一主题

[视窗] 易语言这个API 为何转换会出现参数错误?请大佬

[复制链接]

3

主题

27

帖子

111

积分

注册会员

Rank: 2

积分
111
跳转到指定楼层
楼主
发表于 2022-6-5 21:58:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
易语言这个API 为何转换会出现参数错误?请大佬

CreateProcessAsUserA (0, road, 命令行, 0, 0, 0, 524288, 0, start, si, pi)

.版本 2
.DLL命令 CreateProcessAsUserA, 逻辑型, "advapi32.dll", "CreateProcessAsUserA"
    .参数 hToken, 整数型, , 0
    .参数 lpApplicationName, 文本型, , 0
    .参数 lpCommandLine, 文本型, , 0
    .参数 lpProcessAttributes, 整数型, , 0
    .参数 lpThreadAttributes, 整数型, , 0
    .参数 bInheritHandles, 整数型, , 0
    .参数 dwCreationFlags, 整数型, , 0
    .参数 lpEnvironment, 整数型, , 0
    .参数 lpCurrentDirectory, 文本型, , 0
    .参数 lpStartupInfo, STARTUPINFOEX, , 0
    .参数 lpProcessInformation, PROCESS_INFORMATION, , 0

在火山中:

无法截图。。论坛出现问题了啊

火山中:CreateProcessAsUser(0, 0, 取字节集指针 (文本到字节集 (命令行)), 0, 0, 假, 524288, 0, 0, si, pi)

其中的524288只有改成0才可以,如果不改,就显示参数错误。
CreateProcessAsUser方法:


回复

使用道具 举报

26

主题

1901

帖子

6928

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
6928
沙发
发表于 2022-6-5 22:57:43 | 只看该作者
你火山的都没发出来,怎么知道你有没写错呢,易语言转过来,很多类型要改的
回复

使用道具 举报

411

主题

2515

帖子

8292

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
8292
板凳
发表于 2022-6-6 06:57:26 来自手机 | 只看该作者
CreateProcessAsUserW 火山要用w。用A的话,需要文本到多字节(,假),API的文本和字节集在火山要改成变整数,然后用取文本指针,取字节集指针,取变量指针,逐个试,赋值指针给变整数
回复

使用道具 举报

0

主题

37

帖子

1151

积分

金牌会员

Rank: 6Rank: 6

积分
1151
地板
发表于 2022-6-6 08:45:21 | 只看该作者

第二个参数不能是0
回复

使用道具 举报

3

主题

27

帖子

111

积分

注册会员

Rank: 2

积分
111
5#
 楼主| 发表于 2022-6-6 09:03:04 | 只看该作者
shuimiao 发表于 2022-6-6 06:57
CreateProcessAsUserW 火山要用w。用A的话,需要文本到多字节(,假),API的文本和字节集在火山要改成变整 ...

火山上传不了截图了 没办法截图火山的,也不能复制火山。但你说的 我都已经用多了 我用的是W 不是A 还有文本和字节集到变整数 这些我都弄了。只出现在其中的524288只有改成0才可以 这个问题上
回复

使用道具 举报

3

主题

27

帖子

111

积分

注册会员

Rank: 2

积分
111
6#
 楼主| 发表于 2022-6-6 09:04:05 | 只看该作者
羡羡 发表于 2022-6-6 08:45
第二个参数不能是0

那为什么易语言中第二参数可以为0  而且在C++中 我测试了第二个参数null也没问题。
回复

使用道具 举报

26

主题

1901

帖子

6928

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
6928
7#
发表于 2022-6-6 09:56:28 | 只看该作者
如果你上传不了截图,可以把源码或截图传到网盘,给网盘链接
第二个参数是可以填 NULL 的
那个 524288 是 EXTENDED_STARTUPINFO_PRESENT,作用是把倒数第二参数 lpStartupInfo 的结构体从 STARTUPINFO 改成 STARTUPINFOEX
如果你用 524288 提示参数错误,那可能你给的结构体是 STARTUPINFO
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-11-24 22:21 , Processed in 0.081538 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表