Аватар для semiono
161 / 18 / 0
Регистрация: 14.09.2010
Сообщений: 469
Записей в блоге: 6
1
FASM

Пример применения MSXML

22.10.2011, 18:30. Показов 1787. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Цитата Сообщение от murderer Посмотреть сообщение
Парсить можно через MSXML
Много раз уже слышал об этой библиотеке, но может ктнибудь покажет примерчик для самых маленьких?

Файл
default.oll | %UserProfile%\Application Data\GPSoftware\Directory Opus\Layouts\System\
Code
1
2
3
4
5
6
7
<?xml version="1.0" encoding="UTF-8"?>
<lister_layout flags="1">
    <lister>
        <wp rc="0,25,1280,997" showcmd="1" />
...
    </lister>
</lister_layout>

Например, как зделать
<wp rc="0,25,SM_CXSCREEN,SM_CYSCREEN" showcmd="1" />


Хочу чтоб лёд тронулся!
import msxml8.dll,'MSXML8.DLL'
как инвокать??
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.10.2011, 18:30
Ответы с готовыми решениями:

Пример применения на Лиспе
Пример применения на Лиспе (f 'a '(2 ((b)) ((©)) '((b a d)) 6 7)) T (f 'a '(2 ((b)) ((©)) '((b x d)) 6 7)) NIL

Пример применения constexpr
Здравствуйте, можете привести и объяснить, какой нибудь простенький пример, уместного использования спецификатора constexpr. А то придумать...

Пример применения EF Code First с MySQL
Добрый день! Использую MS VS 2017. Хочу написать код, выбирающий данные из DB MySQL, Code First модель. Что-то с примерами в сети...

2
4176 / 1826 / 218
Регистрация: 06.10.2010
Сообщений: 4,111
23.10.2011, 18:48 2
Кажется получилось
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
format PE GUI 4.0
entry start
include 'include\win32ax.inc'
 
CLSCTX_INPROC_SERVER=1
VT_BSTR             =8
 
struct VARIANT
  vt              rw 1
  wReserved1      rw 1
  wReserved2      rw 1
  wReserved3      rw 1
  value           rq 1
ends
 
interface IXMLDOMNode,\
  QueryInterface,\
  AddRef,\
  Release,\
  GetTypeInfoCount,\      ;(Count: Integer);
  GetTypeInfo,\           ;(Index,LocaleID: Integer;TypeInfo);
  GetIDsOfNames,\         ;(IID: TGUID;Names: Pointer;NameCount,LocaleID: Integer;DispIDs: Pointer);
  Invoke,\                ;(DispID: Integer;IID: TGUID;LocaleID: Integer;Flags: Word;Params; VarResult,ExcepInfo,ArgErr: Pointer);
  Get_nodeName,\          ;: WideString; safecall;
  Get_nodeValue,\         ;: OleVariant; safecall;
  Set_nodeValue,\         ;(value: OleVariant); safecall;
  Get_nodeType,\          ;: DOMNodeType; safecall;
  Get_parentNode,\        ;: IXMLDOMNode; safecall;
  Get_childNodes,\        ;: IXMLDOMNodeList; safecall;
  Get_firstChild,\        ;: IXMLDOMNode; safecall;
  Get_lastChild,\         ;: IXMLDOMNode; safecall;
  Get_previousSibling,\   ;: IXMLDOMNode; safecall;
  Get_nextSibling,\       ;: IXMLDOMNode; safecall;
  Get_attributes,\        ;: IXMLDOMNamedNodeMap; safecall;
  insertBefore,\          ;(const newChild: IXMLDOMNode; refChild: OleVariant): IXMLDOMNode; safecall;
  replaceChild,\          ;(const newChild: IXMLDOMNode; const oldChild: IXMLDOMNode): IXMLDOMNode; safecall;
  removeChild,\           ;(const childNode: IXMLDOMNode): IXMLDOMNode; safecall;
  appendChild,\           ;(const newChild: IXMLDOMNode): IXMLDOMNode; safecall;
  hasChildNodes,\         ;: WordBool; safecall;
  Get_ownerDocument,\     ;: IXMLDOMDocument; safecall;
  cloneNode,\             ;(deep: WordBool): IXMLDOMNode; safecall;
  Get_nodeTypeString,\    ;: WideString; safecall;
  Get_text,\              ;: WideString; safecall;
  Set_text,\              ;(const text: WideString); safecall;
  Get_specified,\         ;: WordBool; safecall;
  Get_definition,\        ;: IXMLDOMNode; safecall;
  Get_nodeTypedValue,\    ;: OleVariant; safecall;
  Set_nodeTypedValue,\    ;(typedValue: OleVariant); safecall;
  Get_dataType,\          ;: OleVariant; safecall;
  Set_dataType,\          ;(const dataTypeName: WideString); safecall;
  Get_xml,\               ;: WideString; safecall;
  transformNode,\         ;(const stylesheet: IXMLDOMNode): WideString; safecall;
  selectNodes,\           ;(const queryString: WideString): IXMLDOMNodeList; safecall;
  selectSingleNode,\      ;(const queryString: WideString): IXMLDOMNode; safecall;
  Get_parsed,\            ;: WordBool; safecall;
  Get_namespaceURI,\      ;: WideString; safecall;
  Get_prefix,\            ;: WideString; safecall;
  Get_baseName,\          ;: WideString; safecall;
  transformNodeToObject   ;(const stylesheet: IXMLDOMNode; outputObject: OleVariant); safecall;
 
