获得当前程序路径和自动选择路径赋值到参数中
来源:互联网 发布:tomsinsight知乎专栏 编辑:程序博客网 时间:2024/05/09 01:57
//声明外部函数如下:限制应用程序只运行一次
FUNCTION uLong ShowWindow( ulong winhandle, int wincommand ) Library "user32" //显示窗口
FUNCTION uLong BringWindowToTop( ulong HWND ) Library "user32" //置前窗口唯一
FUNCTION long FindWindowA( ulong Winhandle, string wintitle ) Library "user32" //判断当前窗口是否为指定窗口
//限制应用程序只运行一次
long ll_winhandle
ll_winhandle = FindWindowA( 0, "某某窗口标题" )
If ll_winhandle > 0 Then
BringWindowToTop( ll_winhandle )
ShowWindow( ll_winhandle , 3 ) //数字不同窗口显示不同,3为原窗口样式,5为最大化
Return
End If
(2)获得路径判断参数路径同时赋值变动的程序路径
Function Long GetCurrentDirectoryA(long length,ref string path) LIBRARY "Kernel32"//获得当前程序路径
//(1)首先根据全局声明API的FUNCTION函数 当前程序的路径,为了以后菜单里数据库的操作
//Function Long GetCurrentDirectoryA(long length,ref string_path) LIBRARY "Kernel32"
//取得当前应用程序的路径
//首先给路径全局变量赋值地址存储空间(用空格填充)
str_directiry = Space(250)
//取得真实路径字符串的长度给全局变量lo_directory并且把路径字符串赋值给str_panth(如果没有够250长度则根据前面给得空格空间填充)
long lo_directory
lo_directory = GetCurrentDirectoryA(250,str_directiry)
IF lo_directory > 0 THEN
str_directiry = Left(str_directiry,lo_directory)
ELSE
Messagebox("错误!!","当前运行的程序的路径读取错误"+String(lo_directory)+"!!程序退出,请联系开发人员!!!")
return
END IF
//(2)核对是否路径和参数中的路径设置的一致,不一致提示更改
if str_directiry<>profilestring(str_directiry+"/modify.ini","DIRECTORY","PATH","") then
messagebox("提示窗口","当前程序路径和参数中设置的路径不一致,请维护!!!")
//打开从对话框选取主程序来获得路径
int in_value
string str_filename,str_pathname
in_value=getfileopenname("<< 选择主程序 >>",str_pathname,str_filename,"exe","Exe Files (*.exe),*.exe")
if in_value=1 and str_filename='main.exe' then
//成功获得,把路径赋值给参数
setprofilestring(left(str_pathname,len(str_pathname)-len(str_filename)-1)+"/modify.ini","DIRECTORY",&
"PATH",left(str_pathname,len(str_pathname)-len(str_filename)-1))
str_directiry=left(str_pathname,len(str_pathname)-len(str_filename)-1)
else
messagebox("提示窗口","您没有选择设置正确,程序退出!!!")
return
end if
end if
//(3)成功获得路径后开始连接数据库
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "Connectstring='DSN=NewChufang'"
connect;
open(w_logon)
(3)其它函数声明
FUNCTION boolean CopyFileA(ref string cfrom, ref string cto, boolean flag) LIBRARY "Kernel32.dll"//声明COPY函数执行COPY行为
Function boolean CreateDirectoryA(string lpPathName,string lpSecurityAttributes) Library "kernel32.dll"//声明创建函数执行创建文件夹行为
SubRoutine Sleep(ulong milli) Library "Kernel32.dll"//定义延迟函数API
- 获得当前程序路径和自动选择路径赋值到参数中
- 获得当前程序路径
- CFolderDialog,CFolderPickerDialog选择文件夹及获得当前程序路径
- 获得当前程序目录路径
- JSP中获得当前路径
- java中获得当前路径
- Java中获得程序当前路径的4中方法:
- Servlet 获得当前路径和相对路径
- Servlet中获得当前应用的相对路径和绝对路径-
- JSP中获得当前应用的相对路径和绝对路径
- C/C++获得当前程序路径
- MFC获得当前运行程序的路径
- Wince程序获得当前路径(C#)
- 获得当前执行程序所在文件夹路径
- C/C++获得当前程序路径
- java中获得当前文件路径
- java中获得当前路径的方法
- VC 中获得当前路径的方法
- 以前写的一个文件夹遍历代码
- ASP.NET Login控件使用方法及须知(图)
- WEB三层架构与MVC
- Hibernate的dynamic-update
- SQL数据库加密方法
- 获得当前程序路径和自动选择路径赋值到参数中
- C#读写Excel 错误测试
- 随感
- Java sort 源码解析 primitive part
- MIMS 屏幕分割方案(基于 dijit.layout.SplitContainer)
- 将可执行文件挂载到2410中
- 右键菜单的打开方式出现两个记事本图标的原因
- GCC的基本用法和选项
- QtCreator : collect2 ld returned 1 exit status