|
Home > Archive > BizTalk Server General > January 2005 > Biztalk MessageArchive object
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
Biztalk MessageArchive object
|
|
| esgraham 2004-09-27, 5:52 pm |
| Has anyone used the MessageArchive object mentioned in
the KB article:
http://support.microsoft.com/default.aspx?scid=kb;en-
us;838454
I've installed the hotfix, but cannot figure out the
namespace or dll that contains the object.
Thanks.
| |
| Gilles [MSFT] 2004-09-27, 8:46 pm |
| Hello,
>Has anyone used the MessageArchive object mentioned in
>the KB article:
>http://support.microsoft.com/default.aspx?scid=kb;en-
>us;838454
>
>I've installed the hotfix, but cannot figure out the
>namespace or dll that contains the object.
The namespace is Microsoft.BizTalk.MessageBoxOM
The assembly you want to add a reference to is: Microsoft.BizTalk.MessageBoxOM.dll
Thanks,
-Gilles.
| |
| esgraham 2004-09-28, 5:52 pm |
| The Microsoft.Biztalk.MessageBoxOM.dll is missing from my
server. I am running Biztalk 2004 Developer's Edition.
I also posted another message in relation to this problem.
>-----Original Message-----
>Hello,
>
>
>The namespace is Microsoft.BizTalk.MessageBoxOM
>The assembly you want to add a reference to is:
Microsoft.BizTalk.MessageBoxOM.dll
>
>Thanks,
>-Gilles.
>
>.
>
| |
| Gilles [MSFT] 2004-09-28, 5:52 pm |
| Hello,
>The Microsoft.Biztalk.MessageBoxOM.dll is missing from my
>server. I am running Biztalk 2004 Developer's Edition.
>I also posted another message in relation to this problem.
I think the DLL is not missing but hidden where you do not expect it to be.
It is installed in the GAC so open an explorer window into %systemroot%\assembly and you should see it.
From within a visual studio .NEt command, do a gacutil /l | findstr /i messageboxom and you should see it.
Currently, VS.NET does not allow you to add references to assemblies in the GAC. You have to extract it
first, add a reference to a copy of the dll, outside of the GAC. At the time you add the reference, VS.NET
will in fact add a reference to the GACed dll.
To extract it, use a dos prompt to cd into %systemroot%\assembly\GAC\messageboxom
There will be a folder named like 3.0.1.0__<some random number here>. Cd into it and do a dir.
You will find Microsoft.BizTalk.MessageBoxOM.dll. Use copy to copy it to C:\ for instance.
Thanks,
-GIlles.
| |
| magenic_andym 2005-01-25, 8:47 pm |
| I am attempting to use the MessageArchive class to enumerate over all
messages in the MessageBox db (within a large date span) but I never
get any messages from the MessageArchive.Messages property. I don't
get any errors, there just aren't any messages in the enumeration.
There are suspended resumable and suspended not resumable service
instances in HAT.
Here is the code I'm using:
------------------------------------
MessageArchive archive = new MessageArchive();
archive.BatchSize = 0;
archive.CommandTimeout = 0; //Infinite
archive.MaxMatches = 0;
archive.From = new DateTime(2004, 1, 1);
archive.Until = new DateTime(2005, 12, 31);
archive.ConnectionString = "Persist Security Info=False;Integrated
Security=SSPI;database=BizTalkMsgBoxDb;s
erver=localhost";
try
{
foreach(Object oMsg in archive.Messages)
{
IBaseMessage msg = (IBaseMessage)oMsg;
IBaseMessageContext cntxt = msg.Context;
}
}
catch(Exception e)
{
Console.WriteLine(e);
}
finally
{
archive.Dispose();
}
----------------------------
-Am I attempting to use this class in a manner that it is not intended?
-Should this code find messages related to suspended service instances?
-Is there anything wrong with the code?
TIA,
Andy
| |
| esgraham 2005-01-26, 5:54 pm |
| There is a problem with the MessageArchive object not returning any messages,
and the problem is an error in one of the stored procs that is installed
with the hotfix. I thought I had saved the information to my blog, but I
went and looked and the actual code is not there. I have also switched
companies since I started this thread so I cannot find the changes I made.
The only thing I wrote about the issue was: The Tracking_Spool information
in the SQL stored proc is not referencing the correct table.
Its too bad that I did not save any more information.
"magenic_andym" wrote:
> I am attempting to use the MessageArchive class to enumerate over all
> messages in the MessageBox db (within a large date span) but I never
> get any messages from the MessageArchive.Messages property. I don't
> get any errors, there just aren't any messages in the enumeration.
> There are suspended resumable and suspended not resumable service
> instances in HAT.
>
> Here is the code I'm using:
>
> ------------------------------------
>
> MessageArchive archive = new MessageArchive();
>
> archive.BatchSize = 0;
> archive.CommandTimeout = 0; //Infinite
> archive.MaxMatches = 0;
> archive.From = new DateTime(2004, 1, 1);
> archive.Until = new DateTime(2005, 12, 31);
>
> archive.ConnectionString = "Persist Security Info=False;Integrated
> Security=SSPI;database=BizTalkMsgBoxDb;s
erver=localhost";
>
> try
> {
> foreach(Object oMsg in archive.Messages)
> {
> IBaseMessage msg = (IBaseMessage)oMsg;
> IBaseMessageContext cntxt = msg.Context;
> }
> }
> catch(Exception e)
> {
> Console.WriteLine(e);
> }
> finally
> {
> archive.Dispose();
> }
>
> ----------------------------
>
> -Am I attempting to use this class in a manner that it is not intended?
> -Should this code find messages related to suspended service instances?
> -Is there anything wrong with the code?
>
> TIA,
>
> Andy
>
>
|
|
|
|
|