程序有不少固定的数据,有两个字段,不想放到数据库中(怕人修改),也不想放在程序本体EXE中,如何放到DLL中呢?举例:有科目ID\科目名称两个字段,想将这两个字段数据放到DLL中存放,使用时再从DLL中创建.用枚举型?还是用collection?

解决方案 »

  1.   

    使用Collection吧
    在类模块添加一个Connection对象,然后把读取到的对象加入的Connection对象里面去.
      

  2.   

    不会用Connection
    昨天试了下,创建了个DLL,添加了类,在 Class_Initialize()中添加所需要的数据
    但发现在使用时只能读出item值,我想把key值也读出来.例如我想通过一个for each把collection对象中的key和item值都读出来,再添加到所需要的数据库中.
      

  3.   

    用数组吧,用collection没有必要
      

  4.   

    //但发现在使用时只能读出item值,我想把key值也读出来.那就用数组,如果你很懒的话,就先引用Microsoft Scripting Runtime,然后用里面的 Dictionary:
    Dim a As New Dictionary
    Dim i As Long
    For i = 1 To 100
        a.Add "key " & CStr(i), "item " & CStr(i)
    Next
    '访问key
    Dim mkey()
    mkey = a.Keys
    For i = 0 To UBound(mkey)
        Debug.Print mkey(i)
    Next
    '访问item
    Dim mitem()
    mitem = a.Items
    For i = 0 To UBound(mitem)
        Debug.Print mitem(i)
    Next
      

  5.   

    试用了rainstormmaster(暴风雨 v2.0) 方法,感觉不错.
    但有两个顾虑
    1、速度会不会有所影响;
    2、就是我在DLL中引用了其他的DLL,会不会有些麻烦?
    就像我这个贴子的问题一样
    http://community.csdn.net/Expert/topic/4603/4603302.xml?temp=.7080347
      

  6.   

    1、在Dll中加入资源文件
    2、将你所说的固定数据放入资源文件中
    3、在Dll中提供访问这些数据的方法
      

  7.   

    rainstormmaster(暴风雨  v2.0) 
    //速度上肯定要慢一些,不过,如果你的数据不是特别多的话,问题不大  
    数据量不大.fj182(阿花)
    可以请你帮忙详细说说吗?或者提供个例子.麻烦你啦
      

  8.   

    搞明白你的意思了。
    1、定义如下SQL语句,如:SQL="select 1 as 科目ID,'科目1' as 科目名称 union
         select 2,'科目2' union
         select 3,'科目3' ..."2、保存到资源文件中。
    3、程序运行时从资源文件中取出SQL语句执行即可得到一包含固定数据的记录集。