Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
semiono
12 / 12 / 0
Регистрация: 14.09.2010
Сообщений: 287
Записей в блоге: 6
1

MSXML (Fasm)

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

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

Файл
default.oll | %UserProfile%\Application Data\GPSoftware\Directory Opus\Layouts\System\
Код
<?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
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2011, 18:30
Ответы с готовыми решениями:

fasm
org 100h mov cl,0 mov ch,255 cikl: mov ah,0eh shl ch,1 jc perivod mov...

компилятор fasm
Просьба,пожалуйста прокомментируйте,что делает компилятор в двух случаях...

прерывание в fasm
Я создал программу вывода на экран веке кода клавиши. С помощью int 16h .но за...

FASM WinInet
Решил попробовать написать программу, которая бы выводила первые 1023...

ShellExecuteEx(fasm)
Превед! Изучаю лениво msdn api через флат ассемблер. Очередной раз ступор из-за...

2
murderer
3326 / 1472 / 135
Регистрация: 06.10.2010
Сообщений: 3,233
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
12 / 12 / 0
Регистрация: 14.09.2010
Сообщений: 287
Записей в блоге: 6
24.10.2011, 04:18  [ТС] 3
Огромное спасибо!!!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.10.2011, 04:18

WinApi и fasm
Есть ли толковая документации по использованию winapi в fasm'e ?

Константы (fasm)
Как мне зделать такое? const.inc: ; секцию инклюда не знаю как...

ИГРА FASM
Помогите пожалуйста напишите мне игру на FASM. Надо очень. Игра OpenGL. Спасибо...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru