1.为什么ShellExecute函数不支持WINDOWS环境变量,而WINDOWS开始>运行就支持 比如:
Call ShellExecute(Me.hwnd, vbNullString, "%systemroot%\NOTEPAD.EXE", vbNullString, vbNullString, SW_SHOWMAXIMIZED)
就不能运行
2.是不是只有WINDOWS API函数CreateProcess才支持WINDOWS环境变量?这个函数用起来好麻烦啊,我还没有试验成功:(
3.WINDOWS开始>运行这个系统功能,请问是封装了哪个API函数 还是封装了哪些API函数?要自己做出一个和他完全一样的可能吗?有已经实现的吗(代码或者控件)?总觉得这个看似简单的开始>运行背后藏着许多高深的东西!还请高手指点..
4.为什么IEXPLORE可以在WINDOWS开始>运行中运行,也可以用ShellExecute运行,但没有任何的环境变量给出IEXPLORE.EXE的路径C:\Program Files\Internet Explorer,我用Set命令看了确实没有,既然没有为什么可以运行呢?一百分可能不够 不够再加..
Call ShellExecute(Me.hwnd, vbNullString, "%systemroot%\NOTEPAD.EXE", vbNullString, vbNullString, SW_SHOWMAXIMIZED)
就不能运行
2.是不是只有WINDOWS API函数CreateProcess才支持WINDOWS环境变量?这个函数用起来好麻烦啊,我还没有试验成功:(
3.WINDOWS开始>运行这个系统功能,请问是封装了哪个API函数 还是封装了哪些API函数?要自己做出一个和他完全一样的可能吗?有已经实现的吗(代码或者控件)?总觉得这个看似简单的开始>运行背后藏着许多高深的东西!还请高手指点..
4.为什么IEXPLORE可以在WINDOWS开始>运行中运行,也可以用ShellExecute运行,但没有任何的环境变量给出IEXPLORE.EXE的路径C:\Program Files\Internet Explorer,我用Set命令看了确实没有,既然没有为什么可以运行呢?一百分可能不够 不够再加..
解决方案 »
- 怎么把DELPHI的子窗口图标显示在工具栏?
- 有没有想在业余时间做游戏的啊?
- 如何关闭或者打开一个服务啊(在windows2000)???
- 请问在delphi里怎么实现运行dos命令?
- 我使用的delphi7中 tidhttp 类型不识别怎么办?
- 请问如何在DBGrid的表头中加回车
- delphi 能否和 pb做个比较(在数据库方面)
- 试问有谁知道如何让delphi的代码编写窗口能和VB、VC一样友好?
- 为什么我动态的将数据加入InfoPower2000 的TwwDBComboBox 中并且将其属性中的MapList设置为True 可是使用GetComboValue获得的值为空?
- 如何得到文件的信息
- 中秋节我生日了~~~~,有老了一岁了,祝福大家节日快乐~~~
- 发现一个可以免费下载商业源码的网站.大家快呀
2...
3...
4...
rundll32.exe shell32.dll,Control_RunDLL desk.cpl 在WINDOWS开始>运行中执行就会把桌面属性调出来 这和WINDOWS环境变量应该没有关系...
function GetSpecialFolderDir(mFolder: Integer): string;
//CSIDL_BITBUCKET* 回收站 CSIDL_CONTROLS * 控制面板 ......
var
vItemIDList: PItemIDList;
vBuffer: array[0..MAX_PATH] of Char;
begin
SHGetSpecialFolderLocation(0, mFolder, vItemIDList);
SHGetPathFromIDList(vItemIDList, vBuffer); //转换成文件系统的路径
Result := vBuffer;
Result := Result + '\'; // CSIDL_BITBUCKET
end;
SHGetSpecialFolderLocation是什么函数啊 Delphi很喜欢 可惜用的很少...
上面的程序 能否解释一下..
WINSHELLAPI HRESULT WINAPI SHGetSpecialFolderLocation(
HWND hwndOwner,
int nFolder,
LPITEMIDLIST *ppidl
); Retrieves the PIDL of a special folder. Returns NOERROR if successful, or an OLE-defined error result otherwise.
hwndOwner
Handle to the owner window the client should specify if it displays a dialog box or message box.
//CSIDL_BITBUCKET* 回收站 CSIDL_CONTROLS * 控制面板 ......
var
vItemIDList: PItemIDList;
vBuffer: array[0..MAX_PATH] of Char;
begin
SHGetSpecialFolderLocation(0, mFolder, vItemIDList);
SHGetPathFromIDList(vItemIDList, vBuffer); //转换成文件系统的路径
Result := vBuffer;
Result := Result + '\'; // CSIDL_BITBUCKET
end;
2. CreateProcess支不支持环境变量不知道,但环境变量也只有那么几个,用API都能简单的得到。
3. 开始->运行,其实就相当于WINEXEC,(跟VB里的SHELL差不多),你可以把在运行里写的东西放到WINEXEC里试试。
4. IE是WIN的注册组件,不用加路径可以找到程序也不奇怪。M$想让WIN识别,WIN当然就能识别了。