欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → [原创]VBS读写注册表,全局变量,INI文件和数据库的示例

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有12056人关注过本帖树形打印复制链接

主题:[原创]VBS读写注册表,全局变量,INI文件和数据库的示例

帅哥哟,离线,有人找我吗?
z7c9
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
[原创]VBS读写注册表,全局变量,INI文件和数据库的示例  发帖心情 Post By:2013/6/1 12:57:54 [只看该作者]

'测试注册表读写
Sub TestRegistry()
 Set registry = CreateObject("stock.registry")
 Call registry.Open("software\weisoft\金字塔\settings")
 Call registry.WriteInt("id",123)
 result=registry.ReadInt("id")
 application.msgout result
End Sub

 

 

'测试全局变量读写
Sub TestExtData()
 Call document.setextdata("id",123)
 result=document.getextdata("id")
 application.msgout result
End Sub

 

 

'测试INI文件读写
Sub TestInI()
 Call document.WritePrivateProfileFloat("settings","id",123,"d:\\settings.ini")
 result=document.GetPrivateProfileFloat("settings","id",1,"d:\\settings.ini")
 application.msgout result
End Sub

 

 

'测试数据库读写
Sub TestDatabase()
 Set adoconnection=CreateObject("adodb.connection")
 adoconnection.Open("provider=microsoft.jet.oledb.4.0;data source="&application.apppath&"\db1.mdb")
 adoconnection.Execute("insert into main(id) values(123)")
 Set rs = adoconnection.Execute("select id from main")
 application.msgout rs("id").Value
 adoconnection.close
End Sub

