Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
CODE PROJECT For Those Who Code
  • Home
  • Articles
  • FAQ
Community
  1. Home
  2. General Programming
  3. C / C++ / MFC
  4. calling function...dll

calling function...dll

Scheduled Pinned Locked Moved C / C++ / MFC
helpdatabasesysadmin
13 Posts 2 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • W With_problem

    setQuoteToDB' : cannot convert parameter 1 from 'const char *' to 'unsigned short ** '

    P Offline
    P Offline
    prasad_som
    wrote on last edited by
    #4

    You are passing LPCTSTR in place of BSTR*. Convert LPCTSTR to BSTR by using

    USES_CONVERSION;
    BSTR b =A2BSTR(lpszText);//lpszText is LPCSTR

    and pass it address to wherever BSTR* is required.

    Prasad Notifier using ATL | Operator new[],delete[][^]

    W 1 Reply Last reply
    0
    • P prasad_som

      You are passing LPCTSTR in place of BSTR*. Convert LPCTSTR to BSTR by using

      USES_CONVERSION;
      BSTR b =A2BSTR(lpszText);//lpszText is LPCSTR

      and pass it address to wherever BSTR* is required.

      Prasad Notifier using ATL | Operator new[],delete[][^]

      W Offline
      W Offline
      With_problem
      wrote on last edited by
      #5

      Can you tell me more clearly...by writing one converting data type...i am very thankful to you

      1 Reply Last reply
      0
      • W With_problem

        //This is dll function which i am calling to insert data short setQuoteToDB(BSTR* strDateTimeStamp, short* intMarketNo, BSTR* strMarketName, BSTR* strBid, BSTR* strAsk, short* intMarketState); // This is function from which i am getting data fom remote server 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) Now when i call this dll function....setQuotetoDB...by passing parameter i got error setQuoteToDB(Timestamp,marketno,Market,ask_d,bid_d,marketstate); What should i do so that i can insert data...in database...any help...

        P Offline
        P Offline
        prasad_som
        wrote on last edited by
        #6

        abrakadbra wrote:

        setQuoteToDB(Timestamp,marketno,Market,ask_d,bid_d,marketstate

        This call would go like,

        USES_CONVERSION;
        BSTR bsTimeStamp = A2BSTR(Timestamp);
        BSTR bsMarket = A2BSTR(Market);
        BSTR bsBid = A2BSTR(Bid);
        BSTR bsAsk = A2BSTR(Ask);
        setQuoteToDB(&bsTimeStamp,&marketno,&bsMarket,&bsAsk,&bsBid,&marketstate);
        // in above call short* parameter will go as it is
        SysFreeString(bsTimeStamp);
        SysFreeString(bsMarket);
        SysFreeString(bsBid);
        SysFreeString(bsAsk);

        Prasad Notifier using ATL | Operator new[],delete[][^]

        W 3 Replies Last reply
        0
        • P prasad_som

          abrakadbra wrote:

          setQuoteToDB(Timestamp,marketno,Market,ask_d,bid_d,marketstate

          This call would go like,

          USES_CONVERSION;
          BSTR bsTimeStamp = A2BSTR(Timestamp);
          BSTR bsMarket = A2BSTR(Market);
          BSTR bsBid = A2BSTR(Bid);
          BSTR bsAsk = A2BSTR(Ask);
          setQuoteToDB(&bsTimeStamp,&marketno,&bsMarket,&bsAsk,&bsBid,&marketstate);
          // in above call short* parameter will go as it is
          SysFreeString(bsTimeStamp);
          SysFreeString(bsMarket);
          SysFreeString(bsBid);
          SysFreeString(bsAsk);

          Prasad Notifier using ATL | Operator new[],delete[][^]

          W Offline
          W Offline
          With_problem
          wrote on last edited by
          #7

          I am really thankful for your effort....i am trying to solve this from past 20 days but now i am getting error for 'setQuoteToDB' : cannot convert parameter 2 from 'class CString *' to 'short *' How to solve this....pls

          1 Reply Last reply
          0
          • P prasad_som

            abrakadbra wrote:

            setQuoteToDB(Timestamp,marketno,Market,ask_d,bid_d,marketstate

            This call would go like,

            USES_CONVERSION;
            BSTR bsTimeStamp = A2BSTR(Timestamp);
            BSTR bsMarket = A2BSTR(Market);
            BSTR bsBid = A2BSTR(Bid);
            BSTR bsAsk = A2BSTR(Ask);
            setQuoteToDB(&bsTimeStamp,&marketno,&bsMarket,&bsAsk,&bsBid,&marketstate);
            // in above call short* parameter will go as it is
            SysFreeString(bsTimeStamp);
            SysFreeString(bsMarket);
            SysFreeString(bsBid);
            SysFreeString(bsAsk);

            Prasad Notifier using ATL | Operator new[],delete[][^]

            W Offline
            W Offline
            With_problem
            wrote on last edited by
            #8

            I have define 1)marketno and market state as CString to format(marketno.Format("%d",MarketNo); 2)marketstate.Format("%d",MarketState);

            1 Reply Last reply
            0
            • P prasad_som

              abrakadbra wrote:

              setQuoteToDB(Timestamp,marketno,Market,ask_d,bid_d,marketstate

              This call would go like,

              USES_CONVERSION;
              BSTR bsTimeStamp = A2BSTR(Timestamp);
              BSTR bsMarket = A2BSTR(Market);
              BSTR bsBid = A2BSTR(Bid);
              BSTR bsAsk = A2BSTR(Ask);
              setQuoteToDB(&bsTimeStamp,&marketno,&bsMarket,&bsAsk,&bsBid,&marketstate);
              // in above call short* parameter will go as it is
              SysFreeString(bsTimeStamp);
              SysFreeString(bsMarket);
              SysFreeString(bsBid);
              SysFreeString(bsAsk);

              Prasad Notifier using ATL | Operator new[],delete[][^]

              W Offline
              W Offline
              With_problem
              wrote on last edited by
              #9

              you are not going to hlp me anymore????pls help me....:(

              P 1 Reply Last reply
              0
              • W With_problem

                you are not going to hlp me anymore????pls help me....:(

                P Offline
                P Offline
                prasad_som
                wrote on last edited by
                #10

                To make others solve your problem, you need to give complete/clear problem definition. You can convert CString to BSTR using CString::AllocSysString().

                Prasad Notifier using ATL | Operator new[],delete[][^]

                W 1 Reply Last reply
                0
                • P prasad_som

                  To make others solve your problem, you need to give complete/clear problem definition. You can convert CString to BSTR using CString::AllocSysString().

                  Prasad Notifier using ATL | Operator new[],delete[][^]

                  W Offline
                  W Offline
                  With_problem
                  wrote on last edited by
                  #11

                  This is the complete code i am using and geeting error for marketno,and marketstate setQuoteToDB' : cannot convert parameter 2 from 'unsigned short ** ' to '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) { // TODO: Add your control notification handler code here SessID=SessionId; CurrentRequestId=RequestId; txtMarket = Market; // declaration of vaiable for marketno and market state as CString marketno.Format("%d",MarketNo); bid_d.Format("%c",BidDirection); ask_d.Format("%c",AskDirection); marketstate.Format("%d",MarketState); m_MainEdit=m_MainEdit + "" + SessionId + RequestId + marketno ; m_MainEdit=m_MainEdit + Market + Bid + bid_d + Ask +ask_d + High ; m_MainEdit=m_MainEdit + Low marketstate + Timestamp + "\r\n"; UpdateData(FALSE); iLineCount=m_EditCtrl.GetLineCount(); m_EditCtrl.LineScroll(iLineCount); USES_CONVERSION; BSTR bsmarketno = marketno.AllocSysString(); BSTR bsTimeStamp = A2BSTR(Timestamp); BSTR bsMarket = A2BSTR(Market); BSTR bsBid = A2BSTR(Bid); BSTR bsAsk = A2BSTR(Ask); setQuoteToDB(&bsTimeStamp,&bsmarketno,&bsMarket,&bsAsk,&bsBid,&marketstate); SysFreeString(bsTimeStamp); SysFreeString(bsMarket); SysFreeString(bsBid); SysFreeString(bsAsk); Error: setQuoteToDB' : cannot convert parameter 2 from 'unsigned short ** ' to 'short *'

                  P 1 Reply Last reply
                  0
                  • W With_problem

                    This is the complete code i am using and geeting error for marketno,and marketstate setQuoteToDB' : cannot convert parameter 2 from 'unsigned short ** ' to '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) { // TODO: Add your control notification handler code here SessID=SessionId; CurrentRequestId=RequestId; txtMarket = Market; // declaration of vaiable for marketno and market state as CString marketno.Format("%d",MarketNo); bid_d.Format("%c",BidDirection); ask_d.Format("%c",AskDirection); marketstate.Format("%d",MarketState); m_MainEdit=m_MainEdit + "" + SessionId + RequestId + marketno ; m_MainEdit=m_MainEdit + Market + Bid + bid_d + Ask +ask_d + High ; m_MainEdit=m_MainEdit + Low marketstate + Timestamp + "\r\n"; UpdateData(FALSE); iLineCount=m_EditCtrl.GetLineCount(); m_EditCtrl.LineScroll(iLineCount); USES_CONVERSION; BSTR bsmarketno = marketno.AllocSysString(); BSTR bsTimeStamp = A2BSTR(Timestamp); BSTR bsMarket = A2BSTR(Market); BSTR bsBid = A2BSTR(Bid); BSTR bsAsk = A2BSTR(Ask); setQuoteToDB(&bsTimeStamp,&bsmarketno,&bsMarket,&bsAsk,&bsBid,&marketstate); SysFreeString(bsTimeStamp); SysFreeString(bsMarket); SysFreeString(bsBid); SysFreeString(bsAsk); Error: setQuoteToDB' : cannot convert parameter 2 from 'unsigned short ** ' to 'short *'

                    P Offline
                    P Offline
                    prasad_som
                    wrote on last edited by
                    #12

                    abrakadbra wrote:

                    setQuoteToDB(&bsTimeStamp,&bsmarketno,&bsMarket,&bsAsk,&bsBid,&marketstate);

                    Second parameter is short*, you need to pass address of MarketNo. Your call would be like ;

                    setQuoteToDB(&bsTimeStamp,&MarketNo,&bsMarket,&bsAsk,&bsBid,&marketstate);

                    Prasad Notifier using ATL | Operator new[],delete[][^]

                    W 1 Reply Last reply
                    0
                    • P prasad_som

                      abrakadbra wrote:

                      setQuoteToDB(&bsTimeStamp,&bsmarketno,&bsMarket,&bsAsk,&bsBid,&marketstate);

                      Second parameter is short*, you need to pass address of MarketNo. Your call would be like ;

                      setQuoteToDB(&bsTimeStamp,&MarketNo,&bsMarket,&bsAsk,&bsBid,&marketstate);

                      Prasad Notifier using ATL | Operator new[],delete[][^]

                      W Offline
                      W Offline
                      With_problem
                      wrote on last edited by
                      #13

                      i have no word to say thank you:rose: Thanks again..now it is ok...

                      1 Reply Last reply
                      0
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      • Login

                      • Don't have an account? Register

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • World
                      • Users
                      • Groups