请问怎么获得DSN列表

deansroom 2005-12-24 02:32:36
如题
...全文
71 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
上官云峰 2005-12-24
  • 打赏
  • 举报
回复
你试试看看

Private Declare Function SQLDataSources Lib "ODBC32.DLL" (ByVal henv&, ByVal fDirection%, ByVal szDSN$, ByVal cbDSNMax%, pcbDSN%, ByVal szDescription$, ByVal cbDescriptionMax%, pcbDescription%) As Integer
Private Declare Function SQLAllocEnv% Lib "ODBC32.DLL" (env&)
Const SQL_SUCCESS As Long = 0
Const SQL_FETCH_NEXT As Long = 1


Sub GetDSN()
Dim i As Integer
Dim sDSNItem As String * 1024
Dim sDRVItem As String * 1024
Dim sDSN As String
Dim sDRV As String
Dim iDSNLen As Integer
Dim iDRVLen As Integer
Dim lHenv As Long 'handle to the environment

On Error Resume Next
List1.AddItem "(None)"

'get the DSNs
If SQLAllocEnv(lHenv) <> -1 Then
Do Until i <> SQL_SUCCESS
sDSNItem = Space$(1024)
sDRVItem = Space$(1024)
i = SQLDataSources(lHenv, SQL_FETCH_NEXT, sDSNItem, 1024, iDSNLen, sDRVItem, 1024, iDRVLen)
sDSN = Left$(sDSNItem, iDSNLen)
sDRV = Left$(sDRVItem, iDRVLen)

If sDSN <> Space(iDSNLen) Then
List1.AddItem sDSN
cboDrivers.AddItem sDRV
End If
Loop
End If

List1.ListIndex = 0
End Sub


Private Sub Command1_Click()
GetDSN
End Sub