interface IXMLDOMDocument,\
  QueryInterface,\
  AddRef,\
  Release,\
  GetTypeInfoCount,\            ;(Count: Integer);
  GetTypeInfo,\                 ;(Index,LocaleID: Integer;TypeInfo);
  GetIDsOfNames,\               ;(IID: TGUID;Names: Pointer;NameCount,LocaleID: Integer;DispIDs: Pointer);
  Invoke,\                      ;(DispID: Integer;IID: TGUID;LocaleID: Integer;Flags: Word;Params; VarResult,ExcepInfo,ArgErr: Pointer);
  Get_nodeName,\                ;: WideString; safecall;
  Get_nodeValue,\               ;: OleVariant; safecall;
  Set_nodeValue,\               ;(value: OleVariant); safecall;
  Get_nodeType,\                ;: DOMNodeType; safecall;
  Get_parentNode,\              ;: IXMLDOMNode; safecall;
  Get_childNodes,\              ;: IXMLDOMNodeList; safecall;
  Get_firstChild,\              ;: IXMLDOMNode; safecall;
  Get_lastChild,\               ;: IXMLDOMNode; safecall;
  Get_previousSibling,\         ;: IXMLDOMNode; safecall;
  Get_nextSibling,\             ;: IXMLDOMNode; safecall;
  Get_attributes,\              ;: IXMLDOMNamedNodeMap; safecall;
  insertBefore,\                ;(const newChild: IXMLDOMNode; refChild: OleVariant): IXMLDOMNode; safecall;
  replaceChild,\                ;(const newChild: IXMLDOMNode; const oldChild: IXMLDOMNode): IXMLDOMNode; safecall;
  removeChild,\                 ;(const childNode: IXMLDOMNode): IXMLDOMNode; safecall;
  appendChild,\                 ;(const newChild: IXMLDOMNode): IXMLDOMNode; safecall;
  hasChildNodes,\               ;: WordBool; safecall;
  Get_ownerDocument,\           ;: IXMLDOMDocument; safecall;
  cloneNode,\                   ;(deep: WordBool): IXMLDOMNode; safecall;
  Get_nodeTypeString,\          ;: WideString; safecall;
  Get_text,\                    ;: WideString; safecall;
  Set_text,\                    ;(const text: WideString); safecall;
  Get_specified,\               ;: WordBool; safecall;
  Get_definition,\              ;: IXMLDOMNode; safecall;
  Get_nodeTypedValue,\          ;: OleVariant; safecall;
  Set_nodeTypedValue,\          ;(typedValue: OleVariant); safecall;
  Get_dataType,\                ;: OleVariant; safecall;
  Set_dataType,\                ;(const dataTypeName: WideString); safecall;
  Get_xml,\                     ;: WideString; safecall;
  transformNode,\               ;(const stylesheet: IXMLDOMNode): WideString; safecall;
  selectNodes,\                 ;(const queryString: WideString): IXMLDOMNodeList; safecall;
  selectSingleNode,\            ;(const queryString: WideString): IXMLDOMNode; safecall;
  Get_parsed,\                  ;: WordBool; safecall;
  Get_namespaceURI,\            ;: WideString; safecall;
  Get_prefix,\                  ;: WideString; safecall;
  Get_baseName,\                ;: WideString; safecall;
  transformNodeToObject,\       ;(const stylesheet: IXMLDOMNode; outputObject: OleVariant); safecall;
  Get_doctype,\                 ;: IXMLDOMDocumentType; safecall;
  Get_implementation,\          ;: IXMLDOMImplementation; safecall;
  Get_documentElement,\         ;: IXMLDOMElement; safecall;
  Set_documentElement,\         ;(const DOMElement: IXMLDOMElement); safecall;
  createElement,\               ;(const tagName: WideString): IXMLDOMElement; safecall;
  createDocumentFragment,\      ;: IXMLDOMDocumentFragment; safecall;
  createTextNode,\              ;(const data: WideString): IXMLDOMText; safecall;
  createComment,\               ;(const data: WideString): IXMLDOMComment; safecall;
  createCDATASection,\          ;(const data: WideString): IXMLDOMCDATASection; safecall;
  createProcessingInstruction,\ ;(const target: WideString; const data: WideString): IXMLDOMProcessingInstruction; safecall;
  createAttribute,\             ;(const name: WideString): IXMLDOMAttribute; safecall;
  createEntityReference,\       ;(const name: WideString): IXMLDOMEntityReference; safecall;
  getElementsByTagName,\        ;(const tagName: WideString): IXMLDOMNodeList; safecall;
  createNode,\                  ;(type_: OleVariant; const name: WideString; const namespaceURI: WideString): IXMLDOMNode; safecall;
  nodeFromID,\                  ;(const idString: WideString): IXMLDOMNode; safecall;
  load,\                        ;(xmlSource: OleVariant): WordBool; safecall;
  Get_readyState,\              ;: Integer; safecall;
  Get_parseError,\              ;: IXMLDOMParseError; safecall;
  Get_url,\                     ;: WideString; safecall;
  Get_async,\                   ;: WordBool; safecall;
  Set_async,\                   ;(isAsync: WordBool); safecall;
  abort,\                       ;; safecall;
  loadXML,\                     ;(const bstrXML: WideString): WordBool; safecall;
  save,\                        ;(desination: OleVariant); safecall;
  Get_validateOnParse,\         ;: WordBool; safecall;
  Set_validateOnParse,\         ;(isValidating: WordBool); safecall;
  Get_resolveExternals,\        ;: WordBool; safecall;
  Set_resolveExternals,\        ;(isResolving: WordBool); safecall;
  Get_preserveWhiteSpace,\      ;: WordBool; safecall;
  Set_preserveWhiteSpace,\      ;(isPreserving: WordBool); safecall;
  Set_onreadystatechange,\      ;(Param1: OleVariant); safecall;
  Set_ondataavailable,\         ;(Param1: OleVariant); safecall;
  Set_ontransformnode           ;(Param1: OleVariant); safecall;
 
