情境:自己写了一个loading画面,定时器到时间后调用shellexecute函数调用真正的程序。

问题:调用时出错,说找不到dll资源,但是用鼠标双击确可以打开。

经过分析之后,应该是路径的问题,主程序启动时要加载一些dll,还有读一些ini文件,这些都用到了

GetCurrentDir函数,应该是shellexecute之后主程序得到的当前路径不正确,导致无法读取资源。

修改:将GutCurrentDir换成

ExtractFilePath(application.ExeName); 

这样就完全可以了。

ShellExecute函数的问题的更多相关文章

  1. ShellExecute函数简单说明

    平时在delphi写代码的过程中总是能遇到ShellExecute函数,于是索性将它的使用方法整理一下,由于我在微软的站点上也没能查到个详解(当然我查的中文版,俺菜嘛) ShellExecute函数原 ...

  2. 转:ShellExecute函数与ShellExecuteEx函数

    ShellExecute函数 ShellExecute函数原型及參数含义例如以下: function ShellExecute(hWnd: HWND; Operation, FileName, Par ...

  3. Delphi Win API 函数 [ ShellAPI ] ShellExecute 函数

    引用单元:uses ShellAPI; 函数原型:function ShellExecute(hWnd: HWND; Operation, FileName, Parameters,Directory ...

  4. 阻塞调用ShellExecute函数

    SHELLEXECUTEINFO si;ZeroMemory(&si, sizeof(si));si.cbSize = sizeof(si);si.fMask = SEE_MASK_NOCLO ...

  5. Delphi调用外部程序函数:WinExec() 和ShellExecute详解

    1,WinExec():   WinExec主要运行EXE文件,不能运行其他类型的文件.不用引用特别单元.   原型:UINT WinExec(exePath,ShowCmd)   示例,我想要用记事 ...

  6. 在Delphi中使用ShellExecute(handle, 'open', PChar(fname),nil, nil, SW_HIDE)函数应注意的问题

    在Delphi中使用ShellExecute(handle, 'open', PChar(fname),nil, nil, SW_HIDE)函数应注意的问题: 一.对一般vcl程序及isapi dll ...

  7. API函数ShellExecute与ShellExecuteEx用法

    ShellExecute: 1.函数功能:你可以给它任何文件的名字,它都能识别出来并打开它.2.函数原型: HINSTANCE ShellExecute( HWND hwnd, LPCTSTR lpO ...

  8. ShellExecute —— 运行一个外部程序

    原型参数 注意事项:使用该函数时,需添加该头文件:[1]  #include <shellapi.h> ShellExecute函数原型及参数含义如下: ShellExecute( hWn ...

  9. 【转】【C++】ShellExecute, WinExec, CreateProcess 三者的区别

    ShellExecute ShellExecute的功能是运行一个外部程序(或者是打开一个已注册的文件.打开一个目录.打印一个文件等等),并对外部程序有一定的控制. 有几个API函数都可以实现这些功能 ...

随机推荐

  1. ISSCC 2017论文导读 Session 14:ENVISION: A 0.26-to-10 TOPS/W Subword-Parallel DVAFS CNN Processor in 28nm

    ENVISION: A 0.26-to-10 TOPS/W Subword-Parallel Dynamic-Voltage-Accuracy-Frequency-Scalable CNN Proce ...

  2. TeeChart取消3D

    tChart1.Aspect.View3D = false;//此属性默认是true 3d的效果 2d平面的效果 题外话,在使用控件的时候,需要注意: 在TChart控件上增加Series,   se ...

  3. c++ 判断给定区间是否是一个heap. O(N) (is_heap)

    #include <iostream> // cout #include <algorithm> // is_heap, make_heap, pop_heap #includ ...

  4. SetCommMask

    SetCommMask           用途:设置串口通信事件   原型:BOOL SetCommMask(HANDLE hFile, //标识通信端口的句柄   DWORD dwEvtMask ...

  5. [ios]ScrollView小结

    设置ScrollView self.mysrollview.contentSize = CGSizeMake(1024,768); self.mysrollview.pagingEnabled = Y ...

  6. 2017"百度之星"程序设计大赛 - 资格赛-度度熊与邪恶大魔王(dp+后缀最小值)

    度度熊与邪恶大魔王 思路:由于防御和血量的范围很小,所以暴力枚举出对于每种防御造成的每种伤害所需的最小花费,最后只需在伤害大于等于血量的情况下再找到最小花费(这个只需要后缀最小值预处理一下就可以了) ...

  7. Python 爬虫-信息的标记xml,json,yaml

    2017-07-26  23:53:03 信息标记的作用有: 标记后的信息可形成信息组织结构,增加了信息维度 标记的结构与信息一样具有重要价值 标记后的信息可用于通信.存储或展示 标记后的信息更利于程 ...

  8. 精伦盒子H1,插上USB,找不到对应的文件路径

    看USB的灯闪的挺正常的, 但就是不知道,该怎么mount 上去. 查了UDEV的资料, 发觉这个盒子虽然没有 udevmonitor命令, 却可以用  udevadm monitor 来监视udev ...

  9. response.sendRedirect跳转 jsp:forward跳转

    response.sendRedirect跳转 <% response.sendRedirect("online.jsp"); %> jsp:forward跳转 < ...

  10. SQL 进阶视频课程。Udacity: Intro to Relational Databases和 PostgreSQL语法文档。

    Udacity: Intro to Relational Databases The syntax of the select statement with a where clause: selec ...