brotherjalal
یک شنبه 15 آبان 1390, 11:50 صبح
با سلام و احترام
من یک کنسول دارم که نیاز دارم برای ایجاد سرعت بیشتر آن را به صورت چند پروسسوری حل کنم بنا بر این رفته ام به سمت استفاده از TThread. اما متاسفانه نمی دانم چرا با وجود اینکه فایل های هدر را در هم در کلاس مربوط به TThread و هم در بخش اصلی کنسول قرار داده ام، یک ایراد اساسی بدون ارجاع به موقعیتی خاص از کد من به نام link 32 Error: Unresolved external '__tpdsc__ Classes::TThread' از من می گیرد.
جالب این است که وقتی یک فرم درست می کنم و دقیقاً همین کار ها را در یک فرم می کنم، اصلاً ایرادی نمی گیرد و برنامه اجرا می شود.
در ادامه برنامه ی بسیار ساده را نوشته ام. بسیار به من لطف خواهید نمود اگر چیزی به ذهنتان می رسد. پیشاپیش از شما کمال تشکر را دارم.
با سپاس و عرض ادب
جلالوند
بخش اصلی کنسول:
//---------------------------------------------------------------------------
#pragma hdrstop
#include "File2.h";
#include "Unit1.h"
#include <tchar.h>
//---------------------------------------------------------------------------
#pragma argsused
int _tmain(int argc, _TCHAR* argv[])
{
TMyThread* nt=new TMyThread(false);
return 0;
}
//---------------------------------------------------------------------------
بخش هدر کلاس چند نخی:
//---------------------------------------------------------------------------
#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
//---------------------------------------------------------------------------
class TMyThread : public TThread
{
private:
protected:
void __fastcall Execute();
public:
__fastcall TMyThread(bool CreateSuspended);
};
//---------------------------------------------------------------------------
#endif
تعریف کلاس مربوط به چند نخی:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "File2.h";
#include "Unit1.h"
#pragma package(smart_init)
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
__fastcall TMyThread::TMyThread(bool CreateSuspended)
: TThread(CreateSuspended)
{
}
//---------------------------------------------------------------------------
void __fastcall TMyThread::Execute()
{
//---- Place thread code here ----
}
//---------------------------------------------------------------------------
من یک کنسول دارم که نیاز دارم برای ایجاد سرعت بیشتر آن را به صورت چند پروسسوری حل کنم بنا بر این رفته ام به سمت استفاده از TThread. اما متاسفانه نمی دانم چرا با وجود اینکه فایل های هدر را در هم در کلاس مربوط به TThread و هم در بخش اصلی کنسول قرار داده ام، یک ایراد اساسی بدون ارجاع به موقعیتی خاص از کد من به نام link 32 Error: Unresolved external '__tpdsc__ Classes::TThread' از من می گیرد.
جالب این است که وقتی یک فرم درست می کنم و دقیقاً همین کار ها را در یک فرم می کنم، اصلاً ایرادی نمی گیرد و برنامه اجرا می شود.
در ادامه برنامه ی بسیار ساده را نوشته ام. بسیار به من لطف خواهید نمود اگر چیزی به ذهنتان می رسد. پیشاپیش از شما کمال تشکر را دارم.
با سپاس و عرض ادب
جلالوند
بخش اصلی کنسول:
//---------------------------------------------------------------------------
#pragma hdrstop
#include "File2.h";
#include "Unit1.h"
#include <tchar.h>
//---------------------------------------------------------------------------
#pragma argsused
int _tmain(int argc, _TCHAR* argv[])
{
TMyThread* nt=new TMyThread(false);
return 0;
}
//---------------------------------------------------------------------------
بخش هدر کلاس چند نخی:
//---------------------------------------------------------------------------
#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
//---------------------------------------------------------------------------
class TMyThread : public TThread
{
private:
protected:
void __fastcall Execute();
public:
__fastcall TMyThread(bool CreateSuspended);
};
//---------------------------------------------------------------------------
#endif
تعریف کلاس مربوط به چند نخی:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "File2.h";
#include "Unit1.h"
#pragma package(smart_init)
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
__fastcall TMyThread::TMyThread(bool CreateSuspended)
: TThread(CreateSuspended)
{
}
//---------------------------------------------------------------------------
void __fastcall TMyThread::Execute()
{
//---- Place thread code here ----
}
//---------------------------------------------------------------------------