interface IXMLDOMElement,\
  QueryInterface,\
  AddRef,\
  Release,\
  GetTypeInfoCount,\      ;(Count: Integer);
  GetTypeInfo,\           ;(Index,LocaleID: Integer;TypeInfo);
  GetIDsOfNames,\         ;(IID: TGUID;Names: Pointer;NameCount,LocaleID: Integer;DispIDs: Pointer);
  Invoke,\                ;(DispID: Integer;IID: TGUID;LocaleID: Integer;Flags: Word;Params; VarResult,ExcepInfo,ArgErr: Pointer);
  Get_nodeName,\          ;: WideString; safecall;
  Get_nodeValue,\         ;: OleVariant; safecall;
  Set_nodeValue,\         ;(value: OleVariant); safecall;
  Get_nodeType,\          ;: DOMNodeType; safecall;
  Get_parentNode,\        ;: IXMLDOMNode; safecall;
  Get_childNodes,\        ;: IXMLDOMNodeList; safecall;
  Get_firstChild,\        ;: IXMLDOMNode; safecall;
  Get_lastChild,\         ;: IXMLDOMNode; safecall;
  Get_previousSibling,\   ;: IXMLDOMNode; safecall;
  Get_nextSibling,\       ;: IXMLDOMNode; safecall;
  Get_attributes,\        ;: IXMLDOMNamedNodeMap; safecall;
  insertBefore,\          ;(const newChild: IXMLDOMNode; refChild: OleVariant): IXMLDOMNode; safecall;
  replaceChild,\          ;(const newChild: IXMLDOMNode; const oldChild: IXMLDOMNode): IXMLDOMNode; safecall;
  removeChild,\           ;(const childNode: IXMLDOMNode): IXMLDOMNode; safecall;
  appendChild,\           ;(const newChild: IXMLDOMNode): IXMLDOMNode; safecall;
  hasChildNodes,\         ;: WordBool; safecall;
  Get_ownerDocument,\     ;: IXMLDOMDocument; safecall;
  cloneNode,\             ;(deep: WordBool): IXMLDOMNode; safecall;
  Get_nodeTypeString,\    ;: WideString; safecall;
  Get_text,\              ;: WideString; safecall;
  Set_text,\              ;(const text: WideString); safecall;
  Get_specified,\         ;: WordBool; safecall;
  Get_definition,\        ;: IXMLDOMNode; safecall;
  Get_nodeTypedValue,\    ;: OleVariant; safecall;
  Set_nodeTypedValue,\    ;(typedValue: OleVariant); safecall;
  Get_dataType,\          ;: OleVariant; safecall;
  Set_dataType,\          ;(const dataTypeName: WideString); safecall;
  Get_xml,\               ;: WideString; safecall;
  transformNode,\         ;(const stylesheet: IXMLDOMNode): WideString; safecall;
  selectNodes,\           ;(const queryString: WideString): IXMLDOMNodeList; safecall;
  selectSingleNode,\      ;(const queryString: WideString): IXMLDOMNode; safecall;
  Get_parsed,\            ;: WordBool; safecall;
  Get_namespaceURI,\      ;: WideString; safecall;
  Get_prefix,\            ;: WideString; safecall;
  Get_baseName,\          ;: WideString; safecall;
  transformNodeToObject,\ ;(const stylesheet: IXMLDOMNode; outputObject: OleVariant); safecall;
  Get_tagName,\           ;: WideString; safecall;
  getAttribute,\          ;(const name: WideString): OleVariant; safecall;
  setAttribute,\          ;(const name: WideString; value: OleVariant); safecall;
  removeAttribute,\       ;(const name: WideString); safecall;
  getAttributeNode,\      ;(const name: WideString): IXMLDOMAttribute; safecall;
  setAttributeNode,\      ;(const DOMAttribute: IXMLDOMAttribute): IXMLDOMAttribute; safecall;
  removeAttributeNode,\   ;(const DOMAttribute: IXMLDOMAttribute): IXMLDOMAttribute; safecall;
  getElementsByTagName,\  ;(const tagName: WideString): IXMLDOMNodeList; safecall;
  normalize               ;;safecall;
 
