Attempted to read or write protected memory followed by Load Report Failed

After running OK for some time ASP.NET web application (VS 2008 .NET 3.5 with Crystal Reports included) running on MS WIN 2003 R2, SP2) will throw error when trying to create PDF crystal report. Error reads as follow:
Attempted to read or write protected memory. This is often an indication that other memory is corrupt. -    at CrystalDecisions.ReportAppServer.ClientDoc.ReportClientDocumentClass.Close()     at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.InternalClose(Boolean bSetupForNextReport, Boolean bAutoClose)     at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.Dispose(Boolean bDisposeManaged)     at System.ComponentModel.Component.Dispose()     at CrystalDecisions.CrystalReports.Engine.ReportDocument.InternalClose(Boolean bSetupForNextReport)     at CrystalDecisions.CrystalReports.Engine.ReportDocument.Close()
After that every consecutive attempt to create another PDF crystal report will fail with fallowing error:
Load report failed. -    at ... at System.Web.UI.WebControls.Button.OnClick(EventArgs e)     at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)     at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)     at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)     at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)     at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
Once Application pool is recycled, error goes away but comes back after while. It seems that recently the uptime is getting shorter.
Anyone had similar experience, posible solution?
Thanks in advance,
Miro

Hi Miro,
Clean Temp folder of that machine.
For testing export report to PDF format from designer do you face any issue?
Try to export the report with following line of code :
        CrystalDecisions.CrystalReports.Engine.ReportDocument boReportDocument;
        CrystalDecisions.ReportAppServer.ClientDoc.ISCDReportClientDocument reportClientDoc;
        boReportDocument = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
        boReportDocument.Load(Server.MapPath("FinalActivityRpt.rpt"));
        reportClientDoc = boReportDocument.ReportClientDocument;
        boReportDocument.SetDatabaseLogon("sa", "sa");
        CrystalReportViewer1.ReportSource = boReportDocument;
        ExportOptions exportOptions = new ExportOptions();
        exportOptions.ExportFormatType = CrReportExportFormatEnum.crReportExportFormatPDF;
        PDFExportFormatOptions pdfOptions = new PDFExportFormatOptions();
        pdfOptions.StartPageNumber = 1;
        pdfOptions.EndPageNumber = 3;
        exportOptions.FormatOptions = pdfOptions;
        Response.AddHeader("Content-Disposition", "filename=" + "untiteled" + ".pdf");
        Response.ContentType = "application/pdf";
        Response.BinaryWrite((Byte[])reportClientDoc.ReportSource.Export(exportOptions, new         RequestContext()));
        Response.End();
Regards,
Shweta

