簡體   English   中英

如何修復C ++程序以解決數據庫連接運行時錯誤(0xC0000005)?

[英]How to fix c++ program for database connectivity run time error (0xC0000005)?

我寫了C ++程序以代碼塊的形式與PostgreSQL數據庫連接,沒有編譯錯誤,但顯示(0xC0000005)運行時錯誤。我正在將Code Blocks IDE與Mingw編譯器一起使用。 庫文件仍已連接,但未執行連接功能。 如果有人可以幫助如何解決?

#include <iostream>
#include <SQLAPI.h>   // main SQLAPI++ header
using namespace std;

int main(int argc, char* argv[])
{
     // create connection object to connect to database 
     SAConnection con;

        cout<<"connecting..\n"; 

它正在打印此“正在連接”的單詞,如果我在嘗試部分中給出了要打印的內容,那么它也在打印但不在連接功能之后。

    try {
            // connect to database 
    // in this example, it is Oracle, 
    // but can also be Sybase, Informix, DB2 
    // SQLServer, InterBase, SQLBase and ODBC 

    //Calling connect function through object of connection class and passing parameters to it.
             con.Connect("99999",    // database name
                     "postgres",  // user name
                      "9874159891974",  // password
          SA_PostgreSQL_Client); //postgresql Client

    cout<< "We are connected!\n";

        con.Disconnect(); // this is optional
        cout << "We are disconnected!\n";
    }

       catch(SAException & x)
    {    // SAConnection::Rollback() 
    // can also throw an exception 
    // (if a network error for example), 
    // we will be ready 

      cout<<"something went wrong"; // print error message 

                    }
    return 0 ;
}

我希望我的代碼中沒有錯誤,當我構建程序時,沒有編譯錯誤,也沒有警告顯示。

錯誤:

連接。進程返回-1073741819(0xC0000005)執行時間:2.251 s按任意鍵繼續。

***** DEBUGGER *******

設置斷點調試器名稱和版本:GNU gdb(GDB)7.9.1子進程PID:332程序收到信號SIGSEGV,分段故障。 在SAString.:cpp:517()的SAString :: Init(this = 0x4b9032)中

這是因為密碼長度或操作系統聲音系統。 WTF? 是! 外觀: https//www.google.com/search?ie = UTF-8&q =%22-1073741819%22

編輯1:在“ Csc.exe”中退出,代碼為-1073741819 ,此答案:

(...)我的問題是...我遇到了病毒/惡意軟件問題,而故障模塊是BITGUARD!

因此,如果有人遇到此問題,然后在這里搜索解決方案,我認為您必須嘗試使用​​任何免費的惡意軟件清除程序,看看Bitguard是否應該不是您的問題! (...)

和這個:

當我們公司更換防病毒軟件時,幾個月未曾使用過的應用程序突然開始出現生成錯誤“ csc.exe”,代碼為-532462766。

我使用新的AV客戶端掃描了無法構建的應用程序的bin文件夾。 該AV客戶端聲稱它已感染W32.Trojan.Genkd。 卸載該防病毒軟件可使它像往常一樣構建。 我認為隔離了一個文件,阻止了構建。

您的選擇可能是:

消毒文件(假定是實際感染)取消隔離“被感染”的文件(假定實際上是安全的)卸載/禁用AV客戶端更改AV軟件

證明問題可能出在SO上! 另外,您可以嘗試刪除bin和obj文件夾,然后清理和重建項目。

要進行調試,可以在項目屬性中標記部署數據庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM