<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:v = 
"urn:schemas-microsoft-com:vml" xmlns:o = 
"urn:schemas-microsoft-com:office:office" xmlns:w = 
"urn:schemas-microsoft-com:office:word" xmlns:x = 
"urn:schemas-microsoft-com:office:excel" xmlns:p = 
"urn:schemas-microsoft-com:office:powerpoint" xmlns:a = 
"urn:schemas-microsoft-com:office:access" xmlns:dt = 
"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:s = 
"uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:rs = 
"urn:schemas-microsoft-com:rowset" xmlns:z = "#RowsetSchema" xmlns:b = 
"urn:schemas-microsoft-com:office:publisher" xmlns:ss = 
"urn:schemas-microsoft-com:office:spreadsheet" xmlns:c = 
"urn:schemas-microsoft-com:office:component:spreadsheet" xmlns:odc = 
"urn:schemas-microsoft-com:office:odc" xmlns:oa = 
"urn:schemas-microsoft-com:office:activation" xmlns:html = 
"http://www.w3.org/TR/REC-html40" xmlns:q = 
"http://schemas.xmlsoap.org/soap/envelope/" xmlns:rtc = 
"http://microsoft.com/officenet/conferencing" XMLNS:D = "DAV:" XMLNS:Repl = 
"http://schemas.microsoft.com/repl/" xmlns:mt = 
"http://schemas.microsoft.com/sharepoint/soap/meetings/" xmlns:x2 = 
"http://schemas.microsoft.com/office/excel/2003/xml" xmlns:ppda = 
"http://www.passport.com/NameSpace.xsd" xmlns:ois = 
"http://schemas.microsoft.com/sharepoint/soap/ois/" xmlns:dir = 
"http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:ds = 
"http://www.w3.org/2000/09/xmldsig#" xmlns:dsp = 
"http://schemas.microsoft.com/sharepoint/dsp" xmlns:udc = 
"http://schemas.microsoft.com/data/udc" xmlns:xsd = 
"http://www.w3.org/2001/XMLSchema" xmlns:sub = 
"http://schemas.microsoft.com/sharepoint/soap/2002/1/alerts/" xmlns:ec = 
"http://www.w3.org/2001/04/xmlenc#" xmlns:sp = 
"http://schemas.microsoft.com/sharepoint/" xmlns:sps = 
"http://schemas.microsoft.com/sharepoint/soap/" xmlns:xsi = 
"http://www.w3.org/2001/XMLSchema-instance" xmlns:udcs = 
"http://schemas.microsoft.com/data/udc/soap" xmlns:udcxf = 
"http://schemas.microsoft.com/data/udc/xmlfile" xmlns:udcp2p = 
"http://schemas.microsoft.com/data/udc/parttopart" xmlns:wf = 
"http://schemas.microsoft.com/sharepoint/soap/workflow/" xmlns:dsss = 
"http://schemas.microsoft.com/office/2006/digsig-setup" xmlns:dssi = 
"http://schemas.microsoft.com/office/2006/digsig" xmlns:mdssi = 
"http://schemas.openxmlformats.org/package/2006/digital-signature" xmlns:mver = 
"http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:m = 
"http://schemas.microsoft.com/office/2004/12/omml" xmlns:mrels = 
"http://schemas.openxmlformats.org/package/2006/relationships" xmlns:spwp = 
"http://microsoft.com/sharepoint/webpartpages" xmlns:ex12t = 
"http://schemas.microsoft.com/exchange/services/2006/types" xmlns:ex12m = 
"http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:pptsl = 
"http://schemas.microsoft.com/sharepoint/soap/SlideLibrary/" xmlns:spsl = 
"http://microsoft.com/webservices/SharePointPortalServer/PublishedLinksService" 
XMLNS:Z = "urn:schemas-microsoft-com:" xmlns:st = ""><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.2800.1634" name=GENERATOR>
<STYLE>@font-face {
        font-family: Calibri;
}
@page Section1 {size: 8.5in 11.0in; margin: 1.0in 1.0in 1.0in 1.0in; }
P.MsoNormal {
        FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Calibri","sans-serif"
}
LI.MsoNormal {
        FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Calibri","sans-serif"
}
DIV.MsoNormal {
        FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Calibri","sans-serif"
}
A:link {
        COLOR: blue; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.MsoHyperlink {
        COLOR: blue; TEXT-DECORATION: underline; mso-style-priority: 99
}
A:visited {
        COLOR: purple; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.MsoHyperlinkFollowed {
        COLOR: purple; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.EmailStyle17 {
        COLOR: windowtext; FONT-FAMILY: "Calibri","sans-serif"; mso-style-type: personal-compose
}
.MsoChpDefault {
        mso-style-type: export-only
}
DIV.Section1 {
        page: Section1
}
</STYLE>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1" />
 </o:shapelayout></xml><![endif]--></HEAD>
<BODY lang=EN-US vLink=purple link=blue>
<DIV><SPAN class=330020616-21082009><FONT face=Arial color=#0000ff size=2>It 
could be the same problem I ran into some time back.&nbsp; The SwigSword code 
destroys some pointers then tries to use them again.&nbsp; Under .Net 1.0 it 
wasn't a problem because the error was ignored.&nbsp; Under .Net 2.0 it raises 
an error and crashes the calling application.&nbsp; In my case it was MS Word 
since I was working on an Add-In but it would probably crash anything calling 
the dll.</FONT></SPAN></DIV>
<DIV><SPAN class=330020616-21082009><FONT face=Arial color=#0000ff 
size=2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=330020616-21082009><FONT face=Arial color=#0000ff size=2>I'm 
hoping that Swig has fixed the .Net 2.0 pointer issue.&nbsp; If that's the case 
then the easiest approach might be to regenerate the wrapper.&nbsp; I'm guessing 
that the problem isn't in just one property or method since the code relatively 
consistent throughout.</FONT></SPAN></DIV>
<BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px">
  <DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma 
  size=2>-----Original Message-----<BR><B>From:</B> Wade Balzer 
  [mailto:wbalzer@newjerusalem.org]<BR><B>Sent:</B> Friday, July 31, 2009 11:42 
  AM<BR><B>To:</B> sword-devel@crosswire.org<BR><B>Subject:</B> [sword-devel] 
  .Net Exception Odd behavior...<BR><BR></FONT></DIV>
  <DIV class=Section1>
  <P class=MsoNormal>I am working on a Bible project in C# for the web.&nbsp; I 
  am using the SwigSword.dll wrapper.<o:p></o:p></P>
  <P class=MsoNormal><o:p>&nbsp;</o:p></P>
  <P class=MsoNormal>When I load the manager using the default location for the 
  modules as provided by the SWORD_PATH environment, it words fine and the 
  debugger exits without a problem.<o:p></o:p></P>
  <P class=MsoNormal><o:p>&nbsp;</o:p></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'">filterManager = <SPAN 
  style="COLOR: blue">new</SPAN> <SPAN 
  style="COLOR: #2b91af">MarkupFilterMgr</SPAN>((<SPAN 
  style="COLOR: blue">char</SPAN>)<SPAN 
  style="COLOR: #2b91af">Sword</SPAN>.FMT_OSIS, (<SPAN 
  style="COLOR: blue">char</SPAN>)<SPAN 
  style="COLOR: #2b91af">Sword</SPAN>.ENC_HTML);<o:p></o:p></SPAN></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'">manager = <SPAN 
  style="COLOR: blue">new</SPAN> <SPAN style="COLOR: #2b91af">SWMgr</SPAN>( 
  filterManager);<o:p></o:p></SPAN></P>
  <P class=MsoNormal><o:p>&nbsp;</o:p></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; COLOR: #2b91af; FONT-FAMILY: 'Courier New'">GC</SPAN><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'">.SuppressFinalize(filterManager);<o:p></o:p></SPAN></P>
  <P class=MsoNormal><o:p>&nbsp;</o:p></P>
  <P class=MsoNormal>However since this will be a web environment, I need to 
  directly point to the Module locations without directly pointing to my local 
  %SWORD_PATH% variable.<o:p></o:p></P>
  <P class=MsoNormal><o:p>&nbsp;</o:p></P>
  <P class=MsoNormal>When I set the location of the config, and manually set the 
  location of the module path, everything seems to work fine until I exit the 
  debugger.&nbsp; It CRASHES.<o:p></o:p></P>
  <P class=MsoNormal><o:p>&nbsp;</o:p></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; COLOR: #2b91af; FONT-FAMILY: 'Courier New'">SWConfig</SPAN><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"> config = <SPAN 
  style="COLOR: blue">new</SPAN> <SPAN 
  style="COLOR: #2b91af">SWConfig</SPAN>(BaseModDir + <SPAN 
  style="COLOR: #a31515">"mods.d\\global.conf"</SPAN>);<o:p></o:p></SPAN></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; COLOR: #2b91af; FONT-FAMILY: 'Courier New'">SWConfig</SPAN><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"> sysconfig = <SPAN 
  style="COLOR: blue">null</SPAN>;<o:p></o:p></SPAN></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><o:p>&nbsp;</o:p></SPAN></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'">filterManager = <SPAN 
  style="COLOR: blue">new</SPAN> <SPAN 
  style="COLOR: #2b91af">MarkupFilterMgr</SPAN>((<SPAN 
  style="COLOR: blue">char</SPAN>)<SPAN 
  style="COLOR: #2b91af">Sword</SPAN>.FMT_OSIS, (<SPAN 
  style="COLOR: blue">char</SPAN>)<SPAN 
  style="COLOR: #2b91af">Sword</SPAN>.ENC_HTML);<o:p></o:p></SPAN></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'">//manager = 
  new SWMgr( filterManager);<o:p></o:p></SPAN></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'">manager = <SPAN 
  style="COLOR: blue">new</SPAN> <SPAN 
  style="COLOR: #2b91af">SWMgr</SPAN>(config, sysconfig, <SPAN 
  style="COLOR: blue">false</SPAN>, filterManager);<o:p></o:p></SPAN></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'">manager.configPath = 
  BaseModDir + <SPAN 
  style="COLOR: #a31515">"mods.d\\"</SPAN>;<o:p></o:p></SPAN></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'">manager.prefixPath = 
  BaseModDir;<o:p></o:p></SPAN></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'">manager.Load();<o:p></o:p></SPAN></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><o:p>&nbsp;</o:p></SPAN></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'">manager.augmentModules(BaseModDir);<o:p></o:p></SPAN></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"><o:p>&nbsp;</o:p></SPAN></P>
  <P class=MsoNormal><SPAN 
  style="FONT-SIZE: 10pt; COLOR: #2b91af; FONT-FAMILY: 'Courier New'">GC</SPAN><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'">.SuppressFinalize(filterManager);<o:p></o:p></SPAN></P>
  <P class=MsoNormal><o:p>&nbsp;</o:p></P>
  <P class=MsoNormal>I am not sure why the first one works without a problem, 
  and the second one works, but crashes on exit.<o:p></o:p></P>
  <P class=MsoNormal><o:p>&nbsp;</o:p></P>
  <P class=MsoNormal>HELP!!!<o:p></o:p></P>
  <P class=MsoNormal><o:p>&nbsp;</o:p></P>
  <P class=MsoNormal>Thanks,<o:p></o:p></P>
  <P class=MsoNormal><o:p>&nbsp;</o:p></P>
  <P class=MsoNormal>Wade<o:p></o:p></P>
  <P class=MsoNormal>&nbsp;<o:p></o:p></P>
  <P class=MsoNormal><o:p>&nbsp;</o:p></P></DIV></BLOCKQUOTE></BODY></HTML>