|
Yes, a thread is simply a function that will be called in parallel with the rest of your program. So that means that if you lock something in your main thread; your second thread will continue to run independantly.
So, in your thread, you'll need to receive data and store them somewhere accessible from the rest of your program. But warning ! You need to secure your data to avoid both thread trying to access it at the 'same time'. Take a look at CriticalSections[^] for example.
|
|
|
|
|
Hi,
Can anyone pls. explain what are the dis-advantages of connecting to ORacle through DSN rather than using Pro C.
I wish to learn Pro C to connect to Oracle from VC++ is there any article to go about from the start.
Thanks,
Arun.
|
|
|
|
|
arunperi wrote: ...what are the dis-advantages of connecting to ORacle through DSN rather than using Pro C.
You are comparing apples to oranges here. A DSN is language independent.
arunperi wrote: I wish to learn Pro C to connect to Oracle from VC++ is there any article to go about from the start.
As long as you are able to access the ODBC API, you're fine.
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
|
|
|
|
|
My doubt is:
We have two methods through which anyone can connect to Oracle from VC++:
a)through DSN
b)using Pro C
which of these methods is better, obviously it must be through Pro C in such case, what are the advantages or dis-advantages of each.
Hope you have understood my doubt,
Thanks.
|
|
|
|
|
arunperi wrote: ...obviously it must be through Pro C...
Why would that be obvious? What metrics do you have?
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
|
|
|
|
|
how can i get the Names of machines along with the IP address on a network ? it will be of a great help .
Thanks in advance
kss
|
|
|
|
|
use WNetOpenEnum,WNetEnumResource with the NETRESOURCE structure
Populate the functions and you will get the names of the machines
Pass the names of the machines as szHostName :
gethostname( szHostName, strlen( szHostName ) );
host = gethostbyname(strFullName);
ptr = (struct in_addr *) host->h_addr_list[0];
int a = ptr->S_un.S_un_b.s_b1;
int b = ptr->S_un.S_un_b.s_b2;
int c = ptr->S_un.S_un_b.s_b3;
int d = ptr->S_un.S_un_b.s_b4;
strTemp.Format("%s %d.%d.%d.%d",strFullName,a,b,c,d);
To get the IP Address of the machines in the network
Wishes.
Anshuman Dandekar
Dare to Dream,
Care to Achieve.............
|
|
|
|
|
Thanks Ansuman,
There is one more doubt
When i am trying to compile my application in MFC using WNet. it is throwing Unresolved External Symbols and the Mangled Function name
Why ? so
kss
|
|
|
|
|
Did you include the file mpr.lib
you can do this as follows
project>settings>links/object/library modules and add mpr.lib in that box
Wishes.
Anshuman Dandekar
Dare to Dream,
Care to Achieve.............
|
|
|
|
|
Yes i did not include the mpr.lib , Thanks again for this help. I will test it out.
kss
|
|
|
|
|
AnShUmAn_VCPP wrote: gethostname( szHostName, strlen( szHostName ) );
This retrieves the name of the local machine only.
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
|
|
|
|
|
You probably didnt't pass the parameters properly.
This is the height of proper values being needed to be passed in the functions.
You didn't specify what value did you pass in this function ?.
once you pass resource_globalnet as the first parameter you can get all the machine names in the network.Resoucetype_any specifies that the resource could be anything like a printer etc.
WNetOpenEnum( RESOURCE_GLOBALNET, RESOURCETYPE_ANY, 0, pnr, &hEnum );
WNetEnumResource( hEnum, &count, buf, &bufsize );
Vision is important and so is ATTITUDE.
Wishes.
Anshuman Dandekar
Dare to Dream,
Care to Achieve.............
-- modified at 22:33 Monday 20th February, 2006
|
|
|
|
|
AnShUmAn_VCPP wrote:
You probably didnt't pass the parameters properly.
Sure I did.
AnShUmAn_VCPP wrote: This is the height of proper values being needed to be passed in the functions.
Not sure what this says.
AnShUmAn_VCPP wrote: You didn't specify what value did you pass in this function ?.
Huh?
AnShUmAn_VCPP wrote: once you pass resource_globalnet as the first parameter...
gethostname() only takes two arguments, neither of which is RESOURCE_GLOBALNET .
Re-read this thread to see where you got confused.
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
|
|
|
|
|
WNetOpenEnum( RESOURCE_GLOBALNET, RESOURCETYPE_ANY, 0, pnr, &hEnum );
Pass Globalnet option in this function .See my previos post to this question
Vision is Always important and so is your ATTITUDE.
Wishes.
Anshuman Dandekar
|
|
|
|
|
AnShUmAn_VCPP wrote: WNetOpenEnum( RESOURCE_GLOBALNET, RESOURCETYPE_ANY, 0, pnr, &hEnum );
Pass Globalnet option in this function
I very well versed in its usage. Thanks.
AnShUmAn_VCPP wrote: See my previos post to this question
Your initial response to "fearless" is where things went awry. For some unknown reason, you suggested that gethostname() could be used "to get the Names of machines Running on a Network." I corrected you by saying that this function was only for retrieving the name of the local machine. Make sense now?
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
|
|
|
|
|
I asked him to use WNet... Functions and populate them
I told him to pass the values to gethostbyname and change it to get the IP Address. Just check my first post to this question
Anyways its good to keep confusions away.
I will take it as a advise from you and try and make my posts more accurate
Vision is Always important and so is your ATTITUDE.
Wishes.
Anshuman Dandekar
|
|
|
|
|
Ok Lets Please stop it here guys, I got the program running and its working fine.Thanks a lot to both of you.
kss
|
|
|
|
|
AnShUmAn_VCPP wrote: I told him to pass the values to gethostbyname and change it to get the IP Address. Just check my first post to this question
Perhaps you should check out that post. You suggested gethostname() , which I indicated was to get the name of the local machine only. See the difference?
"Let us be thankful for the fools. But for them the rest of us could not succeed." - Mark Twain
|
|
|
|
|
HI,
I have some value in string object like
CString str = "ABC"
I want to create an array with the name that is the value in the string object, in the current exapmle it is "ABC"
so it should be
CObArray ABC;
How can I do this? That define a name of an aray that is the value got from some where.
Thanks
Regards.
|
|
|
|
|
You can't.
The best solution would be to dynamically create the array and add it to a map using the name.
Anyone who thinks he has a better idea of what's good for people than people do is a swine.
- P.J. O'Rourke
|
|
|
|
|
Thanks,
Would you like to give me a code snipt , that how can I create and add to a map
Thanks again
Regards.
|
|
|
|
|
Find out how to use the MFC CMap<> or the STL map<>.
Use the MFC CArray<> or the STL vector<>
Eventually you will do something akin to mymap.Add(string, new CArray<>());
Anyone who thinks he has a better idea of what's good for people than people do is a swine.
- P.J. O'Rourke
|
|
|
|
|
Like said by Joe, you can't. But there is surely another solution to your problem. Maybe if you explain us what you want to achieve exactly, we could find a solution.
|
|
|
|
|
Hi,
Is there a Tab change (Tab click) event in CPropertySheet. Pls let me know what it is.
Thank you
Mohan
|
|
|
|
|
This method will be called when a property page is activated...
CPropertyPage::OnSetActive()
Owner drawn
Jesus Loves
|
|
|
|