|
I have ever installed eVC++ 4.0 with SP3
but I could not open eVC as it said I have not install any platform.
I would like to ask
SP3 is the the combination of SP2 and SP1, isn't it?
If yes, why it said that I have not install any platform as I had installed PPC 2003 SDK?
Thanks
|
|
|
|
|
|
yes
thanks~
however,
the article says, install the eV Tool 2002 first and then install eVC++4.0 with SP2
Then I have installed 2 eVC++ with different version. Is that right?
How can I NOT install 2 duplicate tools? Thanks
|
|
|
|
|
ting668 wrote:
Then I have installed 2 eVC++ with different version. Is that right?
Correct, that's what I do.
Regards,
João Paulo Figueira
Embedded MVP
|
|
|
|
|
Hi
I want to to do Localisation .dll for PocketPC. Is PocketPC support different language?. If Yes, How can I do my .rc dll for different language and use that from my application.
Any Suggestion is most welcome.
Regards
Patra
|
|
|
|
|
Is DirectShow/DirectX supported in Pocket pC?
Thanks
|
|
|
|
|
Hi just a quick Query.
Is it possible to convert a Visual Studio 2003 workspace to a EMbedded C++ 4.0?
Is the only way restart the project from scratch and add the files from the VS 2003 project? I have VS 2003 which enables to me to create a "smart device" project for
C# and VB only I would really like to port my VS 2003 workspace to the embedded platform but am unable to read it in embedded VC++.
Regards,
|
|
|
|
|
Hi all,
Now, I've Farsi support on my PPC 2003 device.
My development environment is eVC 4.0 ...
The problem is i cannot show my label texts on the application's dialog
The project type is Unicode.
I use below code but it doesn't work:
SetDlgItemText( IDC_STATIC_NAME, _T("Some setence in Farsi ...") );
I used MultiByteToWideChar function too but my strings doesn't display correctly in the labels
Please help me ...
Regards,
Hadi
|
|
|
|
|
Hi,
I found the answer
Thank you anyway
Regards,
Hadi
|
|
|
|
|
Can you Please tell me what is the Procedure should i follow for my PocketPC to support Farsi.
|
|
|
|
|
|
Hi~
I would like to ask
I have a C# program. The C# program will send some data to the today screen. How to achieve this?
Thanks
|
|
|
|
|
Hey all,
I'm looking to program some simple Win32 applications on a PocketPC 2003 and I was wondering what you all suggest for intro material. I'd really like some documentation to step me through it all.
I've been doing .NET CF work for a while, but now I want to break into the real stuff. Does anyone have suggestions of resources to check out? I'm looking to use this as a way to break into Win32 programming for the desktop, so I'm not too familiar with that either.
The documentation in the SDK is sparse and hard to follow for a newbie like myself.
Thanks,
Adam
-- Adam
"If you can't beat your computer in chess, try kickboxing"
|
|
|
|
|
|
I have an Edit Box in my dialog that I write various text into. When the text is larger than the Edit Box I want it to scroll. I added vertical scrolling to the properties and the bard appears OK but it is non-functional. Also when the text goes past the Edit Box size it does not scroll.
How can I get scrolling to work ??
Thanks
G. Weideman
|
|
|
|
|
You have to go into the resource editor and tell set the correct properties for the edit control. I believe if you want it to wrap and scroll, you have to set the "wants returns" property.
------- sig starts
"I've heard some drivers saying, 'We're going too fast here...'. If you're not here to race, go the hell home - don't come here and grumble about going too fast. Why don't you tie a kerosene rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
|
|
|
|
|
John
Thanks but I have the want return, vertical scroll and AutoVScroll set and the text does not scroll.
I snapshot the text already in the Edit Box (if any) with GetDlgItemText(hWnd, IDC_EDIT3,textBuff,1024), then add the new text to it and use SetWindowText(hWnd,IDC_EDIT3 ,textBuff) to display the text to IDC_EDIT3.
The Vertical Scroll Bar is being updated (it changes size) but I cannot move it and the text is not scrolling down.
Any other ideas ?
Thx
G. Weideman
|
|
|
|
|
Hi all,
I am using SQLCE 2.0 with embedded VC 3.0. Application hangs after 67th use of the IRowset object. How should IRowset be used? The error thrown is
"No enough space to perform this command". Please advise on how the rowset be used? How should the memory be handled in this case?
Thank you in advance
Mallee
|
|
|
|
|
Hi all,
Kindly suggest me an efficient way of handling rowsets in SQL CE. My dialog class is bit heavy and I am using the IRowset interface for SQLCE data retrieval. The application hangs when it reaches this method after few test runs. Not able to find where does the problem lie. Please suggest me the necessary resolution.
Thanks in advance,
Mallee
|
|
|
|
|
Hi all,
I am a newbie to SQLCE development . I am using embedded VC++ 3.0 with SQLCE 2.0 on PocketpC 2002 emulator. I am using IRowset and other associated interfaces for fetching records and iterating the rowset from SQLCE .sdf file. It works fine only for 2 to 3 times only. The application hangs when the processrowset method is invoked for repeated no. of times. The error caused is "Not enough storage space to perform this command" . This error occurs at the ICommandText:: Execute method. Following is the processrowset method used. Please help. Very urgent. Thanks in advance, Mallee
void CMyDB::ProcessRowset(int nSkipRecordsValue)
{
HRESULT hr = NOERROR;
LVITEM pitem;
long idx=0;
long lTotalRows = 0;
static long lTotalCols = 0;
long t1=0;
long t2=0;
long elapse=0;
ULONG lColumn = 0;
ULONG lNumCols = 0;
ULONG lCount = 0;
ULONG lNumRowsRetrieved = 0;
ULONG ConsumerBufColOffset = 0;
IAccessor *pIAccessor = NULL;
IColumnsInfo *pIColumnsInfo = NULL;
DBCOLUMNINFO *pDBColumnInfo = NULL;
DBBINDING *pBindings = NULL;
HACCESSOR hAccessor = NULL;
HROW hRows[100];
HROW *pRows = &hRows[0];
BYTE *pBuffer = NULL;
WCHAR *pStringsBuffer = NULL;
CStringArray szFields;
int intIndex=0;
t1 = GetTickCount();
//arrCustom1->RemoveAll();
// Obtain access to the IColumnInfo interface, from the Rowset object.
hr = m_pIRowset->QueryInterface(IID_IColumnsInfo,
(void **)&pIColumnsInfo);
if(FAILED(hr)) {
AfxMessageBox(_T("Failed to query IColumnsInfo interface!"));
}
else {
m_pIRowset->AddRef();
}
// Retrieve the column information.
pIColumnsInfo->GetColumnInfo(&lNumCols,
&pDBColumnInfo,
&pStringsBuffer);
// Free the column information interface.
pIColumnsInfo->Release();
// Create a DBBINDING array.
pBindings = new DBBINDING[lNumCols];
// Using the ColumnInfo structure, fill out the pBindings array.
for(lCount=0; lCount<lnumcols; lcount++)="" {
="" pbindings[lcount].iordinal="lCount+1;
" pbindings[lcount].obvalue="ConsumerBufColOffset;
" pbindings[lcount].ptypeinfo="NULL;
" pbindings[lcount].pobject="NULL;
" pbindings[lcount].pbindext="NULL;
" pbindings[lcount].dwpart="DBPART_VALUE;
" pbindings[lcount].dwmemowner="DBMEMOWNER_CLIENTOWNED;
" pbindings[lcount].eparamio="DBPARAMIO_NOTPARAM;
" pbindings[lcount].cbmaxlen="48;
" pbindings[lcount].dwflags="0;
" pbindings[lcount].wtype="DBTYPE_WSTR;
" pbindings[lcount].bprecision="pDBColumnInfo[lCount].bPrecision;
" pbindings[lcount].bscale="pDBColumnInfo[lCount].bScale;
" consumerbufcoloffset="" +="48;" pdbcolumninfo[lcount].ulcolumnsize;
="" }
=""
="" get="" the="" iaccessor="" interface.
="" hr="m_pIRowset-">QueryInterface(IID_IAccessor,
(void **)&pIAccessor);
// Validation
if(FAILED(hr)) {
AfxMessageBox(_T("Failed to query IAccessor interface!"));
}
else
m_pIRowset->AddRef();
// Create an accessor from the set of bindings (pBindings).
pIAccessor->CreateAccessor(DBACCESSOR_ROWDATA,
lNumCols,
pBindings,
0,
&hAccessor,
NULL);
lTotalCols = lNumCols;
// Get a record
m_pIRowset->GetNextRows(NULL,
0,
0,
&lNumRowsRetrieved,
&pRows);
// Allocate space for the row buffer.
pBuffer = new BYTE[ConsumerBufColOffset];
// Display the rows.
while(lNumRowsRetrieved > 0)
{
//For each row, print the column data.
for(lCount=0; lCount<lnumrowsretrieved; lcount++)="" {
=""
="" initialize...
="" memset(pbuffer,="" 0,="" consumerbufcoloffset);
="" get="" the="" row="" data="" values.
="" m_pirowset-="">GetData(hRows[lCount], hAccessor, pBuffer);
// -- Item
pitem.mask = LVIF_TEXT;
pitem.pszText = (LPTSTR)&pBuffer[pBindings[0].obValue];
pitem.iSubItem = 0;
//AfxMessageBox(pitem.pszText);
CString mFieldValue = pitem.pszText;
//arrCustom1->SetAt(intIndex++,mFieldValue);
arrCustom1->Add(mFieldValue);
}
// Release the rows retrieved.
// Release the rows retrieved.
m_pIRowset->ReleaseRows(lNumRowsRetrieved,
hRows,
NULL,
NULL,
NULL);
// Get the next set of 10 rows.
m_pIRowset->GetNextRows(NULL,
0,
0,
&lNumRowsRetrieved,
&pRows);
};
hr = S_OK;
if (NULL != pBuffer) {
CoTaskMemFree(pBuffer);
//pBuffer = NULL;
}
if (NULL != pIColumnsInfo) {
CoTaskMemFree(pIColumnsInfo);
pIColumnsInfo = NULL;
}
if (NULL != pBindings) {
CoTaskMemFree(pBindings);
pBindings = NULL;
}
pIAccessor->ReleaseAccessor(hAccessor,NULL);
pIAccessor->Release();
if (NULL != pIAccessor) {
CoTaskMemFree(pIAccessor);
pIAccessor = NULL;
}
if (NULL != m_pIRowset) {
CoTaskMemFree(m_pIRowset);
m_pIRowset = NULL;
}
return ;
}
|
|
|
|
|
I'm trying to port some ADO db code for use on PocketPC 2003. Is there a definitive explanation about what you need to do to make this a viable effort?
I have a machine with EVC3 installed, and was trying to use Joao's article, and it was importing the adoce31.tlb file, but I can't seem to find that file on my evc3 installation anywhere.
Thanks in advance.
------- sig starts
"I've heard some drivers saying, 'We're going too fast here...'. If you're not here to race, go the hell home - don't come here and grumble about going too fast. Why don't you tie a kerosene rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
|
|
|
|
|
Instead of adoce31.tlb, use adoce31.dll - it has all the type library info you need.
Regards,
João Paulo Figueira
Embedded MVP
|
|
|
|
|
Well, I tried that, and the compiler is complaining about _NewEnum. Here are the error messages:
<br />
adoce31.tlh(372) : error C2146: syntax error : missing ';' before identifier '_NewEnum'<br />
adoce31.tlh(372) : error C2501: 'IUnknownPtr' : missing storage-class or type specifiers<br />
adoce31.tli(16) : error C2065: '_com_issue_errorex' : undeclared identifier<br />
adoce31.tli(340) : error C2143: syntax error : missing ';' before 'tag::id'<br />
adoce31.tli(340) : error C2433: 'IUnknownPtr' : 'inline' not permitted on data declarations<br />
adoce31.tli(340) : error C2501: 'IUnknownPtr' : missing storage-class or type specifiers<br />
adoce31.tli(340) : fatal error C1004: unexpected end of file found<br />
Am I missing a step?
------- sig starts
"I've heard some drivers saying, 'We're going too fast here...'. If you're not here to race, go the hell home - don't come here and grumble about going too fast. Why don't you tie a kerosene rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
|
|
|
|
|
Here's how I do it:
#include <wceatl.h>
#include <comdef.h>
_COM_SMARTPTR_TYPEDEF(IUnknown, __uuidof(IUnknown));
void __stdcall _com_issue_error(HRESULT m_hr);
void __stdcall _com_issue_errorex(HRESULT hr, IUnknown *pUnkn, REFIID riid);
#import "C:\Windows CE Tools\wce300\Pocket PC 2002\dataaccess31\target\arm\adoce31.dll" rename_namespace("ADO") rename("EOF", "EndOfFile")
using namespace ADO;
You will have to define your own error handler in _com_issue_errorex .
Regards,
João Paulo Figueira
Embedded MVP
|
|
|
|
|
Many thanks, that cleared up that particular set of issues. Now, I'm in a proprietary file form of hell. If I find my way out, I'll let you know.
------- sig starts
"I've heard some drivers saying, 'We're going too fast here...'. If you're not here to race, go the hell home - don't come here and grumble about going too fast. Why don't you tie a kerosene rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
|
|
|
|