Bazen Bu hata ayıklama modunda benim Qt projesini (image) çalıştıran hata "ayıklama onaylama işlemi başarısız" olsun. Nerede hata yaptığımı bilmiyorum çünkü derleyici hiçbir şey söylemiyor ve hatayı bulmak için ne yapacağımı bilmiyorum. Qt Creator 2.4.1, Qt 4.8.1 kullanarak Windows Vista altındaayıklama onaylama işlemi başarısız: _CrtIsValidHeapPointer (pUserData)
Ben programı. Bence burada sorun (
void runFunction()
{
configure_Scanning(...);
while(...)
{
// do something
scanFunction();
// do something
}
}
ve bu benim "suçlu gösterdiğini" fonksiyonudur:
Programım bir lazer cihazından bazı bilgileri okumak ve buna benzer bir kod ile bir dosyaya kaydetmek zorundadır Fikir ben fro (çift yönlü tarama 2D matrisinde bilgileri kaydetmek için yapmalarıdır: linea ve lineB başlangıçta iki boşluk QString vardır)
void scanFunction()
{
file.open();
data = getDataFromDevice();
if(flag)
{
if(QString::compare(lineB,"")!=0)
{
QTextStream out(&file);
out << lineB << endl;
lineB = "";
}
lineA.append(data+"\t");
}
else
{
if(QString::compare(lineA,"")!=0)
{
QTextStream out(&file);
out << lineA << endl;
lineA = "";
}
lineB.prepend(data+"\t");
}
file.close();
}
m -X ile + X ve viceversa, Y ise belirli bir hedefe gider. lineA (-) - (+) okumasını hafızaya alır; satır B (+) - (-) okumayı hafızaya alır. Tarama yönü değişir, ben dosyaya Linea (veya lineB) yazıp ben tarama işlemine devam zaman.
Ne dediğimi anlıyor musunuz? Bana bir çözüm önerebilir misiniz? Benim İngilizce için
Teşekkür ve üzgün: P
tık diyor gibi, programı debug. Ardından çağrı yığınını kontrol edin veya bu soruya ekleyin ve neyin yanlış gittiğine dair daha iyi bir fikir edinmelisiniz. Bir sidenote'de, bir dosyayı sürekli olarak açıp kapamanız muhtemelen gerekli değildir ve bazı ek yüklere neden olur. – stijn
Her adımda bir dosyayı açıp kapamanın en iyi strateji olmadığını biliyorum, ancak beklenmedik kesintilerde veri kaybını önlemek için bunu yapmak zorundayım. –
, 'flush()' ın yaptığı şey değil mi? Ben kodu 'File.Open()' ve 'dosya.close eklerseniz – stijn