|
yesterday you help me out to solve my dll problem ther only i am getting this error while inserting data through dll to sqlserver......if you want i can copy paste that code agin to help me..pls
|
|
|
|
|
With_problem wrote: yesterday you help me out to solve my dll problem
Ohh ! you have changed your nick name.
With_problem wrote: i am getting this error while inserting data through dll to sqlserver
If you see the callstack, it might point you in the code, where the problem is.
With_problem wrote: ......if you want i can copy paste that code agin to help me..pls
Its better to post code again. Its not me , who only is seeing this post. And everbody would not want to track your last post.
And it would be helpful if you tell where debugger taking you in the callstack.
|
|
|
|
|
this is my code......
typedef int (CALLBACK* Set_Quote_DB)(unsigned short**,short*,unsigned short**,unsigned short**,unsigned short**,short*);
void CArielProjectVer2Dlg::OnPriceChangeArielapictrl1(LPCTSTR SessionId, LPCTSTR RequestId, short MarketNo, LPCTSTR Market,LPCTSTR Bid, short BidDirection, LPCTSTR Ask, short AskDirection, LPCTSTR High, LPCTSTR Low, short MarketState, LPCTSTR Timestamp)
{
HINSTANCE hInstance=LoadLibrary("WartzODLCOM.dll");
Set_Quote_DB SetQuote;
SetQuote = (Set_Quote_DB)GetProcAddress(hInstance,"setQuoteToDb");
SessID=SessionId;
CurrentRequestId=RequestId;
CString marketstate,marketno,bid_d,ask_d;
marketno.Format("%d",MarketNo);
bid_d.Format("%c",BidDirection);
ask_d.Format("%c",AskDirection);
marketstate.Format("%d",MarketState);
m_MainEdit=m_MainEdit + "<Price Change> + SessionId + "\t" + RequestId +"\t"+ a ;
m_MainEdit=m_MainEdit + "\t"+ Market + Bid + b + Ask +c +"\t "+ High + "\t";
m_MainEdit=m_MainEdit + Low + "\t" + d + " "+ "\t" + Timestamp + "\r\n";
UpdateData(FALSE);
iLineCount=m_EditCtrl.GetLineCount();
m_EditCtrl.LineScroll(iLineCount);
USES_CONVERSION;
BSTR bsTimeStamp = A2BSTR(Timestamp);
BSTR bsMarket = A2BSTR(Market);
BSTR bsBid = A2BSTR(Bid);
BSTR bsAsk = A2BSTR(Ask);
// debugging error when calling this function...of dll....access violation
HRESULT hResult = SetQuote(&bsTimeStamp,&MarketNo,&bsMarket,&bsAsk,&bsBid,&MarketState);
if(FAILED(hResult))
{
AfxMessageBox(_T("Error inserting record"));
return;
}
else
{
MessageBox(_T("data entered" ));
}
SysFreeString(bsTimeStamp);
SysFreeString(bsMarket);
SysFreeString(bsBid);
SysFreeString(bsAsk);
FreeLibrary( hInstance );
}
-- modified at 3:02 Friday 15th December, 2006
|
|
|
|
|
With_problem wrote: HINSTANCE hInstance=LoadLibrary("WartzODLCOM.dll"); Set_Quote_DB SetQuote; SetQuote = (Set_Quote_DB)GetProcAddress(hInstance,"setQuoteToDb");
Have you checked hInstance, SetQuote for NULL.
I'm sure its NULL in your case.
|
|
|
|
|
sorry to bother you but can you tell me how to check...i am very new to vc++
|
|
|
|
|
INSTANCE hInstance=LoadLibrary("WartzODLCOM.dll");
if (hInstance == NULL)
{
return;
}
Set_Quote_DB SetQuote;
SetQuote = (Set_Quote_DB)GetProcAddress(hInstance,"setQuoteToDb");
if (SetQuote == NULL)
{
return;
}
I advise you to learn basic c/c++, before adventuring further.
|
|
|
|
|
Thanks for your advice.....i really dont know vc++/c++ but i got this project to be done...and i have no option...but ya after finishing this project this is last stage inserting the data i will first learn this lang. from basic.
And now about the problem..now it is ok no error but now it has stoped displaing anything in edit box...and also not inserting the data...any clue
|
|
|
|
|
With_problem wrote: now it is ok no error but now it has stoped displaing anything in edit box...and also not inserting the data...any clue
It is because, either your dll is not loaded, or not getting address of function you required.
Check from where it is returning, check valid dll is present it the path you mentioned.
|
|
|
|
|
yes i have checked my for dll :
project->setting->link->C:\ActiveXdll\WartzODLCOM.lib
And in c: drive also it is present wartzODLCOM.dll and .lib is present
And i have "#define WartzODLCOM" in my cpp file include where i am calling this dll function...
Now whats wrong here....
(Or should i need to include header file of dll in my project and then call function.....)
-- modified at 4:48 Friday 15th December, 2006
|
|
|
|
|
With_problem wrote: project->setting->link->C:\ActiveXdll\WartzODLCOM.lib
I this case you can directly call dll function.
I would suggest reading this series of article[^] to understand usage of dlls.
|
|
|
|
|
I am trying to include strsafe.h file to also my project but there is error no such file r directory.......can you help me how to solve this
|
|
|
|
|
make sure that you have updated Windows Plateform SDK if not you can download and install it from
"http://www.microsoft.com/downloads/details.aspx?FamilyId=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en" because the library which contains the "strsafe.h" functions won't be availaible to you without installing SDK. Once u have installed SDK go to Start->Programs->Microsoft Plateform SDK for Windows Server 2003 SPI->Visual Studio Registration->Registerd PSDK Directories with Visual Studio.
Once you have done with it you have to include the "strsafe.lib" in your program from Projects->Settings->Link.
Now include the "strsafe.h" in your program and and enjoy using strsafe functions.
VV IMPORTANT : Include "strsafe.h" at the end of all other include directives.
Thanks and Regards,
Love
Zeeshan Malik
Prepare yourseld for the life after death.God bless you.
|
|
|
|
|
i need tutorial to under stand the CFile
|
|
|
|
|
This[^] article may help you in some way.
|
|
|
|
|
ranaharoonkhan wrote:
i need tutorial to under stand the CFile
what about MSDN itself
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
Support CRY- Child Relief and you
|
|
|
|
|
|
Look on the msdn website. The msdn is the microsoft documentation site for windows classes and API, such as CFile.
OK, look at this[^] post. Sorry, had the same idea at the same time.
~RaGE();
I think words like 'destiny' are a way of trying to find order where none exists. - Christian Graus
|
|
|
|
|
I want to create virtual drive letters (e.g. X: ) that map to socket connections behind the scenes. I know it is possible because someone has already done something similar to what I want to do:
WebDrive[^]
What should be my approach to this? How does WebDrive do that?
|
|
|
|
|
How to get the date before 10 days from the current date
|
|
|
|
|
Does this work?
COleDateTime dt( 2006, 12, 14, 0, 0, 0);
COleDateTimeSpan ts( 10, 0, 0, 0);
COleDateTime dt2 = dt - ts;
[edit]Or actually:
COleDateTime dt = COleDateTime::GetCurrentTime();
[/edit]
- S
50 cups of coffee and you know it's on!
|
|
|
|
|
|
hi
I have to do a file conversion which is a very lengthy task.
To show user that the program is converting, I create a modalless dialog with a static text "CONVERTING..." on it. I intend to show it before calling the convert function and hide the dialog after conversion done. code like this:
CDlgInfo *dlg = new CDlgInfo;
dlg->Create(IDD_INFO,this);
dlg->ShowWindow(SW_SHOW);
CallConvertFunction(........sth...)
dlg->ShowWindow(SW_HIDE);
it doesn't work. my dialog show up without the static text on it.
If I replace the convert function call with MessageBox("laksdjlf") then my IDD_INFO dialog shows up with its static text with no proplem. I dont understand why this happen. I have try insert Sleep(1000) or even system("pause") before the convert function call but it also doesn't work.
|
|
|
|
|
Probably WM_PAINT messages are not being processed because no window messages are being dispatched
during CallConvertFunction().
What if you force a paint, something like this:
CDlgInfo *dlg = new CDlgInfo;
dlg->Create(IDD_INFO,this);
dlg->ShowWindow(SW_SHOW);
dlg->Invalidate(FALSE);
dlg->UpdateWindow();
CallConvertFunction(........sth...)
dlg->ShowWindow(SW_HIDE);
|
|
|
|
|
Thanks a lot. it now runs as I wish
my convert function uses all low level programming techniqe (i wrote it using just C, not C++) and is separated from all windows message. so it was really because of WM_PAINT messages not processed.
-- modified at 23:16 Thursday 14th December, 2006
|
|
|
|
|
Hello friends i am working with database and using "oledb consumer wizard"( provider for sqlserver )for connction with database....But i have a gr8 confusion here...
My table name is "T_Quote"(in .adp)but when i see table name in consumer wizard it is "db.T_Quote"
Can anybody help me to clear me why it is like this way....
|
|
|
|