mmr
mmr

Reputation: 14929

How do I convert from MFC's COleDateTime to C# DateTime?

I have an older library that uses COleDateTime as a return type in a C++ MFC Dll. When I do a PInvoke, can I marshal that with confidence to a DateTime object? Or should I do something wacky, like convert the COleDateTime into the number of ticks since 1970, and then convert those ticks back to a DateTime object in the C# calling project?

Thanks!

Upvotes: 5

Views: 6456

Answers (2)

casperOne
casperOne

Reputation: 74560

You can return a double, by accessing the m_dt member on the COleDateTime class.

Then, you would pass that double to the static FromOADate method on the DateTime structure to convert the double to a DateTime instance.

Upvotes: 9

Hans Passant
Hans Passant

Reputation: 942348

Use DateTime.FromOADate().

Upvotes: 4

Related Questions