社区
VB基础类
帖子详情
如何设置当前应用的默认路径
yorgo
2003-10-10 11:30:26
我想修改当前的路径,让一些外部程序在某个路径下运行
现在遇到的问题是
1、shell可以运行外部程序,但是无法指定程序运行目录,我希望可以指定一下目录
2、shellexecute可以指定目录运行,但是执行成功后不返回pid,我希望得到pid从而可以控制外部运行程序的执行情况。
...全文
218
14
打赏
收藏
如何设置当前应用的默认路径
我想修改当前的路径,让一些外部程序在某个路径下运行 现在遇到的问题是 1、shell可以运行外部程序,但是无法指定程序运行目录,我希望可以指定一下目录 2、shellexecute可以指定目录运行,但是执行成功后不返回pid,我希望得到pid从而可以控制外部运行程序的执行情况。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yorgo
2003-10-15
打赏
举报
回复
已经使用createprocess解决问题
yorgo
2003-10-12
打赏
举报
回复
我用动态产生.bat文件暂时解决了问题。
to rainstormmaster
shell 指定的路径+文件名 可以执行程序,但是环境中程序执行的路径还在app.path下呢,我要求程序执行的时候,默认路径为执行程序所在目录或者是指定目录。
我会尝试使用createprocess看看可不可以
oxfordxyc
2003-10-12
打赏
举报
回复
学习中……
kmzs
2003-10-12
打赏
举报
回复
shell <全路径〉,<参数>
luolovegui
2003-10-12
打赏
举报
回复
chdir()
yorgo
2003-10-12
打赏
举报
回复
从网上下载一个xxx.zip的文件,为了不在客户端使用zip相关函数,所以改成xxx.exe的自解压包,设定自解压目录为默认目录。
实现的程序就是将这个自解压包下载到本地,然后调用执行这个自解压数据包。
现在的问题就是:如果你单纯运行了那个自解压数据包的话,他会将东西解压到app.path目录下。如果你使用shellexecute的指定运行目录的话,可以解压到你指定的目录,但是shellexecute不返回pid,你没有办法控制等解压完了以后在执行下面的程序。
我的思路没有变
rainstormmaster
2003-10-12
打赏
举报
回复
不知道你要实现什么功能,能详细说说吗?
我怀疑楼主的思路已经偏了
yorgo
2003-10-10
打赏
举报
回复
那个程序有特定用途,不能copy到app.path下面运行的,必须要在指定的路径运行,并且vb要等待运行完才继续下面的操作
wangchong
2003-10-10
打赏
举报
回复
你可以把要用的程序放在安装目录下!再用APP.PATH 目录 调用!
mgan
2003-10-10
打赏
举报
回复
旧这个可以搞定啊
shell 指定的路径+文件名
————————————
GOOD GOOD STUDY
DAY DAY UP
——————————
flc
2003-10-10
打赏
举报
回复
学习
rainstormmaster
2003-10-10
打赏
举报
回复
//那个程序有特定用途,不能copy到app.path下面运行的,必须要在指定的路径运行
shell 指定的路径+文件名
解决不了你的问题吗?
rainstormmaster
2003-10-10
打赏
举报
回复
shellexecute和shell都不行的话,就用功能最强大的CreateProcess
VB声明
Declare Function CreateProcess Lib "kernel32" Alias "CreateProcessA" (ByVal lpApplicationName As String, ByVal lpCommandLine As String, lpProcessAttributes As SECURITY_ATTRIBUTES, lpThreadAttributes As SECURITY_ATTRIBUTES, ByVal bInheritHandles As Long, ByVal dwCreationFlags As Long, lpEnvironment As Any, ByVal lpCurrentDriectory As String, lpStartupInfo As STARTUPINFO, lpProcessInformation As PROCESS_INFORMATION) As Long
说明
创建一个新进程(比如执行一个程序)
返回值
Long,非零表示成功,零表示失败。会设置GetLastError
参数表
参数 类型及说明
lpApplicationName String,要执行的应用程序的名字。可设为vbNullString;在这种情况下,应用程序的名字应在lpCommandLine参数的起始处出现
lpCommandLine String,要执行的命令行。可用GetCommandLine函数取得一个进程使用的命令行。Windows会尽可能地根据下述搜索顺序来查找执行文件:
(1)包含了父进程执行文件的目录
(2)父进程当前的目录
(3)由GetSystemDirectory返回的系统目录
(4)仅适于windows NT:16位系统目录
(5)由GetWindowDirectory返回的Windows目录
(6)由PATH环境变量指定的目录
lpProcessAttributes SECURITY_ATTRIBUTES,指定一个SECURITY_ATTRIBUTES结构,或传递零值(将参数声明为ByVal As Long,并传递零值)——表示采用不允许继承的默认描述符。该参数定义了进程的安全特性
lpThreadAttributes SECURITY_ATTRIBUTES,指定一个SECURITY_ATTRIBUTES结构,或传递零值(将参数声明为ByVal As Long,并传递零值)——表示采用不允许继承的默认描述符。该参数定义了进程之主线程的安全特性
bInheritHandles Long,TRUE表示允许当前进程中的所有句柄都由新建的子进程继承
dwCreationFlags Long,来自API32.TXT文件的一个或多个下述常数之一,它们都带有前缀CREATE_。下面这些用于VB程序员:
CREATE_SEPARATE_WOW_VDM(仅适用于NT) 启动一个16位的Windows应用程序时,强迫它在自己的内存空间运行
CREATE_SHARED_WOW_VDM(仅适用于NT) 启动一个16位的Windows应用程序时,强迫它在共享的16位虚拟机(VM)内运行
CREATE_SUSPENDED 立即挂起新进程。除非调用了ResumeThread函数函数,否则它不会恢复运行
也可能是下述常数之一,用于指定优先级
IDLE_PRIORITY_CLASS 新进程应该有非常低的优先级——只有在系统空闲的时候才能运行。基本值是4
HIGH_PRIORITY_CLASS 新进程有非常高的优先级,它优先于大多数应用程序。基本值是13。注意尽量避免采用这个优先级
NORMAL_PRIORITY_CLASS 标准优先级。如进程位于前台,则基本值是9;如在后台,则优先值是7
不要在VB中使用REALTIME_PRIORITY_CLASS
lpEnvironment Any,指向一个环境块的指针(环境缓冲区的头一个字符,或者环境块的地址)
lpCurrentDriectory String,新进程的当前目录路径。调用函数的时候,可用vbNullString指定当前目录
lpStartupInfo STARTUPINFO,指定一个STARTUPINFO结构,其中包含了创建进程时使用的附加信息
lpProcessInformation PROCESS_INFORMATION,该结构用于容纳新进程的进程和线程标识符。大多数情况下,一旦这个函数返回,父应用程序都会关闭两个句柄。
Top
suonety
2003-10-10
打赏
举报
回复
ChDrive App.Path
ChDir App.Path
MATLAB如何
设置
启动
默认
路径
方法一: 打开主页→预设 点击确定,重启
应用
即可。 方法二: 点开安装
路径
文件夹,并依次打开MATLAB2019b\toolbox\local,打开matlabrc.m文件 用记事本打开,加入如下代码 cd('
路径
'); 重启
应用
即可。 ...
修改jupyter notebook
默认
路径
1、查看文件
默认
存储
路径
在安装Anaconda后,新建文件的
默认
存储
路径
一般在C系统盘,那么怎么查看
路径
首先,新建一个.ipynb文件 输入以下脚本,运行出的结果即是
当前
jupyter文件
默认
保存
路径
import os print(os.path.abspath('.')) 2、 文件
默认
存储
路径
怎么修改 第一步:找到配置文件 菜单中打开Anaconda Prompt 输入命令 jupyter notebook --generate-config 根据上面运行处的
路径
打开C:\User
MFC选择目录SHBrowseForFolder选择文件CFileDialog对话框
设置
默认
路径
大气象学习园地 博客园新闻新随笔管理订阅 随笔- 664 文章- 1 评论- 2638 MFC选择目录SHBrowseForFolder选择文件CFileDialog对话框
设置
默认
路径
CFileDialog会自动记住上一次
路径
, SHBrowseForFolder需要写个回调函数, 传值给BROWSEINF
QT:改变
当前
程序运行时的
默认
工作
路径
为了在运行时免添加文件绝对
路径
,特别是QT结合脚本一起使用的场景。 如下脚本中需要显示treeate.png图片文件,如果加上绝对
路径
是多么的不方便。 var ret = ta.MsgBox("images/treeate.png", "hello", 0, 5000); 解决该问题只需在运行脚本之前加一行代码即可: QDir::setCurrent(infoPrj.path()); ...
python怎么修改
默认
路径
_修改
默认
python
广告关闭腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元!系统中
默认
安装了多个版本的python,其中
默认
使用的是python2.7,现在我所学习的是python3的命令,为了便于使用,需要把python3
设置
为
默认
。 以下为把python3
设置
为
默认
python方法:1、删除usrbin 下的python链接 rmusrbinpython...
VB基础类
7,763
社区成员
197,609
社区内容
发帖
与我相关
我的任务
VB基础类
VB 基础类
复制链接
扫一扫
分享
社区描述
VB 基础类
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章