|
Hi,
I liked your DX static control. very cool. Are you planning a dx8 version?
You yard yellow years yieldingly; you yanked your yearning yoke.-Jeremy Falcon-CPite.
Amit Dey
sonork: 100:18407
msn: visualcdev
|
|
|
|
|
Amit Dey wrote:
I liked your DX static control. very cool.
Thanks
Amit Dey wrote:
Are you planning a dx8 version?
Yes, I'm itching to get one together, but I suspect it's going to take a while to get out of my currently entrenched commitments before I can delve into something as fun as this
|
|
|
|
|
Is there any way to get reminders to work in a secondary calendar in Outlook 2000 or XP? If you check remind in a new appointment, a message box appears saying: "The reminder for <your appointment=""> will not appear because the item is not in your Calendar or Tasks folder. Is this OK?"
check out Microsoft KB article Q286166
Is there any way to get around this via a COM addin or automation app?
|
|
|
|
|
I eventually got so frustrated that I actually called Microsoft, and they said that getting normal outlook reminders in a second calendar is impossible. The only way I could think to make this work is to use a timer to control when MessageBoxes would apear, but that sucks.
MS pisses me off!!!
|
|
|
|
|
Hey, I have a couple of questions regarding COM and OLE containers. I am trying to open MS Word from my application and it works fine. But there are a couple of things I am having problems getting to work.
1) Is there any way to get the Control Toolbox to not pop up when Word is opened?
2) I cannot get the scroll bars to show up. I can see them for just a second or two and then they are gone. Any ideas?
3) The document is MUCH smaller than the word window and the only layout I can select is Print Layout. The normal, outline, and web page are all disabled. Any ideas on this?
I have looked and looked and looked and cannot figure out what is going on. Thanks for any help you can provide!
|
|
|
|
|
Do these things happen when you open Word normally (e.g. Start->Programs->Microsoft Word)? If so, then it is just your settings.
To get around user settings:
1)myWordObject.CommandBars("Control Toolbox").Visible = False 'do this after you open Word
2,3)I'm not sure why you can't see Normal view or the scroll bars, but this might help:
myWordObject.ActiveWindow.View = wdNormalView 'wdNormalView is a builtin constant equal to 1 in XP
Hope this helps
|
|
|
|
|
Thanks for the response. I am using Visual C++ which makes this a little different. In regard to the view and wdNormalView, isn't this only going to set it to Normal, Minimized, or Maximized? I have looked into this but I need to set the actual view of the document so the user can see the document at 100%. And I am not sure how to access the Commandbars as easily as you state, I don't have the direct CommandBars field as shown above. The application class does have the GetCommandBars() but I don't have a class for it, that I can see. Any ideas?
|
|
|
|
|
sorry, I don't have experiance with automating Word via VC++, but the object model should be very similar. Check out http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dno97ta/html/msoautovc.asp for more info on that.
As for wdNormalView, you can replace it with wdMasterView, wdOutlineView, wdPrintView, wdWebView, or wdPrintPreview. Hope that answers your question.
|
|
|
|
|
I'm not new to programming, just COM. Don't know what it's all about, but I want to know all about it. Can anyone point me to a good intro to COM tutorial or some such beast?
Thanks in advance,
Tym!
|
|
|
|
|
Check out the COM section here at CP! You can start here.
--Mike--
Just released - RightClick-Encrypt - Adds fast & easy file encryption to Explorer
Like the Google toolbar? Then check out UltraBar, with more features & customizable search engines!
My really out-of-date homepage
Sonork-100.19012 Acid_Helm
|
|
|
|
|
Problem:
I have a COM+ business logic object which seems to lose state for no aparent reason. But when I debug it in VB it works fine. ?!?!?!
Baskground:
My BL object has a method which returns a reference to itself. (Why? Short-story: I was returning an ADO Recordset, but then (for reasons beyond this article) I didn't want EOF to return True when the Recordset was at EOF.) So my BL object implements some of the ADO interface and passes calls to the underlying recordset which is now stored in a private variable; except the EOF property which does it's own thing.
Gotcha:
After calling the method from ASP/VBScript I get an object back alright, but the object has lost state. Here is sample code of the object being used:
<%
...
Dim oOrders, adorsOrders
Set oOrders = Server.CreateObject("BusinessLogicLayer.OrderHistory")
Set adorsOrders = oOrders.ListByPage(sCustomerID, lPageNo, lPageSize)
Do Until adorsOrders.EOF
...
Loop
...
%>
The line "Do Until..." biffs an error saying that the object was not set. At this point adorsOrders and oOrders are actually the same object because ListByPage returns Me. Furthur examination reveals that all of the object's internal variables have been initialized right after the method completes; even though the object shouldn't get garbaged till the bottom of the page.
Now the oddest thing is that if I set a public string variable on object creation and then call a different method I can still access that variable and it contains "HelloWorld" as expected. But if I access it after calling this method which returns it's own reference then the string variable has now been reinitialised.
Oh, did I mention that the object works fine if I debug it in VB?
Any help leading to a fast solution out of this mess will earn you naming rights on my first born.
|
|
|
|
|
show IDL and implementation of this metohd:
oOrders.ListByPage(sCustomerID, lPageNo, lPageSize)
soptest
|
|
|
|
|
HRESULT ListByPage(
[in] BSTR sCustomerID,
[in] long lPageNo,
[in] long lPageSize,
[out, retval] IDispatch** );
Public Function ListByPage(ByVal sCustomerID As String, _
ByVal lPageNo As Long, _
ByVal lPageSize As Long) As Object
'==================================================================================================
' PURPOSE: Returns a page of orders. The page is specified by lPageNo and
' lPageSize. lTotalRecordCount returns the total number of records on all pages.
'
' Criteria field(s):
' sCustomerID
' lPageNo
' lPageSize
' lTotalRecordCount
'
' RETURNS: Disconnected recordset.
'==================================================================================================
On Error GoTo ErrorHandler
Dim oOrderHistory As Object
Dim vOrders As Variant
Dim lTotalRecordCount As Long
Set oOrderHistory = CtxCreateObject(m_RemoteOrderHistoryDALProgID, m_RemoteDALHost)
vOrders = oOrderHistory.ListByPage(sCustomerID, lPageNo, lPageSize, lTotalRecordCount)
Set oOrderHistory = Nothing
Set m_adorsOrders = Variant2RecordSet(vOrders(1), vOrders(0))
m_lTotalRecordCount = lTotalRecordCount
m_lLastRecordInCurrentRecordSet = (lPageNo - 1) * lPageSize + m_adorsOrders.RecordCount
Set ListByPage = Me
CtxSetComplete
Exit Function
ErrorHandler:
Set oOrderHistory = Nothing
CtxRaiseError m_strModuleName, "ListByPage"
End Function
|
|
|
|
|
You call "obj.EOF". Is "EOF" defined in your object.
soptest
|
|
|
|
|
Public Property Get EOF() As Boolean
On Error GoTo ErrorHandler
If m_lLastRecordInCurrentRecordSet >= m_lTotalRecordCount Then
' At this next line I get the error "Object variable or With block variable not set"
EOF = m_adorsOrders.EOF
Else
EOF = False
End If
Exit Property
ErrorHandler:
CtxRaiseError m_strModuleName, "EOF"
End Property
|
|
|
|
|
JBoy wrote:
CtxSetComplete
Exit Function
Heya,
since you call CtxSetComplete (which I think makes a call to the SetComplete method of IObjectContext) you tell COM to make this object available for use by someone else as soon as the function ends, and COM then deactivates it and clears all class global parameters.
Cheers
/WW
|
|
|
|
|
Duh!
Thank you thank you thank you... I drove myself nuts on that one. How did I miss that one myself?
|
|
|
|
|
Hehe,
no probs...been there too (several times)!
/WW
|
|
|
|
|
Hi,
I made a COM DLL using ATL COM Appwizard. Then I inserted a dialog (derived from CDialog) into the COM. But I got the following compiling error:
"INDOWS.H already included. MFC apps must not #include <windows.h>"
Also, I tried to add ballon help and some button features into it. So I included the following MFC header files:
#include <afxwin.h> // MFC core and standard components
#include <afxpriv.h>
#include <afx.h>
#include <afxtempl.h>
#include <afxmt.h>
#include <afxres.h>
etc...
Then I got the same compiling error. Can't I include MFC header files in the COM? If someone has experience in this area, please give me some help.
Thanks!
|
|
|
|
|
You want to have dialog in ATL?
Inset ATL Object. In this wizard one of items are Dialog and you can insert it into your project. I don't have visual studio now to give you details. Do you need more?
Mazy
"The more I search, the more my need
For you,
The more I bless, the more I bleed
For you."The Outlaw Torn-Metallica
|
|
|
|
|
If you use Visula C6 you can't use MFC by default.I think when you can add MFC when you create your project.
For using Control in Dialog in ATL,it is too much to discribe it here.Its different from MFC,you have to handle most things yourself.
Maybe this article help you.
Mazy
"The more I search, the more my need
For you,
The more I bless, the more I bleed
For you."The Outlaw Torn-Metallica
|
|
|
|
|
Thank you, Mazy!
I added MFC support when I created the project. Now it works.
|
|
|
|
|
Hi
What data types to use to pass Date/Time.
Thanks
|
|
|
|
|
If you want your COM Object to be accessible form Visual Basic use DATE data type (which is typedefed to double). Use CComDate available at http://www.sellsbrothers.com.
|
|
|
|
|
Non-MFC Date Routines in ATL
Mazy
"The more I search, the more my need
For you,
The more I bless, the more I bleed
For you."The Outlaw Torn-Metallica
|
|
|
|