|
|
also have a look on DBFETCH sample (MFC Sample ).
It demonstrates connect to any database.
|
|
|
|
|
Here is another example.
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Codeproject has good articles about Access and other databases.
|
|
|
|
|
How do i implement flex grids in a vc application? is it compulsory to have a database for that?? and can we read the data from a file and display it in flex grid?
|
|
|
|
|
Chandrasekharanp wrote: How do i implement flex grids in a vc application?
are you aware of msflexgrid. if not then i can help you.
Chandrasekharanp wrote: is it compulsory to have a database for that??
NO.
Chandrasekharanp wrote: and can we read the data from a file and display it in flex grid?
Sure! Very comfortably possible.
--------------------------------------------
Suggestion to the members:
Please prefix your main thread subject with [SOLVED] if it is solved.
thanks.
chandu.
|
|
|
|
|
well all the three answers are quite confidence boosters. i am aware of the control... now will i get some links reqarding this? so that i can start using it.
|
|
|
|
|
please do give me some ideas how to load the file into the flexgrid.
|
|
|
|
|
Hi, sorry i dont know this is correct forum for my question .
I took shortcut of MSDEV.EXE from 2003 server machine. My PC is windows XP. when i create MFC and when i run it , it shows cannot open afxres.h file.
and also ntdll.dll is not found.
When i create console application, it shows that build option is disabled.
Even i can rebuild the project, but it does not create exe file.
WHats the problem?
I dont want to install VC++ in my system, i have idea to get shortcut from another machine. Thats why i chose this way. But it shows lot of errors. Pls help me??
Anu
|
|
|
|
|
|
When i paste this DLL to system32, it tells that the dll is already used by windows ,Do you want to replace it?
When i click Yes. It asked me to save in another name. I cannot paste that.
Anu
|
|
|
|
|
What platform u r working ...i think VC 2003 ...k no probs ..i ll help u
then try another way to install it ..
1st way:
paste that dll in system folder not system32 ann then u build it.
2nd way:
1. open VC++ 2003 programe files folder wer to install it ..
2. And then open Search box folder type that box *.dll
3. And then its shows some vc++ dlls, right clic that dlls click open containing folder
4. then u ll paste that ntdll.dll to this folder.
5. Copy that file path and saved into Visual Studio (tools----on the way)
i thnk it lll work
Nisha.S
|
|
|
|
|
See here[^] of course its not directly your answer but see this link because you must not copy system files.
|
|
|
|
|
is theere any apis to create a wall message which will broadcast to all the active users in a windows server ..
vineesh
|
|
|
|
|
Have you considered NetMessageBufferSend() ? At a minimum, you can always use NET SEND * for this.
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Hello!
Here is what I am trying to do. I am writing an audio processing program that can read 16 and 24 bit WAV files into int (32-bit) buffers.
The 16-bit condition is straight-forward: I would read in the required number of bits into short buffers. However, since C++ does not have a native 24-bit datatype, and I would like to use the same buffer for 16 or 24 bit data, I would have to read the WAV file data into int buffers.
The further processing that the program does is on the ENTIRE contents of the int buffer and NOT on a byte-by-byte basis.
I have written the WAV read/write part of the program. Where I am running into a bit of difficulty is unpacking three bytes of data (24-bits) into a 32-bit container.
Should I copy the contents of the audio file into a temporary buffer as contiguous data and then fill my main buffer with three bytes of this data, and then skip a byte?
Is there any other way that you would recommend reading 24-bit data into a 32-bit buffer?
Thank you for your pointers, as it were. I do not expect code to be written for me, but pseudocode would be immensely helpful.
Thanks!
|
|
|
|
|
G'day,
You know sometimes pseudo code just seems too hard, hope code's okay
Something else you could consider is logical-ORing each byte as it's read into a variable of suitable length. You then bit-shift left by 8 bits and then OR in the next byte, and so on and so forth.
I can't remember the format of WAV files off-hand, I forget if they're little-endian or big-endian, but heres just one of many ways you could implement it.
Consider the code that follows. When executed, it produces the output:
Putting buffer into array of 24 bit nums
0x00010203
0x00040506
Putting buffer into array of 16 bit nums
0x00000102
0x00000304
0x00000506
Putting buffer into array of 24 bit nums - ROUND 2
0x03020100
0x06050400
Putting buffer into array of 16 bit nums - ROUND 2
0x02010000
0x04030000
0x06050000
** PORTABILITY WARNING **
I have not actually checked at runtime the sizeof different datatypes. (const int bitsInLong = 32) As well as the use of longs to store the elements of your converted and stored buffer. Long's are 64 bit in some systems.
This really must be done to avoid the code becoming broken. (it's late & I'm tired )
#include < stdio.h >
int main()
{
char soundBuffer[] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06};
long buf24[2];
long buf16[3];
const int bufLen = 6;
const int bytesIn24Bits = 3;
const int bytesIn16Bits = 2;
const int bitsInByte = 8;
const int bitsInLong = 32;
long iam16Bits, iam24Bits;
long i, j, k;
char *ptr;
printf("Putting buffer into array of 24 bit nums\n");
ptr = soundBuffer;
k = 0;
for (i=0; i < bufLen/bytesIn24Bits; i++)
{
iam24Bits = 0;
for (j=0; j < bytesIn24Bits; j++)
{
iam24Bits <<= bitsInByte;
iam24Bits |= *ptr++;
}
buf24[k++] = iam24Bits;
printf("0x%08x\n", iam24Bits);
}
printf("Putting buffer into array of 16 bit nums\n");
ptr = soundBuffer;
k = 0;
for (i=0; i < bufLen/bytesIn16Bits; i++)
{
iam16Bits = 0;
for (j=0; j < bytesIn16Bits; j++)
{
iam16Bits <<= bitsInByte;
iam16Bits |= *ptr++;
}
buf16[k++] = iam16Bits;
printf("0x%08x\n", iam16Bits);
}
printf("\n\n");
printf("Putting buffer into array of 24 bit nums - ROUND 2\n");
ptr = soundBuffer;
k = 0;
for (i=0; i < bufLen/bytesIn24Bits; i++)
{
iam24Bits = 0;
for (j=0; j < bytesIn24Bits; j++)
{
iam24Bits >>= bitsInByte;
iam24Bits |= *ptr++<<(bitsInLong-bitsInByte);
}
buf24[k++] = iam24Bits;
printf("0x%08x\n", iam24Bits);
}
printf("Putting buffer into array of 16 bit nums - ROUND 2\n");
ptr = soundBuffer;
k = 0;
for (i=0; i < bufLen/bytesIn16Bits; i++)
{
iam16Bits = 0;
for (j=0; j < bytesIn16Bits; j++)
{
iam16Bits >>= bitsInByte;
iam16Bits |= *ptr++<<(bitsInLong-bitsInByte);
}
buf16[k++] = iam16Bits;
printf("0x%08x\n", iam16Bits);
}
return 0;
}
The easiest way to make the world a better place is to refuse to help those that wreck it....
|
|
|
|
|
Thank you very much for your clear explanation and the code! It has been of great help and I modified it to exactly what I wanted.
Muchas Gracias!
N.
|
|
|
|
|
Does anyone know of a way to have a program (MFC) open Microsoft Word with the Pen selected instead of the cursor?
I am working on a program with a tablet PC, and want to find a way to have Windows select the pen when it opens rather than the cursor.
Any help or suggestions would be greatly appreciated.
Thanks for anything.
|
|
|
|
|
hi give your suggestion little bit more clear .i cant get what u r asking ?
Regards
Nisha.S
|
|
|
|
|
When you typically open Word, the cursor is selected to allow for immediate typing on the keyboard.
With a tablet PC, there is also a pen selection to where the user can "draw" on the screen with the stylus, instead of the normal cursor.
I am looking for a way to open Word with this pen selected as the default rather than the cursor.
|
|
|
|
|
Hello All
I have This Code [assignment] and I want the user to control over the maximum size of CSet.
using integer pointer instead of integer array and by constructor can specifies the desired size.
<br />
#include <iostream><br />
#include <conio.h><br />
using namespace std;<br />
<br />
const int maxCard = 100;<br />
<br />
class CSet <br />
{<br />
private:<br />
int elems[maxCard];<br />
int card;<br />
<br />
public:<br />
CSet()<br />
{<br />
card = 0;<br />
<br />
return;<br />
}<br />
<br />
bool Member (const int);<br />
void AddElem (const int);<br />
void RmvElem (const int);<br />
void Copy (CSet &);<br />
bool Equal (CSet &);<br />
void intersect (CSet &,CSet &);<br />
void Union (CSet &,CSet &);<br />
void print ();<br />
<br />
};<br />
<br />
bool CSet::Member(const int elem)<br />
{<br />
for (register int i = 0;i < card;++i)<br />
if (elems[i] == elem)<br />
return true;<br />
<br />
return false;<br />
}<br />
<br />
void CSet::AddElem(const int elem)<br />
{<br />
if (Member(elem))<br />
return;<br />
<br />
if (card < maxCard)<br />
elems[card++] = elem;<br />
else<br />
cout <<"Set Overflow"<<endl;<br />
}<br />
<br />
<br />
void CSet::RmvElem(const int elem)<br />
{<br />
for (register int i = 0;i <card;++i)<br />
if (elems[i] == elem)<br />
{<br />
for (;i<card - 1;++i)<br />
elems[i] = elems[i + 1];<br />
<br />
--card;<br />
}<br />
}<br />
<br />
void CSet::Copy(CSet &set)<br />
{<br />
for (register int i =0;i<card;++i)<br />
set.elems[i] = elems[i];<br />
<br />
set.card = card;<br />
<br />
return;<br />
}<br />
<br />
bool CSet::Equal(CSet &set)<br />
{<br />
if (card != set.card)<br />
return false;<br />
<br />
for (register int i = 0;i < card;++i)<br />
if (!set.Member(elems[i]))<br />
return false;<br />
<br />
return true;<br />
}<br />
<br />
void CSet::intersect(CSet & set,CSet &res)<br />
{<br />
res.card = 0;<br />
<br />
for (register int i = 0;i <card;++i)<br />
if (set.Member(elems[i]))<br />
res.elems[res.card++] = elems[i];<br />
<br />
return;<br />
}<br />
<br />
void CSet::Union(CSet &set,CSet &res)<br />
{<br />
set.Copy(res);<br />
<br />
for (register int i=0;i <card;++i)<br />
res.AddElem(elems[i]);<br />
<br />
return;<br />
}<br />
<br />
void CSet::print()<br />
{<br />
cout <<"{";<br />
<br />
for (int i=0;i<card-1;++i)<br />
cout <<elems[i] <<",";<br />
<br />
if (card > 0)<br />
cout <<elems[card - 1];<br />
cout <<"}\n";<br />
<br />
return;<br />
}<br />
<br />
int main ()<br />
{<br />
CSet s1,s2,s3;<br />
<br />
<br />
s1.AddElem(10);<br />
s1.AddElem(20);<br />
s1.AddElem(30);<br />
s1.AddElem(40);<br />
<br />
s2.AddElem(30);<br />
s2.AddElem(50);<br />
s2.AddElem(10);<br />
s2.AddElem(60);<br />
<br />
cout <<"S1 = ";<br />
s1.print();<br />
<br />
cout <<"\nS2 = ";<br />
s2.print();<br />
cout <<endl;<br />
<br />
if (s1.Member(20))<br />
cout <<"20 is in s1"<<endl;<br />
<br />
s1.intersect(s2,s3);<br />
cout <<"s1 intersection s2=";<br />
s3.print();<br />
<br />
s1.Union(s2,s3);<br />
cout <<"s1 union s2 = ";<br />
s3.print();<br />
<br />
if (!s1.Equal(s2))<br />
cout <<"s1 !=s2"<<endl;<br />
<br />
<br />
getch ();<br />
return 0;<br />
}<br />
Thank's For all
-*-*-*-*-*-*-*-*-*
To Be Or Not To Be
(KARFER)
-*-*-*-*-*-*-*-*-*
|
|
|
|
|
Making a pointer array is basic stuff.
Look into your book where the new and delete operators are explained. Also check the chapter which explains constructor s, and the answer to your question should be clear to you.
These are the basics for programming C++ so finding the answer on your own is really best for you in this case, just read these 2 chapters.
The only hint I'll give you is to use a parameter in the constructor and the elems will be a pointer in stead of an array. Have fun finding the answer, it should be quite easy with the hints I gave you and if you read about the points I mentioned.
Regards,
Davy
|
|
|
|
|
Hello
I want to build a multiband (from 60 Hz to 3 kHZ ) audio equalizer using Directshow and sample grabber.
1. I guess I must build band-pass filters ( I will work with FIR filters) to equalize sound.
Is there any sample or advice for that task ? For ex. what should number of taps in my filter be ?
2. Let's assume that I added ParamEq DMO to my graph. How can I change parameters for this filter ?
Regards,
Akin
|
|
|
|
|
Can anyone please tell me how to correct it.
Here is the code.
std::string strASCIIText;<br />
strASCIIText = "Hø";
But when i debug that i find that value of strASCIIText becomes"Hø", can anyone please tell me how to fix that.
This happens when i want to initialize std::string with extended ascii code.
Thanks,
Mushq
|
|
|
|