section '' code readable writeable executable import data
 
library OLE32,'OLE32.dll',\
        KERNEL32,'KERNEL32.DLL',\
        OLEAUT32,'OLEAUT32.DLL'
 
import OLE32,\
       CoInitialize,'CoInitialize',\
       CoCreateInstance,'CoCreateInstance'
 
import OLEAUT32,\
       SysReAllocString,'SysReAllocString'
 
import KERNEL32,\
       ExitProcess,'ExitProcess'
 
start:
  invoke  SysReAllocString,bstrpath,path
  invoke  SysReAllocString,bstrvalue,value
  invoke  CoInitialize,0
  invoke  CoCreateInstance,CLSID_DOMDocument,0,CLSCTX_INPROC_SERVER,IID_IXMLDOMDocument,DOMDocument
  cominvk DOMDocument,load,VT_BSTR,0,[bstrpath],0,DOMNode
  cominvk DOMDocument,selectSingleNode,node,DOMNode
  cominvk DOMNode,QueryInterface,IID_IXMLDOMElement,DOMElement
  cominvk DOMElement,setAttribute,attribute,VT_BSTR,0,[bstrvalue],0
  cominvk DOMDocument,save,VT_BSTR,0,[bstrpath],0
  invoke  ExitProcess,0
 
CLSID_DOMDocument   db 090h,0BFh,033h,029h,036h,07Bh,0D2h,011h,0B2h,00Eh,000h,0C0h,04Fh,098h,03Eh,060h
IID_IXMLDOMDocument db 081h,0BFh,033h,029h,036h,07Bh,0D2h,011h,0B2h,00Eh,000h,0C0h,04Fh,098h,03Eh,060h
IID_IXMLDOMElement  db 086h,0BFh,033h,029h,036h,07Bh,0D2h,011h,0B2h,00Eh,000h,0C0h,04Fh,098h,03Eh,060h
path                du 'D:\1.xml',0
node                du 'lister_layout/lister/wp',0
attribute           du 'rc',0
value               du '0,25,SM_CXSCREEN,SM_CYSCREEN',0
bstrpath            rd 1
bstrvalue           rd 1
DOMDocument         IXMLDOMDocument
DOMNode             IXMLDOMNode
DOMElement          IXMLDOMElement
1
 Аватар для semiono