LED点阵单片机万年历 ---- snallie@tom.com 2013.12 ---- 特点: 0. 电路简洁,并口直接驱动,51最小系统+74hc259 0.0 采用单片机芯片定时器计时,无需RTC芯片(预留RTC芯片代码). 1. 阳历:年、月、日、时、分、秒、星期,阳历年限任意长 2. 农历:月日,天干地支,属相,24节气,农历年限范围2010年~2099年 3. 12/24时制显示。 4. 生日问候流动显示 5. 早晚安问候,励志名言显示,农历春节问候。 6. 误差微调/粗调 7. 声控/按键触发流动显示。在MCU的PIN12的下降沿触发。 8. 3键调整:按键M:菜单;按键+:上调;按键-:下调 9. 菜单列表: 1. 调整阳历年份 (00~99) 2. 调整阳历月份 (1~12) 3. 调整阳历日期 (1~31) 4. 调整小时 (0~23) 5. 调整分钟 (0~59) 6. 调整秒数 (0~59) 7. 调整阳历世纪(即年份高2位) (00~99) 8. 调整流动显示的分钟间隔(默认为10,即每隔10分钟流动显示一次全部时间及日历信息)(1~59) 9. 调整12/24时制(默认24时制) 10. 调整生日月份 (1~12) 11. 调整生日日期 (1~31) 12. 调整主屏秒点跳动的关闭或开启 13 调整主屏"星期点"跳动的关闭或开启,("星期点":用主屏的小时分钟的分隔点的二进制点表示星期) 14. 调整休眠模式的关闭或开启 15. 闹钟小时设置(0~24,设为24时为关闭闹钟) 16. 闹钟分钟设置(0~60,设为60分为关闭闹钟) 17. 整点报时开关(报时为"嘟"的一声) 18. 误差粗调 19. 误差微调,精度10ms,范围-1280ms~+1280ms 20. 版本号(16进制形式) 21. 汉字形式显示的版本信息。 10. 农历信息为自动计算得到,无需手工调整,星期信息同此。 11. 加入DS1302 RTC芯片时候,可掉电走时。 12. 一组闹时 13. 声控唤醒休眠模式或通过声控触发流动显示日历信息 14. 可在proteus下进行模拟测试(用MCU并口直接驱动时候,用51test2.DSN文件模拟) 15. 改进扫描方式为隔行逐点扫描,比release1版本的屏幕显示亮度均匀。 16. 整点报时:在P3.3加入一个PNP的三极管驱动蜂鸣器发声。整点报时可通过菜单设置开启或者关闭合。 17. 农历传统节日的问候显示,共13个农历传统节日:春节, 元宵节, 春龙节, 浴佛节, 龙舟节, 七夕节, 中元节, 中秋节, 重阳节, 寒衣节, 腊八节, 小年, 除夕。 18. 显示农历大小月的信息。显示农历闰月的信息。 19. 在菜单的最后一项流动显示汉字形式的版本信息。 20. 流动显示时的时分秒数字改为大字体。 21. 并口列驱动的2个条件编译(二者只选其一):在进行开发时候采用 #define DEVELOPMENT 在直接生产产品使用 #define PRODUCTION 采用74hc595列驱动时的2个条件编译(二者只选其一):在进行开发时候采用 #define COLUMN_DRIVEN_BY_595_DEVELOPMENT 在直接生产产品使用 #define COLUMN_DRIVEN_BY_595_PRODUCTION 并口列驱动与采用74hc595列驱动只能二者只选其一,采用 #define COLUMN_DRIVEN_BY_595 进行条件编译控制,定义了COLUMN_DRIVEN_BY_595即为采用74hc595列驱动, 否则为并口列驱动。默认为并口列驱动。 22. 为了适应不同的proteus模拟测试环境,可采用不同的测试文件: 1. 51test2_no_buzzer.DSN 为并口列驱动且无蜂鸣器的测试文件。(若proteus不支持声卡,采用该文件) 2. 51test2.DSN 为并口列驱动且有蜂鸣器的测试文件。(若proteus支持声卡,采用该文件) 3. 51test2-259-595.DSN 为采用74hc595列驱动的测试文件,未提供蜂鸣器,可仿照1,2中的电路自行添加。
原书名: Perl by Example(Third Edition),原出版社: PH PTR,作者: Ellie Quigley,译者: 杜炜,出版社:清华大学出版社,出版日期:2002 年8月,PDF 格式,大小 19 Mb。 内容简介 本书以最新版本的Perl 5.6.1为范本,全面介绍了Perl语言,其内容包含Perl的所有主题。对每个主题都使用了范例说明,从Perl变量、正则表达式,到编写报表、CGI脚本和网络应用,并对范例程序进行了解释。读者可以很容易地通过这些范例掌握Perl语言的语法。附录含有完整的函数和定义、命令行开关、特殊变量、常见模块和Perl调试器的列表,全功能的、面向对象的CGI程序,一些有用的脚本,以及很有帮助的HTM教程。 本书非常适合于Perl语言初学者阅读,对于Perl程序员,也有很大的参考价值。 目录 第1章 实用摘要和报表语言 1.1 什么是Perl 1.2 Perl用户 1.3 Perl的版本 1.4 如何获得Perl 1.5 什么是CPAN 1.6 Perl文档 第2章 Perl脚本 2.1 从命令行使用Perl 2.1.1 七开关 2.1.2 -n开关 2.1.3 -c开关 2.2 脚本设置 2.3 脚本 2.3.1 开始 2.3.2 注释 2.3.3 Perl语句 2.3.4 执行脚本 2.3.5 脚本范例(UNIX, Windows) 练习1 了解Perl的语法 .第3章 获得打印句柄 3.1 文件句柄 3.2 字 3.2.1 引号 3.2.2 实量(常量) 3.3 print函数 3.3.1 打印实量 3.3.2 警告编译指示和-w开关 3.3.3 strict编译指示和字 3.4 printf函数 3.4.1 sprintf函数 3.4.2 无引号打印:here document 练习2 编写literals脚本 第4章 变量 4.1 关于Perl变量 4.1.1 类型 4.1.2 作用域和包 4.1.3 命名规范 4.1.4 赋值语句 4.1.5 引号规则 4.2 标量、数组和散列 4.2.1 标量变量 4.2.2 数组 4.2.3 散列 4.3 从STDIN读取 4.3.1 把输入赋值给标量变量 4.3.2 chop和chomp函数 4.3.3 read函数 4.3.4 getc函数 4.3.5 将输入赋值给数组 4.3.6 将输入赋值给散列 4.4 数组函数 4.4.1 chop和chomp函数(用于列表) 4.4.2 exists函数 4.4.3 delete函数 4.4.4 grep函数 4.4.5 join函数 4.4.6 map函数 4.4.7 pack和unpack函数 4.4.8 pop函数 4.4.9 push函数 4.4.10 shift函数 4.4.11 splice函数 4.4.12 split函数 4. 4.13 sort函数 4.4.14 reverse函数 4.4.15 unshift函数 4.5 散列(关联数组)函数 4.5.1 keys函数 4.5.2 values函数 4.5.3 each函数 4.5.4 delete函数 4.5.5 exists函数 4.6 关于散列的更多内容 4.6.1 从文件加载散列 4.6.2 特殊散列 4.6.3 语境 练习3 特殊字符 第5章 运算符 5.1 关于Perl运算符 5.2 混合数据类型 5.3 优先权与结合性 5.3.1 赋值运算符 5.3.2 关系运算符 5.3.3 等值运算符 5.3.4 逻辑运算符(短路运算符) 5.3.5 逻辑字运算符 5.3.6 算术运算符 5.3.7 自动递增和自动递减运算符 5.3.8 位逻辑运算符 5.3.9 条件运算符 5.3.10 范围运算符 5.3.11 特殊字符串运算符和函数 5.3.12 生成随机数 5.3.13 rand/srand函数 练习4 运算符 第6章 条件 6.1 控制结构,块和复合语句 6.2 决策--条件结构 6.2.1 if和unless语句 6.2.2 unless语句结构 6.3 循环 6.3.1 while循环 6.3.2 until循环 6.3.3 for循环 4.5.2 values函数 4.5.3 each函数 4.5.4 delete函数 4.5.5 exists函数 4.6 关于散列的更多内容 4.6.1 从文件加载散列 4.6.2 特殊散列 4.6.3 语境 练习3 特殊字符 第5章 运算符 5.1 关于Perl运算符 5.2 混合数据类型 5.3 优先权与结合性 5.3.1 赋值运算符 5.3.2 关系运算符 5.3.3 等值运算符 5.3.4 逻辑运算符(短路运算符) 5.3.5 逻辑字运算符 5.3.6 算术运算符 5.3.7 自动递增和自动递减运算符 5.3.8 位逻辑运算符 5.3.9 条件运算符 5.3.10 范围运算符 5.3.11 特殊字符串运算符和函数 5.3.12 生成随机数 5.3.13 rand/srand函数 练习4 运算符 第6章 条件 6.1 控制结构,块和复合语句 6.2 决策--条件结构 6.2.1 if和unless语句 6.2.2 unless语句结构 6.3 循环 6.3.1 while循环 6.3.2 until循环 6.3.3 for循环 6.3.4 foreach循环 6.3.5 循环控制 6.3.6 伪开关语句 练习5 条件是什么 第7章 正则表达式--模式匹配 7.1 什么是正则表达式 7.2 表达式修饰符和简语句 7.2.1 条件修饰符 7.2.2 DATA文件句柄 7.2.3 循环修饰符 7.3 正则表达式运算符 7.3.1 m运算符和匹配 7.3.2 s运算符和替换 7.3.3 模式绑定运算符 练习6 它是sed、awk或grep吗?尝试Perl 第8章 获得控制:正则表达式元字符 8.1 正则表达式元字符 8.1.1 用于单字符的元字符 8.1.2 白空元字符 8.1.3 重复模式匹配的元字符 8.1.4 tr或y函数 8.2 统一字符编码(Unicode) 练习7 是sed、awk或grep吗?给出Perl的另外一个作用 第9章 获得文件句柄 9.1 用户定义文件句柄 9.1.1 打开文件:open函数 9.1.2 打开文件读 9.1.3 打开文件写 9.1.4 Win32文件 9.1.5 打开文件添加 9.1.6 select函数 9.1.7 使用flock锁住文件 9.1.8 seek和tell函数 9.1.9 打开文件读写 9.1.10 管道打开 9.2 传送参数 9.2.1 ARGV数组 9.2.2 ARGV和Null文件句柄 9.2.3 eof函数 9.2.4 -i开关:原位编辑文件 9.3 文件测试 练习8 获得文件句柄 第10章 子程序和函数 10.1 子程序/函数 10.1.1 定义和调用于程序 10.1.2 传送参数 10.1.3 原型 10.1.4 返回值 10.1.5 通过引用调用--别名和Typeglobs 10.1.6 通过指针传送 10.1.7 自动加载 10.1.8 BEGIN和END子程序(开始和结束) 10.1.9 subs函数 练习9 子程序不可缺少 第11章 模块化、打包并发送到库 11.1 包和模块 11.1.1 类比 11.1.2 定义 11.1.3 符号表 11.2 标准Perl库 11.2.1 @INC数组 11.2.2 包和.p1文件 11.2.3 模块和.pm文件 11.2.4 来自CPAN的模块 练习10 将所有的Perl都放入包中 练习11 压缩并放入库中 第12章 这个工作要求引用吗 12.1 什么是引用 12.1.1 符号引用与硬引用 12.1.2 硬引用 12.1.3 引用和匿名变量 12.1.4 嵌套数据结构 12.1.5 引用和子程序 12.1.6 文件句柄引用 12.1.7 ref函数 练习12 指向地址 第13章 面向对象的Perl 13.1 OOP范型 13.1.1 回顾包和模块 13.1.2 一些面向对象的专用术语 13.2 类、对象和方法 13.2.1 类和专用性 13.2.2 对象 13.2.3 bless函数 13.2.4 方法 13.2.5 多态性和动态绑定 13.2.6 析构函数和无用存储单元收集 13.3 继承 13.3.1 @ISA数组和调用方法 13.3.2 $AUTOLOAD,sub AUTOLOAD和UNIVERSAL 13.3.3 派生类 13.3.4 多重继承 13.3.5 面向对象术语--父方法 13.4 公共用户接口:文档编制类 13.4.1 pod文件 13.4.2 pod命令 13.4.3 如何使用pod解释程序 13.4.4 将pod文档翻译成文本 13.4.5 将pod文档翻译成HTML 13.5 使用Perl库中的对象 13.5.1 再看标准Perl库 13.5.2 标准Perl库中面向对象的模块 13.5.3 使用标准Perl库中的模块 练习13 这一课的对象是什么 练习14 函数Pod中的Perl 第14章 tie函数,DBM文件和数据库挂钩 14.1 连接变量与类 14.1.1 tie函数 14.1.2 预定义方法 14.1.3 连接标量 14.1.4 连接数组 14.1.5 连接散列 14.2 DBM文件 14.2.1 创建并赋给DBM文件数据 14.2.2 从DBM文件检索数据 14.2.3 从DBM文件中删除项 第15章 Perl数据库编程 15.1 本章概述 15.2 Perl数据库编程 15.3 使用RDBMS的Perl编程 15.3.1 在Windows系统上安装Perl 15.3.2 使用PPM在Windows系统上安装Perl模块 15.3.3 安装RDBMS 15.3.4 为MMS范例创建DSN 15.4 使用ADO和DBI访问MSS 15.4.1 Microsoft SQL Server--范例15-1和15-3的查询 15.4.2 范例15-1:ex1.p1在MS SQL Server上的ADO简单查询,DSN 15.4.3 执行DDL和DML操作 15.4.4 范例15-2:ex2.p1 MSS上persons.sql的Perl ADO,无DSN 15.4.5 范例15-3:ex3.p1 MS SQL Server上的Perl DBI范例 15.4.6 范例15-4:ex4.p1 MSS上persons.sql的Perl DBl 15.5 使用ADO和DBI访问Oracle 15.5.1 Oracle--范例15-5(ADO)和15-7(DBI)的简单查询 15.5.2 为Oracle范例创建DSN 15.5.3 范例15-5:ex5.p1 Oracle上的ADO简单查询,DSN 15.5.4 在Oracle上执行DDL和DML操作 15.5.5 范例15-6:ex6.pl Oracle上persons.sql的Perl ADO,无DSN 15.5.6 范例15-7:ex7.pl Oracle上的Perl DBI简单查询 15.5.7 范例15-8:ex8.ploracle上persons.sql的Perl DBI 15.6 练习:非编程 练习15 使用MSS 练习16 在MSS中执行persons.p1 练习17 使用Oracle 练习18 在Oracle中执行persons.p1 15.7 参考文献 第16章 与系统接口 16.1 系统调用 16.1.1 目录和文件 16.1.2 目录和文件属性 16.1.3 查找目录和文件 16.1.4 创建目录--mkdir函数 16.1.5 删除目录--rmdir函数 16.1.6 更改目录--chdir函数 16.1.7 通过目录文件句柄访问目录 16.1.8 许可和所有权 16.1.9 硬和软链接 16.1.10 更改文件名 16.1.11 更改访问和修改时间 16.12 文件统计量 16.1.13 低级文件I/O 16.1.14 压缩和解压缩数据 16.2 进程 16.2.1 UNIX进程 16.2.2 Win32进程 16.2.3 环境(UNIX和Windows) 16.2.4 进程和文件句柄 16.2.5 进程优先权和Nice 16.2.6 口令信息 16.2.7 时间和进程 16.2.8 UNIX进程创建 16.2.9 Win32进程创建 16.3 其他与操作系统接口的途径 16.3.1 syscall函数和h2hp脚本 16.3.2 命令替换--备份引号 16.3.3 Shell.pm模块(Perl) 16.3.4 system函数 16.3.5 here documents 16.3.6 Globbing(文件名扩展和通配符) 16.4 错误处理 16.4.1 die函数
-------------------------------------------------------------------------------- 在浏览器中上载文件的方法与实现 用ASP建造自己的聊天室 15种asp使用技巧(中文版) ASP实现分页显示 实现滚动新闻 ASP发送邮件的组件 ASP访问数据库 访问数据库的三种方式 ASP与ADO在Web数据库查询中的应用 不通过数据源完全控制MDB数据库 不用DSN,如何访问数据库? ASP访问SQL Server内置对象 ASP应用中数据库记录的选取与过滤 在ASP中用集合成批操作数据库 IE4的模式对话框设计 编写自己的组件 不用组件上载文件代码具体例子 创建财务组件 从 脚 本 调 用 Finance 组 件 错误80004005信息处理方法 个人主页留言薄的制作 功能强大的内置组件 ASP与ADO在Web数据库查询中的应用 获得 ASP 的中文日期字符串 加密你的ASP页面 简单的网页计数器的制作 让ASP应用系统成为跨平台的应用系统 如何使用ASP在自己的网站建立投票机制 使用Ad Rotator ( 广告轮换器)组件 使用Browser Capabilities(浏览器性能)组件 使用Database Access(数据库访问)组>件 有关游标和加锁方式的看法 在 Web 页面中使用图表(chart)表现数据 HTTP 方式上载文件的ASP实例 在ASP应用中限制同一表单被多次提交 在Web网页上使用VBScript和JScript 编写Web方式上载文件的ASP组件 利用ASP开发网络聊天室 “用ASP建造聊天室”的一点补充 用ASP 实 现 分 页 显 示 用ASP方式实现拥有动态伸缩层次列表的主页
LED点阵单片机万年历 ---- snallie@tom.com 2013.01 ---- 特点: 0. 电路简洁,并口直接驱动,51最小系统+74hc259 0.0 采用单片机芯片定时器计时,无需RTC芯片(预留RTC芯片代码). 1. 阳历:年、月、日、时、分、秒、星期,阳历年限任意长 2. 农历:月日,天干地支,属相,24节气,农历年限范围2010年~2050年 3. 12/24时制显示。 4. 生日问候流动显示 5. 早晚安问候,励志名言显示,农历春节问候。 6. 误差微调/粗调 7. 声控/按键触发流动显示。在MCU的PIN12的下降沿触发。 8. 3键调整:按键M:菜单;按键+:上调;按键-:下调 9. 菜单列表: 1. 调整阳历年份 (00~99) 2. 调整阳历月份 (1~12) 3. 调整阳历日期 (1~31) 4. 调整小时 (0~23) 5. 调整分钟 (0~59) 6. 调整秒数 (0~59) 7. 调整阳历世纪(即年份高2位) (00~99) 8. 调整流动显示的分钟间隔(默认为10,即每隔10分钟流动显示一次全部时间及日历信息)(1~59) 9. 调整12/24时制(默认24时制) 10. 调整生日月份 (1~12) 11. 调整生日日期 (1~31) 12. 调整主屏秒点跳动的关闭或开启 13 调整主屏"星期点"跳动的关闭或开启,("星期点":用主屏的小时分钟的分隔点的二进制点表示星期) 14. 调整休眠模式的关闭或开启 15. 误差粗调 16. 误差微调,精度10ms,范围-1280ms~+1280ms 17. 版本号 10. 农历信息为自动计算得到,无需手工调整,星期信息同此。 11. 加入DS1302 RTC芯片时候,可掉电走时。 12. 一组闹时 13. 声控唤醒休眠模式或通过声控触发流动显示日历信息 14. 可在proteus下进行模拟测试(用MCU并口直接驱动时候,用51test2.DSN文件模拟)

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