ole

How can I determine the default Outlook account?

你说的曾经没有我的故事 提交于 2019-12-02 12:26:15
I'm logging into Outlook 2007 from my application and can enumerate the Accounts .Item[i] objects to look at Account settings. What I'm unable to find is: How can I determine (using the Outlook 2007 object model ) which one of these is the default Outlook account? There is no such thing as Store.StoreAccount as suggested here for Redemption (which I don't use). This SO post does not have an answer Firstly, there are 3 types of accounts - store, mail and address book. Which default account do you need? Secondly, you can use IOlkAccountManaget object (look at it in OutlookSpy - click

storing large numbers of images in ms access

只谈情不闲聊 提交于 2019-12-02 11:07:01
I have a inventory/Contact database where I need to store a lot of images (10k items, 1k people). Now, obviously ole object is out of the question due to the sheer bloat. Is there a better way to do this, such as storing the pathway to the image ( would be stored in a folder with the database) and having that image displayed where I need it(this would be great because some items are repeated)? Is there anyway to do this? (also, i really need to have a filebrowser to the actual image instead of typing the path manually (that would be hell)) Here is a concept Sub Locate_File() Dim fDialog As

Outlook Object Model - Detecting Mailboxes

蓝咒 提交于 2019-12-02 09:57:45
I have a Delphi 2006 BDS application with the following code to iterate outlook mailboxes and then the Inbox and Sent Items within the mailbox: try nameSpace := outlook.GetNameSpace('MAPI'); // load the mailboxes mailbox := NameSpace.Folders; for i := 1 to mailbox.Count do if Pos('MAILBOX', UpperCase(mailbox.Item[i].Name)) > 0 then begin rootNode := trvwOutlookFolders.Items.AddChildObject(nil, mailbox.Item[i].Name, nil); for j := 1 to mailbox.Item[i].Folders.Count do if (Pos('INBOX', UpperCase(mailbox.Item[i].Folders[j].Name)) > 0) or (Pos('SENT ITEMS', UpperCase(mailbox.Item[i].Folders[j]

Saving OLE Objects in Access field with VBA

邮差的信 提交于 2019-12-02 09:17:28
问题 I know that this subject has been covered to large extend, but I have not been able to find a solution to my particular problem. I have a table with a column Attachments of OLE Object data type. The back end of the table is SQL Server table with VARBINARY(MAX) data type for Attachments column. If I right-click on the Attachments field in Access, a menu pops-up with an option to Insert Object... Following this path I could insert a file in the field. The file inserted this way could be opened

How would I do TDD with a COM OLE object

喜欢而已 提交于 2019-12-02 05:00:49
问题 I have an OLE COM object that trying to write a wrapper for, I have decided to start to use TDD to write the code for it as I believe that it will give me a better sense of direction with what I'm try to write. The COM object has a interface like this: Interface Mapinfo Sub [Do](ByVal cmd As String) Function Eval(ByVal cmd As String) As String End Interface The [Do] command would take somthing like the following Mapinfo.Do("OpenTable("""C:\Temp\MyTable.TAB""")") Now I am trying to write a

How to catch a moment when the external editor of TOLEContainer has been closed?

老子叫甜甜 提交于 2019-12-02 04:02:59
Borland Developer Studio 2006, Delphi: I have a TOLEContainer object with AllowInPlace=False. When the external editor is closed and changed my OLE object I have to do something with this OLE object inside TOLeContainer. The problem is I can't catch a moment when the external editor is closed. OnDeactivate event is not working. Probably I should change the source code of TOLEContainer adding this event myself, but I don't know where is the best place for it. Can you advice some method? A simple example which does not need modifying the VCL sources; uses .., activex; type TForm1 = class(TForm,

数据库访问接口(ODBC,OLEDB,ADO)

 ̄綄美尐妖づ 提交于 2019-12-02 02:36:26
数据库访问接口发展历史 ODBC ODBC(Open Database Connectivity,开放数据库互连)。要了解ODBC是什么,先了解一下数据库连接的相关知识。在最开始连接数据库时,由于数据库种类繁多,各种数据库连接有不同的需求,这个时期,数据库连接主要依靠各种API函数来进行连接。在这种背景下,微软于1992年发表了ODBC, ODBC就是将这些API函数封装起来形成统一的接口。当SQL语句进入接口后,驱动器管理程序将它们送入对应的驱动器(driver),由驱动器将SQL语句送入各种不同的数据库。 OLE DB OLE DB(Object Linking and Embedding, Database,对象链接嵌入数据库)是微软为以统一方式访问不同类型的数据存储设计的一种应用程序接口。OLE DB 是建立在 ODBC 功能之上的一个开放规范。ODBC 是为访问关系型数据库而专门开发的,OLE DB 则用于访问关系型和非关系型信息源。OLE DB可以通过ODBC连接到数据库,也可以直接连接到数据库,并且直接连接的访问速度更快。可以知道,只要支持ODBC的数据源是一定能够支持OLEDB的,但是反过来则不一定。 ADO ADO(ActiveX Data Objects,ActiveX 数据对象)在1996年8月与OLE DB一起被发布,是在OLE

Code to read oleObject files [closed]

≡放荡痞女 提交于 2019-12-02 00:37:23
问题 Closed. This question is off-topic. It is not currently accepting answers. Want to improve this question? Update the question so it's on-topic for Stack Overflow. Closed last year . I have extracted a number of OleObject files from a Word DOCX document (oleObject1.bin ... etc.) Is there Open Source code (primarily in Java) to read this. (I would only be interested in *.net code if it can be easily ported to Java). I am not interested in the rest of the Word document (in this question). There

How to show on front (and not on background) a new email form in Outlook with OLE?

◇◆丶佛笑我妖孽 提交于 2019-12-01 23:39:08
问题 I am using OLE with Delphi to communicate from my delphi app to Outlook. I am opening the new email form in Outlook using the following code. The problem is that the form is on background, so if the form from which I am generating the email form is maximized it will "cover" the Outlook new mail form. How can I make that form appear it on top? (not "sticking on top", but simply that it appears on top, then a user can mimimize it if they want). This is the code: try OutlookApp :=

Getting an IStream from an OleVariant

寵の児 提交于 2019-12-01 21:56:44
I am using Delphi along with WinHTTP to do an HTTP request to download some files from the internet, and I can do the request but I don't know how to get the IStream from the OleVariant that is returned from ResponseStream . I have spent a lot of time googling but I can't figure out how to do it. Here is what I have tried: var req: IWinHTTPRequest; instream: IStream; begin req := CoWinHTTPRequest.Create; req.Open('GET', 'http://google.com', false); req.Send(''); if req.Status <> 200 then begin ShowMessage('failure'#10 + req.StatusText); FreeAndNil(req); Application.Terminate; end; instream :=