青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

JACKY_ZZ[貓貓愛吃魚]

春風拂面兩頰紅,秋葉灑地一片金。 夏荷搖曳一身輕,冬雪覆蓋大地銀。
posts - 30, comments - 123, trackbacks - 0, articles - 0

[C/C++] vole使用的簡單例子

Posted on 2010-12-07 11:02 jacky_zz 閱讀(432) 評論(0)  編輯 收藏 引用 所屬分類: C/C++
stdafx.h
 1 #pragma once
 2 
 3 #include "targetver.h"
 4 
 5 #include <stdio.h>
 6 #include <tchar.h>
 7 #include <windows.h>
 8 #include <string>
 9 
10 #include <vole/vole.hpp>
11 #include <comstl/util/initialisers.hpp>
12 
13 using vole::object;
14 using vole::collection;
vword.cpp
  1#include "stdafx.h"
  2
  3#define HINT _T("please provide a xml file first.\n") \
  4    _T("format is:\n") \
  5    _T("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n") \
  6    _T("<bookmarks>\n") \
  7    _T("\t<bookmark name=\"\" value=\"\"/>\n") \
  8    _T("\t\n") \
  9    _T("\t<bookmark name=\"\" value=\"\"/>\n") \
 10    _T("</bookmarks>") \
 11
 12int _tmain(int argc, _TCHAR* argv[])
 13{
 14    if(argc != 2)
 15    {
 16        MessageBox(GetActiveWindow(), HINT, _T("Error"), MB_OK | MB_ICONERROR);
 17        return 0;
 18    }

 19
 20    wchar_t filename[MAX_PATH];
 21
 22#ifdef _UNICODE
 23    // wcscpy_s(filename, MAX_PATH, _T("./1.xml"));
 24    wcscpy_s(filename, MAX_PATH, argv[1]);
 25#else
 26    MultiByteToWideChar(CP_ACP, 0, argv[1], strlen(argv[1]), filename, MAX_PATH);
 27#endif
 28
 29    // initialization vole
 30    comstl::com_init init;
 31
 32    // create xml DOM object
 33    object xml = object::create("Msxml2.DOMDocument");
 34    bool success = xml.invoke_method<bool>(L"load", filename);
 35    if(!success)
 36        return 0;
 37
 38    // get root element
 39    object documentElement = xml.get_property<object>(L"documentElement");
 40
 41    // get child nodes of root element
 42    object childNodes = documentElement.get_property<object>(L"childNodes");
 43    long length = childNodes.get_property<long>(L"length");
 44
 45    // create word automation object
 46    object word = object::create("Word.Application", CLSCTX_LOCAL_SERVER, vole::coercion_level::naturalPromotion);
 47    word.put_property(L"Visible"false);
 48
 49    // open local word file
 50    collection documents = word.get_property<collection>(L"Documents");
 51    object document = documents.invoke_method<object>(L"Open", L"C:\\1.doc");
 52
 53    // retrieve bookmarks in opened document
 54    collection bookmarks = document.get_property<collection>(L"Bookmarks");
 55    int count = bookmarks.get_property<int>(L"Count");
 56
 57    // starting find bookmark, insert value after bookmark if found
 58    for(long i = 0; i < length; i++)
 59    {
 60        object node = childNodes.get_property<object>(L"item", i);
 61        object attributes = node.get_property<object>(L"attributes");
 62        long attribute_length = attributes.get_property<long>(L"length");
 63
 64        object node1 = attributes.invoke_method<object>(L"getNamedItem", L"name");
 65        object node2 = attributes.invoke_method<object>(L"getNamedItem", L"value");
 66
 67        std::string value1 = node1.get_property<std::string>(L"nodeValue");
 68        std::string value2 = node2.get_property<std::string>(L"nodeValue");
 69
 70        for(int j = 1; j <= count; j++)
 71        {
 72            object bookmark = bookmarks.invoke_method<object>(L"Item", j);
 73            std::string name = bookmark.get_property<std::string>(L"Name");
 74
 75            char* name1 = const_cast<char*>(name.c_str());
 76            char* name2 = const_cast<char*>(value1.c_str());
 77
 78            if(strcmp(name1, name2) == 0)
 79            {
 80                char* value = const_cast<char*>(value2.c_str());
 81                size_t len = strlen(value);
 82
 83                wchar_t* w_value = (wchar_t*)malloc(len * 2 + 1);
 84                MultiByteToWideChar(CP_ACP, 0, value, len, w_value, len);
 85
 86                object range = bookmark.get_property<object>(L"Range");
 87                range.invoke_method_v(L"InsertAfter", (LPCWSTR)w_value);
 88
 89                free(w_value);
 90                w_value = NULL;
 91                value = NULL;
 92
 93                break;
 94            }

 95
 96            name1 = NULL;
 97            name2 = NULL;
 98        }

 99    }

100
101    document.invoke_method_v(L"Save");
102    document.invoke_method_v(L"Close"false);
103    word.invoke_method_v(L"Quit");
104
105    system("pause");
106    return 0;
107}
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            免费成人高清视频| 亚洲毛片一区| 久久久久久亚洲精品中文字幕 | 麻豆成人在线| 欧美成黄导航| 亚洲激情午夜| 亚洲理论在线观看| 夜夜夜久久久| 一区二区三区免费看| 亚洲资源av| 久久深夜福利免费观看| 免费观看日韩av| 欧美日韩在线视频一区二区| 国产精品久久一区二区三区| 国产区欧美区日韩区| 红桃视频国产精品| 日韩视频一区二区三区| 中文在线一区| 久久久人成影片一区二区三区| 欧美黑人国产人伦爽爽爽| 99这里只有久久精品视频| 欧美一区午夜精品| 欧美激情网友自拍| 国产日韩高清一区二区三区在线| 尤物精品国产第一福利三区 | 香蕉久久一区二区不卡无毒影院| 久久精品一区蜜桃臀影院| 亚洲高清一区二区三区| 99精品免费| 欧美一区二区在线看| 欧美激情国产日韩精品一区18| 国产精品午夜久久| 91久久在线观看| 校园春色国产精品| 91久久国产综合久久蜜月精品| 亚洲欧美中文另类| 欧美视频中文字幕在线| 亚洲国产一区二区三区青草影视| 欧美在线三区| 在线亚洲观看| 欧美屁股在线| 亚洲精选视频在线| 免费观看不卡av| 午夜视频久久久| 国产精品国产一区二区| 亚洲美女在线国产| 欧美高清在线视频| 久久久久久久综合日本| 国产精品私拍pans大尺度在线 | 欧美国产成人在线| 亚洲黄网站黄| 欧美高清视频| 久久婷婷国产综合国色天香| 国产日韩精品视频一区| 亚洲综合另类| 亚洲天堂成人在线视频| 欧美性色aⅴ视频一区日韩精品| 亚洲美女视频在线观看| 亚洲激精日韩激精欧美精品| 蜜臀a∨国产成人精品| 狠狠色综合网站久久久久久久| 欧美在线91| 欧美在线不卡视频| 黄色欧美日韩| 欧美1区2区3区| 久久一日本道色综合久久| 一区二区亚洲精品国产| 欧美大香线蕉线伊人久久国产精品| 久久精品国产成人| 狠狠久久婷婷| 亚洲成人直播| 欧美日韩视频一区二区| 亚洲欧美日韩综合| 翔田千里一区二区| 国产一区欧美| 欧美大片18| 欧美精品一二三| 亚洲欧美自拍偷拍| 久久久一二三| 亚洲美女在线观看| 亚洲调教视频在线观看| 国产亚洲欧美色| 牛牛国产精品| 欧美精品www| 一区二区三区**美女毛片| 国产一区二区三区在线观看精品| 欧美有码在线观看视频| 久久久精品国产免大香伊 | 久久久不卡网国产精品一区| 亚洲第一页中文字幕| 亚洲精品色婷婷福利天堂| 国产精品综合网站| 欧美国产欧美亚洲国产日韩mv天天看完整 | 久久久www成人免费精品| 亚洲精品在线二区| 一区二区激情| 一区二区三区在线观看视频| 亚洲国产小视频在线观看| 欧美性色aⅴ视频一区日韩精品| 久久精品国产一区二区三区 | 国产一区观看| 亚洲欧洲精品一区二区精品久久久| 欧美色一级片| 欧美成人精品在线播放| 国产精品任我爽爆在线播放 | 影音先锋亚洲视频| 亚洲性图久久| 亚洲精品网站在线播放gif| 亚洲性夜色噜噜噜7777| 亚洲国产日韩一区| 午夜久久久久| 亚洲一区二区成人在线观看| 久久久久九九视频| 亚洲欧美www| 欧美成人免费全部观看天天性色| 久久国产主播| 欧美日韩国产成人精品| 免费亚洲一区二区| 国产一区二区0| 亚洲视频香蕉人妖| 99精品视频一区| 欧美+日本+国产+在线a∨观看| 久久精品亚洲精品国产欧美kt∨| 欧美人与禽猛交乱配| 亚洲第一色在线| 在线视频成人| 久久精品二区亚洲w码| 欧美一区二区视频在线观看| 欧美体内she精视频在线观看| 亚洲激情社区| 亚洲三级免费| 蜜臀91精品一区二区三区| 免费观看一级特黄欧美大片| 国产亚洲一级| 亚洲欧美日韩国产综合在线 | 国产日韩欧美一区在线 | 国产精品美女在线观看| 日韩天堂在线观看| 亚洲视频视频在线| 欧美日韩亚洲国产精品| 一区二区三区欧美成人| 亚洲影院免费观看| 国产精品久久久久久久浪潮网站 | 亚洲国产高清在线| 久久天堂av综合合色| 欧美 亚欧 日韩视频在线| 亚洲国产成人精品久久| 久久久久久久综合| 欧美成人午夜剧场免费观看| 影音先锋久久资源网| 男人插女人欧美| 亚洲精品一区二区三区福利| 亚洲视频高清| 国产伦精品一区二区三区视频黑人 | 老司机午夜精品视频在线观看| 欧美成年人视频网站欧美| 在线看日韩av| 欧美国产日韩在线| 99re6热只有精品免费观看| 亚洲一区二区在线| 国产婷婷色一区二区三区| 久久久久久一区二区| 亚洲国产一区二区三区a毛片| 一本色道久久88综合亚洲精品ⅰ| 欧美午夜视频在线| 久久国产精品毛片| 91久久精品日日躁夜夜躁欧美| 亚洲午夜激情网页| 国内自拍一区| 欧美激情影音先锋| 欧美一区二区视频免费观看| 欧美激情免费在线| 亚洲一区精彩视频| 伊人久久男人天堂| 欧美日韩在线播放三区四区| 欧美一级网站| 亚洲久久一区| 美日韩精品免费| 亚洲男人av电影| 亚洲高清资源| 国产日韩欧美精品一区| 欧美精品福利在线| 欧美中文字幕第一页| 一区二区三区免费看| 欧美黄色网络| 久久九九国产精品| 亚洲一区在线直播| 亚洲国产婷婷| 国产麻豆9l精品三级站| 欧美日韩另类在线| 嫩模写真一区二区三区三州| 一本色道久久综合亚洲精品高清| 欧美视频在线观看一区| 亚洲视频一二| 亚洲欧洲日韩综合二区| 久久久亚洲高清| 亚洲欧美电影在线观看| 亚洲精品美女免费| 亚洲第一页在线| 国产亚洲成av人片在线观看桃|