Similar Messages

  • "Attempted to read or write protected memory" error in loading a report.

    Development Environment
    ===
    Windows XP
    Visual Studio 2008 Pro; with Crystal Reports 2008 for Visual Studio
    TagetCPU: 'AnyCPU'
    VB.net 3.5
    Windows dll
    Crystal Reports Runtime SP2 (12.2.0.290)
    Deployment Environment
    ===
    Windows XP
    .net3.5
    Crystal Reports Runtime SP3 (no be confirmed)
    I have created a windows dll with a form with a reportdocument, that loads a report (CrystalDecisions.CrystalReports.Engine.ReportDocument).
    Then we circle through the report setting every table location to point at a specific ODBC and database.
    The Dll can do this process several hundred reports in a day. However a small number (less than 10) of these have the following error:
    "Attempted to read or write protected memory. This is often an indication that other memory is corrupt."
    This is normally occurring when the reportDocument.Load function is called. But also happens when going through the setting of table locations: [myTable.ApplyLogOnInfo(TmpTableLogOnInfo)
    The dll is called via COM interop and so i have checked "Register for COM interop".
    Simon@Sanderson

    1) Get to SP 3:
    for dev computer:
    https://smpdl.sap-ag.de/~sapidp/012002523100007123572010E/cr2008_sp3.exe
    Recompile the app after SP3 is applied.
    for SP3 runtime:
    MSI
    https://smpdl.sap-ag.de/~sapidp/012002523100007123592010E/cr2008sp3_redist.zip
    MSM
    https://smpdl.sap-ag.de/~sapidp/012002523100007123582010E/cr2008sp3_mm.zip
    (You will have to uninstall SP 2 runtime before installing SP 3 runtime)
    2) Do not use "Any CPU". CR2008 is only 32 bit anyhow so use 32 bit.
    3) Make sure you are using .Close and .Dispose once you are done with each report object
    - Ludek

  • SSRS 2008 R2 - on Preview report in report builder itself, getting an error "Attempted to read or write protected memory. This is often an indication that other memory is corrupt". Any Suggestions please to resolve it?

    Hi,
    I am working on SSRS 2008 R2. On Preview report in report builder itself, i am getting an error "Attempted to read or write protected memory. This is often an indication that other memory is corrupt".
    See my below screen shoot.
    Any Suggestions please  to resolve it? 
    thank you in advance !
    best regards,
    Venkat,
    [email protected]

    Hi Venkat,
    According to the error message, I guess that the error occurred when you previewed the report in Business Intelligence Development Studio (BIDS).
    Based on my research, I think it may be a Window Layout issue of Visual Studio. Please try the steps below:
    Click “Window” button from the toolbar ribbon.
    Click “Reset Windows Layout” option.
    Click “Yes” to finish the operation.
    The following thread is for your reference:
    http://social.msdn.microsoft.com/Forums/sqlserver/en-US/90949d68-a611-467c-b438-be97b8ab250b/attempted-to-read-or-write-protected-memory-this-is-often-an-indication-that-other-memory-is
    Hope this helps.
    Thanks,
    Katherine Xiong
    Katherine Xiong
    TechNet Community Support

  • Attempted to read or write protected memory source CR for VS 2010

    Hye everyone,
    I'm working on VS2010 : C# Application WPF.
    When I try to instance a Crystal Report, I receive this message
    CrystalReport2 newCR = new CrystalReport2();
    Attempted to read or write protected memory.
    source=crystaldecisions.crystalreports.engine
    at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.CreateRptDoc()
       at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper..ctor()
       at CrystalDecisions.CrystalReports.Engine.ReportDocument.Initialize()
       at CrystalDecisions.CrystalReports.Engine.ReportDocument..ctor()
       at CrystalDecisions.CrystalReports.Engine.ReportClass..ctor()
    When I'm debugging I can see the report but when I stop the application I've got a "vshost32.exe has stopped working"
    If I use the exe file of my application, I can't see the report and I've got a "MyApplication has stopped working". He never enters the constructor of my report.
    For my report I use .net objects for Database Fields
    Please help needed
    Gridin

    See the WPF demo here:
    http://www.sdn.sap.com/irj/scn/elearn?rid=/library/uuid/a09f7025-0629-2d10-d7ae-df006a51d1a8
    Do you get the same issue using the steps described in the demo?
    Also, see the kBase [1544651  - Crystal Reports WPF Viewer fails with NullReferenceException when used in a WinForms application|http://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes_boj/sdn_oss_boj_bi/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes%7B6163636573733d36393736354636443646363436353344333933393338323636393736354637333631373036453646373436353733354636453735364436323635373233443330333033303331333533343334333633353331%7D.do].
    Ludek
    Follow us on Twitter http://twitter.com/SAPCRNetSup
    Got Enhancement ideas? Try the [SAP Idea Place|https://ideas.sap.com/community/products_and_solutions/crystalreports]

  • Attempted to read or write protected memory. This is often an indication...

    I receive the following error when debugging, but not when running the release version of my .NET 2.0 program:
    "Attempted to read or write protected memory. This is often an indication that other memory is corrupt"
    It's quite bizarre! I dont really know what else would be needed, but I can provide DLL versions etc if someone asks. Ive posted this in Ora/MTS forum because it only seems to happen when using a transaction on the client side

    Hi I have similar issue. Like others, it seems that the error returned by oracle make ASP.NET (w3wp.exe) to have runtime error.
    In my case, it occurs about once every day, consistently. The ASP still work even after runtime error but start to take up high cpu usage after 2nd and 3rd time of error, and totally crash (no reponse to the client request) after 3 or 4 times of errors. It recovers back after the server is restarted.
    The following is from event log of my server.
    Event Type:     Error
    Event Source:     ASP.NET 2.0.50727.0
    Event Category:     None
    Event ID:     1334
    Date:          1/15/2009
    Time:          10:10:02 AM
    User:          N/A
    Computer:     AXMAN
    Description:
    An unhandled exception occurred and the process was terminated.
    Application ID: /LM/W3SVC/1/Root/rais
    Process ID: 5984
    Exception: System.AccessViolationException
    Message: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
    StackTrace: at System.Data.Common.UnsafeNativeMethods.OCIServerAttach(OciHandle srvhp, OciHandle errhp, Byte[] dblink, Int32 dblink_len, MODE mode)
    at System.Data.OracleClient.TracedNativeMethods.OCIServerAttach(OciHandle srvhp, OciHandle errhp, String dblink, Int32 dblink_len, MODE mode)
    at System.Data.OracleClient.OracleInternalConnection.OpenOnLocalTransaction(String userName, String password, String serverName, Boolean integratedSecurity, Boolean unicode, Boolean omitOracleConnectionName)
    at System.Data.OracleClient.OracleInternalConnection..ctor(OracleConnectionString connectionOptions)
    at System.Data.OracleClient.OracleConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
    at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
    at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
    at System.Data.ProviderBase.DbConnectionPool.PoolCreateRequest(Object state)
    at System.Threading._ThreadPoolWaitCallback.WaitCallback_Context(Object state)
    at System.Threading.ExecutionContext.runTryCode(Object userData)
    at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
    at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
    at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
    at System.Threading._ThreadPoolWaitCallback.PerformWaitCallbackInternal(_ThreadPoolWaitCallback tpWaitCallBack)
    at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback(Object state)
    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
    -------------------------------------------------------------------------------

  • Attempted to read or write protected memory, VS2008.

    Development Environment
    ===
    Windows XP (32bit)
    Visual Studio 2008 Pro; with Crystal Reports 2008 for Visual Studio
    TagetCPU: 'x86'
    VB.net 3.5
    Windows dll
    Crystal Reports Runtime SP3 (12.3.0.601)
    Deployment Environment
    ===
    Windows XP (32bit)
    .net3.5
    Crystal Reports Runtime SP3 (12.3.0.601)
    We have a dll that prints a batch of reports. There are only three different reports but each is repeatedly printed with different parameters. The first time each report is called it is loaded (myReport.Load) and each table location is set. (myTable.Location = "mydb.dbo.mytable")
    A few hundred of these can be printed every day. Approximately once a day we can get the following error:
    "Attempted to read or write protected memory. This is often an indication that other memory is corrupt."
    This only happens on the deployment machine. It might be hard to run the Process Manager on the deployment machine as this error varies the time it occurs and seems quite intermittent.
    Once all the reports have printed we call a '.close' and '.dispose' on each report.
    This error was also happening when we had the runtime 12.0.(SP1).
    The error seems to happen mostly at:
    myReportDocument.PrintToPrinter(1, False, 0, 0)

    Hello Simon
    A few suggestions.
    Get SP4:
    SP4     
    https://smpdl.sap-ag.de/~sapidp/012002523100008782452011E/cr2008sp4.exe
    SP4 MSI     
    https://smpdl.sap-ag.de/~sapidp/012002523100008782532011E/cr2008sp4_redist.zip
    SP4 MSM     
    https://smpdl.sap-ag.de/~sapidp/012002523100008782522011E/cr2008sp4_mm.zip
    See if there are any updates for the printer driver.
    Try a different printer driver.
    See if there are updates for the DB client (e.g.; it may actaully be the DB client eating up the memory).
    Check the Event Log for any warnings \ errors.
    Ludek
    Follow us on Twitter http://twitter.com/SAPCRNetSup
    Got Enhancement ideas? Try the [SAP Idea Place|https://ideas.sap.com/community/products_and_solutions/crystalreports]

  • Unknow error message: Attempted to read or write protected memory.  This is

    Hi,
    I am using 2007B PL08.  The following are my coding:
    Dim oCompanyService As SAPbobsCOM.CompanyService
    Dim oCompanyAdminInfo As SAPbobsCOM.AdminInfo
    Pub.User.Company.NameEng=oCompany.CompanyName
    I can run the above coding properly yesterday but there is no reason that i got the following message suddenly today
    Interop.SAPbobsCOM:Attempted to read or write protected memory.  This is often an indication that other memory is corrupt.
    1.  I try to re-boot the machine
    2.  I try to connect the program to another testing database
    3.  I try to re-install the DIAPI
    I did all the above steps but the message still coming out.  Anyone can help??
    Regards,
    Anna

    I have experienced this same error, and also found that reinstalling the DIAPI or deleting the temporary folder did not work.
    However, I was eventually able to fix the problem by removing removing the reference to the DIAPI from my .NET project, removing the associated Interop file, and adding the reference again, thereby forcing .NET to re-create the COM wrapper. This fixed the problem, and I suspect that my code was calling a method that, although it existed in the Interop file, did not map correctly to the actual DIAPI COM object that was installed on the machine.
    Hope this helps someone - I know I was happy to find a solution to this very frustrating problem!

  • Error Connecting Addon. Attempted to read or write protected memory

    Hi All
    I m trying to connect company database.....
    while doing
    ocompany.connect()
    i m getting following error
    Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
    how should i solve this????
    Thank you

    Rajesh - this question has already been asked and aswered.
    Search the forum for "protected memory".
    Here's the solution:
    Error when install addon

  • Error: Attempted to read or write protected memory. Memory is corrupt

    2005A SP1 PL4
    I have added a user field with B1 in Items with success.
    Therefore I have started the addon and I have the following error at  SAPbouiCOM.SboGuiApiClass.Connect(String ConnectionStr):
    "Attempted to read or write protected memory. This is often an indication that other memory is corrupt"
    I have restart B1, and I have restart the PC, but the problem persist.
    Before I added user field, the addon worked
    Now if I open items system form, the user field not exists , not even I press CtrlShiftU
    It seems that the user fields are not record correctly
    Now I re-add a new second user field in items. Now there are all user fields in system form Items, but i have the same error with my addon.
    This is the second company that occorr this problem
    Is this a 2005A SP1 PL4 problem? Must I convert the company to 2005A SP1 PL11? Or are there other solution? 
    Help me
    Thank you

    I would strongly recommend to go up to PL11 - and then re-check the issue.
    If it still doesn't work:
    The minimum information to provide here would be the definition of the UDF! Since UFDs work in general there must be some issue with your specific UDF (or some combination of settings).
    Check table CUFD + the actual definition of the UDF in the SQL table as well.
    ...or just involve SAP Support...
    HTH,
    Frank

  • Attempted to read or write protected memory....Management Studio 2012

    I'm getting that error when I select "Edit Top 200 Rows" on a table. The SMSS will crash. This is running on Windows server 2012 R2. Is there a fix, SP update, something? I did not have this problem on Windows Server 2012.
    TITLE: Microsoft SQL Server Management Studio
    Exception has been thrown by the target of an invocation. (mscorlib)
    ADDITIONAL INFORMATION:
    Attempted to read or write protected memory. This is often an indication that other memory is corrupt. (Microsoft.VisualStudio.OLE.Interop)
    BUTTONS:
    OK
    Lee

    Hi Lee,
    According to your description, it is a known issue that has been submitted to Microsoft. I recommend you voting in the following connect items, your feedback is valuable for us to improve our products and increase the level of service provided.
    http://connect.microsoft.com/SQLServer/feedbackdetail/view/952483/getting-error-when-right-click-table-of-sql-server-2014-db-and-click-edit-to-200-rows-in-ssms-2012
    https://connect.microsoft.com/SQLServer/feedback/details/817241/for-sql-2014-ctp-2-cu4-edit-top-200-rows-option-for-a-table-in-ssms-results-in-an-exception-and-tool-hang
    Additionally, I also reproduce the same error message as yours when using SSMS 2012 to connect  to SQL Server 2014 database on Windows Server 2008 R2  and selecting "Edit Top 200 Rows".
    To work around this issue, as Shanky’s post, please use SSMS 2014 to connect  to SQL Server 2014, then you can use the "Edit Top 200 Rows" feature. Or you can write T-SQL to edit data from SQL Server 2014 database in SSMS 2012.
    Thanks,
    Lydia Zhang
    If you have any feedback on our support, please click
    here.

  • Attempted to read or write protected memory problems

    Hi there, we are having some issues with ODP.net. every few days after our system has been used quite a lot we get the "Attempted to read or write protected memory. This is often an indication that other memory is corrupt." errors.
    I can reproduce this just by launching some threads that all make some DB calls, and after a while (took over an hour in the case) we encounter the error. It it not just one DB call causing it, looking at the logs it does appear to only be calls to 'Get' data, but just about all of them have failed at some point.
    Yes we have upgraded to the latest version 11.1.0.6.20 and it still happens. Here are some stack traces, Oracle.DataAccess.Client.OpsSql.AllocSqlValCtx seems to be the most common in the stack traces though, others do occur.
    at Oracle.DataAccess.Client.OpsSql.AllocSqlValCtx(OpoSqlValCtx*& pOpoSqlValCtx) at Oracle.DataAccess.Client.OracleCommand.BuildCommandText() at Oracle.DataAccess.Client.OracleCommand.ExecuteReader(Boolean requery, Boolean fillRequest, CommandBehavior behavior) at Oracle.DataAccess.Client.OracleCommand.ExecuteReader() at BUPA.HUGO.Common.DataAccessLayer.Database.StoredProcedures.ProspectSP.GetPersonProspectStoredProcedure.GetFullPersonDetailsDataReader(Int64 personId) in c:\Projects\CC.NETbuild_Hugo_Prod\Server\RF_Hugo_Services\Common\DataAccessLayer\Database\StoredProcedures\ProspectSP\GetPersonProspectStoredProcedure.cs:line 43
    Sometime the top of the stack is
    at Oracle.DataAccess.Client.OpsSql.CopySqlValCtx(OpoSqlValCtx* pOpoSqlValCtxSrc, OpoSqlValCtx*& pOpoSqlValCtxDst) at Oracle.DataAccess.Client.OracleParameter.PostBind_RefCursor(OracleConnection conn, OpoSqlValCtx* pOpoSqlValCtx) at Oracle.DataAccess.Client.OracleParameter.PostBind(OracleConnection conn, OpoSqlValCtx* pOpoSqlValCtx, Int32 arraySize) at Oracle.DataAccess.Client.OracleCommand.ExecuteReader(Boolean requery, Boolean fillRequest, CommandBehavior behavior) at
    or
    at Oracle.DataAccess.Client.OpsDac.Read(IntPtr opsConCtx, IntPtr opsErrCtx, IntPtr opsSqlCtx, IntPtr& opsDacCtx, OpoSqlValCtx* pOpoSqlValCtx, OpoMetValCtx* pOpoMetValCtx, OpoDacValCtx* pOpoDacValCtx) at Oracle.DataAccess.Client.OracleDataReader.Read()
    Does anyone have any ideas? I saw some older post just asking people to try the new version (which we have). Any help on this matter would be great. We are having trouble figuring out if it is something we are not doing correctly or if there is a bug in ODP.NET.
    Thank you,
    Luke

    Hello,
    I've got exactly the same problem. We're using ODP.NET 10g R2 10.2.0.3.02 with RAC database. I found that this error only occurs after a Failover event.
    My application is .NET 3.0 WPF app.
    I'm able to reproduce this error at any time.
    Please have a look at some source code:
    //opening OracleConnection:
    theConn.Open();
    theConn.Failover += new OracleFailoverEventHandler(theConn_Failover);
    // handling the Failover event as stated in the docs:
    static FailoverReturnCode theConn_Failover(object sender, OracleFailoverEventArgs eventArgs)
    Logging.LogInfo("DB-FailoverEvent: " + eventArgs.FailoverEvent.ToString() + " - Type: " + eventArgs.FailoverType.ToString());
    switch (eventArgs.FailoverEvent)
    case FailoverEvent.Begin:
    Logging.LogInfo("FailoverEvent.Begin - Failover is starting");
    Logging.LogInfo("FailoverType = " + eventArgs.FailoverType.ToString());
    break; // TODO: might not be correct. Was : Exit Select
    case FailoverEvent.End:
    Logging.LogInfo("FailoverEvent.End - Failover was successful");
    break; // TODO: might not be correct. Was : Exit Select
    case FailoverEvent.Reauth:
    Logging.LogInfo("FailoverEvent.Reauth - User reauthenticated");
    break; // TODO: might not be correct. Was : Exit Select
    case FailoverEvent.Error:
    Logging.LogInfo("FailoverEvent.Error - Failover was unsuccessful");
    // Sleep for 3 sec and Retry
    Thread.Sleep(3000);
    return FailoverReturnCode.Retry;
    case FailoverEvent.Abort:
    Logging.LogInfo("FailoverEvent.Abort - Failover was unsuccessful");
    break; // TODO: might not be correct. Was : Exit Select
    default:
    Logging.LogInfo("Invalid FailoverEvent : " + eventArgs.FailoverEvent.ToString());
    break; // TODO: might not be correct. Was : Exit Select
    // comment following lines will not raise an error
    if (connect2DB())
    return FailoverReturnCode.Success;
    else
    return FailoverReturnCode.Retry;
    And here's the source for checking DB-connection:
    private static bool connect2DB()
    if (null == myConn)
    myConn = openOracleConnection();
    if (null == myConn)
    Thread.Sleep(5000);
    return false;
    try
    if ((myConn.State == ConnectionState.Broken) || (myConn.State == ConnectionState.Closed))
    myConn = openOracleConnection();
    String sql = "SELECT 1 FROM dual";
    using (OracleCommand cmd = new OracleCommand())
    cmd.Connection = myConn;
    cmd.CommandText = sql;
    cmd.CommandTimeout = 2;
    using (OracleDataReader dr = cmd.ExecuteReader())
    dr.Read();
    catch (Exception ex)
    Logging.LogError(ex);
    closeOracleConnection(myConn);
    myConn = openOracleConnection();
    setDBConnState();
    if (null != myConn)
    if ((myConn.State == ConnectionState.Broken) || (myConn.State == ConnectionState.Closed))
    return false;
    else
    return true;
    else
    return false;
    When I don't call "connect2DB()" in the failover event handler then everything is fine - otherwise oops the error occurs after approx. 14 hours after application runtime.
    Regards
    Sven

  • PInvoke - Issue while calling DJVU function from C# Code - Attempted to read or write protected memory

    Hi,
    I know there are many questions in this subject but none of them help to resolve the issue I am currently facing.
    Below is the signature of C Function from DJVULibre added in .NET code
    [DllImport("C:\\Program Files\\DJVULIBRE\\LIBDJVULIBRE.dll", CharSet=CharSet.Ansi, CallingConvention = CallingConvention.Cdecl)]
    private unsafe static extern int ddjvu_page_render(IntPtr page, ddjvu_render_mode_t mode, IntPtr pagerect,
    IntPtr renderrect,
    IntPtr pixelformat,
    ulong rowsize,
    [Out][MarshalAs(UnmanagedType.LPArray)]byte[] imagebuffer);Below is how I am calling this function in the c# codebyte* buffer = (byte *)Memory.Alloc(nSize);
    try
    IntPtr ptr1 = (IntPtr)Memory.Alloc(Marshal.SizeOf(prect));
    Marshal.StructureToPtr(prect, ptr1, false);
    IntPtr ptr2 = (IntPtr)Memory.Alloc(Marshal.SizeOf(rrect));
    Marshal.StructureToPtr(rrect, ptr2, false);
    byte[] array = new byte[nSize];
    fixed (byte* p = array) Memory.Copy(buffer, p, nSize);
    ddjvu_page_render(page, ddjvu_render_mode_t.DDJVU_RENDER_MASKONLY, ptr1, ptr2, fmt, (ulong)stride, array);
    finally
    Memory.Free(buffer);
    }call to ddjvu_page_render in above code is throwing "Attempted to read or write protected memory. This is often an indication that other memory is corrupt."
    Prior to this post I must have tried all the option could find in various blogs.
    Appreciate any help, is almost a day I am clueless, your timely help could save my job

    Thanks Viorel, below is the definition of original C function
    DDJVUAPI int
    ddjvu_page_render(ddjvu_page_t *page,
    const ddjvu_render_mode_t mode,
    const ddjvu_rect_t *pagerect,
    const ddjvu_rect_t *renderrect,
    const ddjvu_format_t *pixelformat,
    unsigned long rowsize,
    char *imagebuffer );below is how the code is calling this function in C#, the in pointers are all valid pointer I checked in debugging window byte* buffer = (byte *)Memory.Alloc(nSize);
    try
    IntPtr ptr1 = (IntPtr)Memory.Alloc(Marshal.SizeOf(prect));
    Marshal.StructureToPtr(prect, ptr1, false);
    IntPtr ptr2 = (IntPtr)Memory.Alloc(Marshal.SizeOf(rrect));
    Marshal.StructureToPtr(rrect, ptr2, false);
    byte[] array = new byte[nSize];
    fixed (byte* p = array) Memory.Copy(buffer, p, nSize);
    ddjvu_page_render(page, ddjvu_render_mode_t.DDJVU_RENDER_MASKONLY, ptr1, ptr2, fmt, (ulong)stride, array);
    finally
    Memory.Free(buffer);

  • AccessViolationException: Attempted to read or write protected memory.

    Hello all.
    The application that I am working on has a Oracle DB 10g and we want to migrate the DB to 11g (11.2.0.2). The client OS is a Windows 7 x64 and the application (which is an x86 app) is a hybrid between .NET and C++(COM components). The .NET part is using ODP.NET components and the C++ part is using ODBC drivers (oraclient 11.2.0.1 - x86 version).
    The problem is that the application works without any problems with the 10g DB but when switching to 11g we get an exception. Basically, we have a try { call COM component } catch(Ex ex) {...} and the Exception ex is a AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt. I debugged the C++ part and this strange thing happens: the component opens the connection (using a connection string like this : "driver={Oracle in OraClient}; uid=... pwd=.. "), executes some queries, and on one query (which is the same as the last ones - just some selects), when the data is processed (by data I mean a integer ID), the exception is thrown in .NET code. I was able to enter in afxdb.cpp and it looks like the exception is thrown when GetData method is called. I looked over the ID's from previous queries and the data passed to GetData method is about the same (I mean the fieldtype, index, len, SQL type).
    As solutions I tried:
    -set "Statement Cache Purge=true" => same effect
    - install a instantclient11_2 basic and ODBC drivers (for 11.2.0.2) but I could not connect to the DB (I could find the new drivers in registry WoW64Node/ODBC Drivers, put the location in PATH in front of the other OraClient and replace the OraClient with the name in registry in conn string) => Specified driver could not be loaded due to system error 127.
    - tried to see the Marshal.GetLastWin32Error() => returns 0.
    Any ideas? :D
    Edited by: 917334 on Feb 27, 2012 12:57 PM

    The select clause that causes the problem is actually a select over a view. I replaced the select * from MYView with the actual select clause (with inner join) and the issue disappeared.
    Any ideas? :)
    Solution:
    Looks like the view was written using INNER JOIN stuff. I replaced the code from the view with a simple select like this (inner join free):
    select table1.col1, table2.col2, table3.col2, from table1, table2, table3 where table1.col1 = table2.col1 and table1.col1 = table3.col1
    Some questions still remain (even if my issue is partially solved):
    - why was it working on 10g?
    - why this particular view crashed? (there are other views that use inner join and don't cause this)
    - why was it working when using the full select (with inner join) and not working when selecting over the view?
    Edited by: 917334 on 28.02.2012 08:33

  • Attempted to read or write protected memory error

    Hello,
    I am using the .Net library and occasionally I get a System.AccessViolationException,"Attempted to read or write protected memory. This is often an indication that other memory is corrupt." Currently it is occurring when trying to initialize a TypedTPINIT object (this has happened in other places before and we just retry the request as a work-around). I set the size equal to the password length + 2 and the constructor for TypedTPINIT throws the exception after making the call to tpaloc. I have code that catches the exception and tries again up to 5 times before bubbling the exception up the chain. Once this exception occurs, no calls can be made to tux, they all throw the same exception. Once the application is closed and restarted (restarting the win32 process), everything works fine with the same data. It will work for a day or two and then fowl up again, seemingly at random. I am unable to reproduce the error at will, we just see it popup now and again, but closing the process and restarting it makes it go away for a while.
    Any idea why this exception is happening?
    I tried taking the .Net library out of the question and make the call to tpalloc myself using p/invoke and the same thing happens, but not every time.
    I appreciate any help you can provide.
    ~Jason

    Hi Jason,
    I would suggest using a memory access checking tool like bounds checker, electric fence, or the like, although I don't know what's available in a .NET environment.
    Regards,
    Todd Little
    Oracle Tuxedo Chief Architect

  • Attempted to read or write protected memory error on reportdocument.load

    Reportdocument.load causes "System.AccessViolationException: Attempted to read or write protected memory" error.
    The error is not consistent. Sometimes a report will print. Sometimes a report will error.
    I am at a loss as to what to try.
    I have uninstall the app, reinstalled the app, uninstall and reinstalled .NET frameworks, Visual C++ runtime, etc.,
    reworked the code to try to capture the error. Nothing helps. Application crashes with Unhandled exception.
    Attempted to read or write to protected memory.
    Has anyone been able to resolve this issue?

    Hi Mary,
    What happens if you set your project to use 4.0 framework?
    Anything else in the Event Viewer to show an access violation?
    Have you tried updating the printer driver to one that is supported in the Framework? I find most legacy printers tend to use the old DEVMODE structure and not the Framework. Try using the printer off the Window CD rather than the Manufacturers driver.
    Is your app doing "Report Bursting"? In other words sending multiple reports one right after the other with no time between?
    Are you using any legacy UFL's? Try renaming u2lcom.dll if you are not using them. If you do you'll get an error in formula.
    Are you using try/catch in your code around each CR API? It may catch something more for you also.
    AND, can you try a C# project, some thing very simple also. I've of issues in VS VB that do not show up in other dev languages. Neither Microsoft or SAP can figure out what the cause is.
    Thank you
    Don
    Edited by: Don Williams on Feb 11, 2011 2:34 PM

Maybe you are looking for

  • Problem in JDBC Adapter Mapping

    Hi all, I am working on a scenario wherein i am trying to connect an ORACLE DB to SAP 4.7 system using XI 3.0 . I configured the JDBC Adapter and the JDBC adpter is picking up the message but i have a problem in JDBC adpter Mapping. The error message

  • Back button causing items in Cart to Disappear

    Hi BC Community, Need some help with something.  A few of my client ecommerce sites are having some major issues at the large product/cart level.  Customers are adding something to the cart (which works fine), but then they hit the back button to con

  • How do I get rid of "Back To Form" on generated pages

    I have a page which is generated by PL/SQL. The page itself generates fine, but I always get "Back To Form" along with the success.gif icon. I want to get rid of both. I know I can replace the success.gif with a 1 pixel transparent image, but what ab

  • Very urgent please help me

    hai all, There will be no. of frames in my program. i am calling a frame in a java program using jsp based on selection. but it is not displaying that frame properly. its displaying in a very short manner. its not displaying any textboxes, buttons et

  • Color sample tool

    CS4. Windows XP When I put text into my image (name and copyright) the character window (tool bar) does not let me select a color.  For exampled I will type my name and year on my picture.  Then I select the text, open character tool, select color an