[此贴子已经被作者于2013-6-1 12:58:07编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2013/6/1 17:12:23 [只看该作者]

不错,学习了


金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
solarhe2006
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:252 积分:1001 威望:0 精华:0 注册:2010/2/15 16:47:58
  发帖心情 Post By:2013/6/9 10:09:01 [只看该作者]

'测试注册表读写
Sub TestRegistry()
 Set registry = CreateObject("stock.registry")
 Call registry.Open("software\weisoft\金字塔\settings")
 Call registry.WriteInt("id",123)
 result=registry.ReadInt("id")
 application.msgout result
End Sub

 

 

'测试全局变量读写
Sub TestExtData()
 Call document.setextdata("id",123)
 result=document.getextdata("id")
 application.msgout result
End Sub

 

 

'测试INI文件读写
Sub TestInI()
 Call document.WritePrivateProfileFloat("settings","id",123,"d:\\settings.ini")
 result=document.GetPrivateProfileFloat("settings","id",1,"d:\\settings.ini")
 application.msgout result
End Sub

 

 

'测试数据库读写
Sub TestDatabase()
 Set adoconnection=CreateObject("adodb.connection")
 adoconnection.Open("provider=microsoft.jet.oledb.4.0;data source="&application.apppath&"\db1.mdb")
 adoconnection.Execute("insert into main(id) values(123)")
 Set rs = adoconnection.Execute("select id from main")
 application.msgout rs("id").Value
 adoconnection.close
End Sub


 回到顶部
帅哥哟,离线,有人找我吗?
z7c9
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2013/6/10 9:42:11 [只看该作者]

c++版:

 

#include <QCoreApplication>
#include <QDebug>
#include <QSettings>
#include <QtSql/QSqlDatabase>
#include <QtSql/QSqlQuery>
#include <QFile>

//测试注册表读写
void testRegistry(){
    QString path = "software\\weisoft\\金字塔\\settings";

    QSettings settings(path,QSettings::NativeFormat);

    settings.setValue("myid",12345);

    qDebug() << settings.value("myid").toInt();
}

//测试INI文件读写
void testINI(){
    QString path = "d:\\mysettings.ini";

    QSettings settings(path,QSettings::IniFormat);

    settings.setValue("myid",12345);

    qDebug() << settings.value("myid").toInt();
}

//测试全局变量读写
void testExtData(){
    QSettings settings("上海中期","北京营业部");
    settings.setValue("myid",12345);
    qDebug() << settings.value("myid").toInt();
}

//测试数据库读写
void testDatabase(){
    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");

    db.setDatabaseName("mytest.db");

    if(!db.open()){
        qDebug() << "db is not open";
    }else{
        QSqlQuery query;
        query.exec("create table main(id varchar)");
        query.exec("insert into main values(12345)");
        query.exec("select * from main");
        while(query.next()){
            qDebug() << query.value(0).toInt();
        }
    }
}

//测试CSV文件读写
void testCSV(){
    QFile csvFile("d:\\mytest.csv");

    if(csvFile.open(QIODevice::WriteOnly)){
        csvFile.write("1,2,3,4,5");
        csvFile.close();
    }

    if(csvFile.open(QIODevice::ReadOnly)){
        QTextStream in(&csvFile);
        QString result = in.readLine();
        qDebug() << result;
        csvFile.close();
    }
}

int main(int argc, char *argv[]){
    QCoreApplication a(argc, argv);
    testRegistry();
    testExtData();
    testINI();
    testDatabase();
    testCSV();
    return a.exec();
}

[此贴子已经被作者于2013/6/10 9:43:28编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
z7c9
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2014/11/1 12:03:36 [只看该作者]

Python版:

#测试注册表读写
def testRegistry():
    import winreg
    key = winreg.CreateKey(winreg.HKEY_CURRENT_USER,r"software\weisoft\金字塔\settings")
    winreg.SetValueEx(key,"id",0,winreg.REG_DWORD,123)
    print(winreg.QueryValueEx(key,"id")[0])

#测试INI文件读写
def testINI():
    import configparser
    config = configparser.ConfigParser()
    config.add_section("settings")
    config.set("settings","myid","12345")
    config.write(open("mysettings.ini","w"))
    print(config.get("settings","myid"))

#测试CSV文件读写
def testCSV():
    import csv
    with open("test.csv","w") as csvfile:
        csvwriter = csv.writer(csvfile)
        csvwriter.writerow(['1','2','3','4','5'])

    with open("test.csv","r") as csvfile:
        csvreader = csv.reader(csvfile)
        for row in csvreader:
            print(row)

#测试数据库读写
def testDatabase():
    import sqlite3
    conn = sqlite3.connect("test.db")
    c = conn.cursor()
    c.execute("""create table main(id varchar)""")
    c.execute("""insert into main values(12345)""")
    rec = c.execute("""select * from main""")
    print(c.fetchall())

testRegistry()
testINI()
testCSV()
testDatabase()


 回到顶部
帅哥哟,离线,有人找我吗?
guotx2010
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蜘蛛侠 帖子:1366 积分:5210 威望:0 精华:7 注册:2010/12/11 18:00:33
  发帖心情 Post By:2014/11/1 17:59:15 [只看该作者]

PYTHON在金字塔下能用吗?


 回到顶部
帅哥哟,离线,有人找我吗?
z7c9
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2015/5/16 22:17:36 [只看该作者]

AutoIt版

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20150516221745.png
图片点击可在新窗口打开查看


[此贴子已经被作者于2015/5/16 22:19:17编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
z7c9
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2016/1/5 0:13:53 [只看该作者]

Poco版:

#include <iostream>
#include <fstream>
#include <ostream>
#include <istream>
#include <Poco/Util/IniFileConfiguration.h>
#include <Poco/Util/PropertyFileConfiguration.h>
#include <Poco/StringTokenizer.h>

using namespace std;
using Poco::AutoPtr;
using Poco::Util::IniFileConfiguration;
using Poco::Util::PropertyFileConfiguration;
using Poco::StringTokenizer;

//测试INI文件读取
void testINI(){
    AutoPtr<IniFileConfiguration> pConf = new IniFileConfiguration("mytest.ini");
    cout << pConf->getString("myid", "test") << endl;
}

//测试Properties文件读写
void testProperties(){
    AutoPtr<PropertyFileConfiguration> pConf = new PropertyFileConfiguration("mytest.properties");
    pConf->setInt("myid", 12345);
    pConf->save("mytest.properties");
    cout << pConf->getInt("myid") << endl;
}

//测试CSV文件读写
void testCSV(){
    ofstream ofs("mytest.csv");
    ofs << "1,2,3,4,5" << endl;

    ifstream ifs("mytest.csv");

    string line;

    while(getline(ifs, line)){
        StringTokenizer st(line, ",");
        for(string s : st){
            cout << s << ", ";
        }
        cout << endl;
    }
}

int main(){
    testINI();
    testProperties();
    testCSV();
}
			


 回到顶部
帅哥哟,离线,有人找我吗?
z7c9
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2016/1/5 10:45:50 [只看该作者]

#include <iostream>
#include <sstream>
#include <Poco/Timestamp.h>
#include <Poco/LocalDateTime.h>
#include <Poco/DateTimeFormat.h>
#include <Poco/DateTimeFormatter.h>
#include <Poco/DateTimeParser.h>

using namespace std;
using namespace Poco;

int main(){
    int tzd;
    DateTime dt;

    DateTimeParser::parse(DateTimeFormat::SORTABLE_FORMAT, "2015-11-21 21:44:59", dt, tzd);
    cout << DateTimeFormatter::format(dt, DateTimeFormat::SORTABLE_FORMAT) << endl;

    Timespan ts;
    ts.assign(60 * 5, 0);

    DateTime new_dt = dt + ts;

    cout << DateTimeFormatter::format(new_dt, DateTimeFormat::SORTABLE_FORMAT) << endl;
}



 回到顶部
帅哥哟,离线,有人找我吗?
z7c9
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2016/7/22 10:27:35 [只看该作者]

EasyQuant
 EasyStrategy
  CTPStrategy
  XSpeedStrategy
  FEMASSTrategy
  TAPStrategy
 EasyData
  CTPTickReceiver
  BarFactory
 EasyTrader
 EasyBacktester

 回到顶部
总数 11 1 2 下一页