我編了一個程式功能為:從D
盤檔案夾選取txt檔案,并對檔案進行合并和資料提取。沒有封裝為.dll前程式能正常運行,封裝完以后出現如下錯誤提示:access violation at address xxxxx in module xx.dll,介面程式沒有問題,各位大神能提供一下幫助嗎,求指教,感激不盡
uj5u.com熱心網友回復:
自頂一下下
uj5u.com熱心網友回復:
代碼觸動了不應該觸動的東西一般來說,有些代碼應該在初始化完成或有實體創建完成才啟動的,你設計環境就啟動了,就很容易出錯
上一下關鍵代碼
uj5u.com熱心網友回復:
多謝幫忙,代碼如下,我用斷點除錯以后發現當執行到讓檔案名在edit1顯示的時候就報錯,麻煩再幫忙看一下,謝謝
_fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
int row;
int lines;
const char *importFilePath;
FILE *fp=NULL;
OpenDialog1->InitialDir="D:\\";
OpenDialog1->Filter= "文本檔案(*.txt)|*.txt|所有檔案(*.*)|*.*";
SaveDialog1->InitialDir ="D:\\";
SaveDialog1->Filter= "文本檔案(*.txt)|*.txt|所有檔案(*.*)|*.*";
SaveDialog1->DefaultExt = ".txt" ;
OpenDialog2->InitialDir="D:\\";
OpenDialog2->Filter= "文本檔案(*.txt)|*.txt|所有檔案(*.*)|*.*";
SaveDialog2->FileName ="SwarmUUV";
SaveDialog2->InitialDir ="D:\\";
SaveDialog2->Filter= "文本檔案(*.txt)|*.txt|所有檔案(*.*)|*.*";
SaveDialog2->DefaultExt = ".txt" ;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ImportFileButtonClick(TObject *Sender)
{
OpenDialog1->Execute();
Form1->Edit1->Text = Form1->OpenDialog1->FileName;
}
uj5u.com熱心網友回復:
OpenDialog1->Execute();可能回傳false,要if判斷一下。uj5u.com熱心網友回復:
好的,謝謝,我試一下子uj5u.com熱心網友回復:
如果真的回傳了要怎么處理呀,謝謝
uj5u.com熱心網友回復:
if (OpenDialog1->Execute())Form1->Edit1->Text = Form1->OpenDialog1->FileName;
uj5u.com熱心網友回復:
如果按取消或者沒有選擇檔案而關閉對話框,會回傳false。uj5u.com熱心網友回復:
非常感謝,不過還是有同樣的錯誤uj5u.com熱心網友回復:
謝謝,不過還是不行uj5u.com熱心網友回復:
給位大神,非常感謝你們出馬,問題解決了,將Form1指標修改為this就行了轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/32561.html
標籤:VCL組件開發及應用
下一篇:安裝 TeeChart_Pro_2017 時提示 No IDE environments have been found installed o