161 / 18 / 0
Регистрация: 14.09.2010
Сообщений: 469
Записей в блоге: 6
24.10.2011, 04:18  [ТС] 3
Огромное спасибо!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.10.2011, 04:18
Помогаю со студенческими работами здесь

Указатели и ссылки - разобрать пример применения
У меня всё очень плохо с указателями и ссылками, не понимаю как они работают и тд. Нужно объяснение вот этого кода: int Age = 30; int...

Нужен пример применения и использования процедуры chDir
Помогите пожалуйста нужен пример применения и использования procedure chDir(path:string), которая позволяет изменить текущий каталог

Пример применения оператора typeid к шаблонным классам
В книге Шилдт Г. С++ Базовый курс, 3-е издание,2010 приведен пример применения оператора typeid к шаблонным классам стр. 481-482, вот...

Нужен пример применения паттернов MVC, MVP, MVVM
Я знаю, что они из себя представляют. Но что-то нахожу в них одни неудобства. Эксперимента ради запустил пару проектов - один пишу как...

Где можно найти пример применения массивного цикла
Подскажите, где можно найти пример применения массивного цикла Массивный цикл (for &lt;переменная&gt; in &lt;массив&gt; do...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Опции темы

Новые блоги и статьи
Protobuf в Go и новый Opaque API
golander 15.03.2025
Распределенные системы опираются на эффективные протоколы обмена данными — о чем вы, скорее всего, прекрасно знаете, если работаете с микросервисной архитектурой. Protocol Buffers (Protobuf) от. . .
Преобразование строк в C++: std::from_chars от C++17 до C++26
NullReferenced 15.03.2025
Конвертация строк в числа — задача, с которой сталкивается практически каждый C++ разработчик. Несмотря на кажущуюся простоту, эта операция таит множество подводных камней и неочевидных последствий. . .
Управление памятью в Java и новые сборщики мусора
Javaican 15.03.2025
Эффективное управление памятью всегда было ахиллесовой пятой высоконагруженных Java-приложений. При разработке на Java мы обычно полагаемся на автоматическое управление памятью через сборщики мусора. . .
Angular или Svelte - что выбрать?
Reangularity 15.03.2025
Во фронтенд-разработке Angular и Svelte представляют собой два совершенно разных подхода к решению схожих задач. Один — полноценный, мощный монолит с корпоративной поддержкой, другой — компактный,. . .
Spring Cloud микросервисы: обнаружение и отслеживание
Javaican 15.03.2025
В разработке корпоративных приложений всё больше команд обращают внимание на микросервисную архитектуру. Но с этой архитектурой приходят и специфичные трудности: как сервисам находить друг друга в. . .
Запуск контейнера Docker в облаке
Mr. Docker 15.03.2025
Что такое Docker-контейнер? Если коротко — это легковесный, автономный пакет, содержащий всё необходимое для запуска приложения: код, зависимости, библиотеки и конфигурации. Когда мы говорим о. . .
Осваиваем Kubernetes: Подробная шпаргалка
Mr. Docker 15.03.2025
Kubernetes — это открытая платформа для автоматизации развертывания, масштабирования и управления контейнеризированными приложениями. Он был создан для решения проблем, с которыми сталкиваются. . .
Лучшие PHP REST API фреймворки
Jason-Webb 15.03.2025
Современные PHP REST API фреймворки предлагают большой набор функциональности: от автоматической валидации данных и управления маршрутизацией до генерации документации и интеграции с различными. . .
Многопоточность в Java с Project Loom: виртуальные или обычные потоки
Javaican 15.03.2025
Многопоточность всегда была одноим из основных элементов в разработке современного программного обеспечения. Она позволяет приложениям обрабатывать несколько задач одновременно, что критично для. . .
Что нового в Swift 6 и особенности миграции
mobDevWorks 15.03.2025
Swift 6 — это новый крупный релиз языка программирования от Apple, анонсированный на WWDC 2024. Если вы следили за эволюцией Swift, то наверняка заметили, что многие значимые возможности, которые. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru