|
|
Phoenix101 wrote: I'm a 2nd year IT student and i desperately need some help on how to implement network capability into my programs
http://www.codeproject.com/internet/#Client%2FServer+Development[^]
Phoenix101 wrote: i can get some winsock2 tutorials for beginners please forward me a mail if it's not to much to ask 205017517@cput.ac.za
please try not to post your email address in the public forums for three reason!
1. you can be victim of spam
2. you lecturer migth be watching this forums..
3. you could be got flamed for following up the message and asking forum users to mail you!
"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
|
|
|
|
|
three reason
|
|
|
|
|
WhiteSky wrote:
three reason
i like third Reason most
"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
|
|
|
|
|
i would like to get some help from you guys. i am doing porject on PCINfo A-Z which is on java. i am attemting to do using JNI( Java Native Interface) through Visualc++.
my project basically deals about displaying information of processor, memory, ram, cache etc. like BenchMark tools.
so i would like to get some help and if any one of the codeproject member can suggest me as far possible.
hopping to get some help.
thanks
contact at:
khanalforarjun@hotmail.com
khanaltoarjun@yahoo.com
khanaltoarjun@gmail.com
|
|
|
|
|
I don't know how to do it, but I would eliminate your e-mail addresses from the message, you will be heavily spammed if any spam guy finds thos addresses, and everybody will be able to answer your uqestion as I've done by clicking the answer button.
Sorry for not answering your question...
|
|
|
|
|
>>hi everybody
Hi Dr Nick!
I'm not sure about the JNI stuff (wrong message board for that) but some Windows APIs may be
helpful...here's a start:
GetVersionEx()
GetSystemInfo()
GlobalMemoryStatusEx()
|
|
|
|
|
Is it possible to insert an element directly into it's 'right' place in an ordered vector, instead of using push_back() and then sort()? If not, is it possible with a list?
Thanks,
Avi.
|
|
|
|
|
You can use insert, but you have to march through the vector/list to find the correct location to place it.
Alternatively, you can use the set template which will always be sorted (but requires uniqueness) or multiset (which will be sorted and stores non-unique items in a vector at each location).
If you decide to become a software engineer, you are signing up to have a 1/2" piece of silicon tell you exactly how stupid you really are for 8 hours a day, 5 days a week
Zac
|
|
|
|
|
Thanks, but maybe it will be better to keep it a vector and use the algorithm find_if() (just foun out about it...) and then insert()
Avi.
|
|
|
|
|
That all depends on what you are using it for, so whatever solution that works best for what your project needs is the one you should use (just make sure have a reason for picking a particular solution over another).
If you decide to become a software engineer, you are signing up to have a 1/2" piece of silicon tell you exactly how stupid you really are for 8 hours a day, 5 days a week
Zac
|
|
|
|
|
find_if is a bad choice if the vector is sorted as you'll get linear performance instead of logarithmic (for the search). Use std::lower_bound instead.
Steve
|
|
|
|
|
Use std::lower_bound followed by std::vector::insert . e.g.
using namespace std;
vector<int> vec;
int newval = 5;
vec.insert(lower_bound(vec.begin(), vec.end(), newval), newval);
Steve
|
|
|
|
|
Thanks Steve,
This is exactly what I was looking for.
Avi.
|
|
|
|
|
You often need to add or remove from the end?
You need it only occational but in time critical situations?
You do need the guarantee that your items are stored in adjacent places?
(Double-use of &vec[0] as a C-Array for example)
Then use the vector /lower_bound Stephen Hewitt proposed
If you only need a sorted storage, you would be better off with set/multiset.
"We trained hard, but it seemed that every time we were beginning to form up into teams we would be reorganised. I was to learn later in life that we tend to meet any new situation by reorganising: and a wonderful method it can be for creating the illusion of progress, while producing confusion, inefficiency and demoralisation."
-- Caius Petronius, Roman Consul, 66 A.D.
|
|
|
|
|
I have written a server using CAsyncSocket functions
Create, Listen, Accept, Send, Close etc. similar to the EchoServer program from The Code Project.
I create a single Listening port using
m_Server_Connection.Create(Client_Port);
m_Server_Connection.Listen();
I accept connections using
m_Server_Connection.Accept(m_Receive[this_client]);
//m_Receive[client] is an array of six CAsyncSocket
Communication with a client is done using
m_Receive[this_client].Send(msg,strlen(msg));
or
m_Receive[this_client].Receive(pBuf,pBufsize);
My problem is, when a client disconnects the connection is closed but..
How do I determine which connection is closing when OnClose is serviced?
I only accept 6 connections and want to re-use the m_Receive[x] entry
|
|
|
|
|
OnClose() will be called for/on the socket object that closed. Maybe store the array index in the
socket class so you know which one to free up for reuse in the array.
You'll need your own socket class derived from CAsyncSocket and make an array of those instead
Mark
|
|
|
|
|
I cannot see how to link the array index to the socket.
I am using a derived class called MyCsocket similar to the type Jobin Wilson uses in - Socket Programming with MFC (part 1)
can you show an example of what you mean.
|
|
|
|
|
Depends on how and when you are creating MyCsocket object. If they are created ahead of time
(before a connection is made) then add a function to set the index later.
A more resource efficient way is to create the socket when a connection is made - from the OnAccept()
in the listener socket (this way you only create a MyCsocket object when needed). In that case
pass the index to the constructor and use Attach() to attach the SOCKET from the listener to the
MyCsocket object.
Mark
|
|
|
|
|
Thanx
|
|
|
|
|
Alternatively to an index you could give each socket (incoming connections) a status value. Something like UNCONNECTED, ACTIVE, DEAD... and cleanup in your server code all dead sockets from time to time. This has the advantage of handling TCP close properly (e.g. you can disconnect a socket and wait until the other side has received all pending data and closes its end).
Hope it helps.
M
|
|
|
|
|
Cool thanks!
You should maybe post your reply to cgb143 as well
Cheers,
Mark
|
|
|
|
|
Didn't I do that?
/Mark (aka Moak)
|
|
|
|
|
Hi,
I want to create a MPEG movie from a set of bitmaps(500+). How can I do this? Which technology should I use for this(DiretX etc)
Regards,
Hemant.
|
|
|
|
|
If you are prepared to save in AVI or WMV format instead of MPEG, there is a lot more information on CodeProject. CodeProject does not have much on MPEGs, probably because the format is not supported directly by MS.
When I wanted to save an AVI file, this article www.codeproject.com/bitmap/createmovie.asp[^] was very useful.
|
|
|
|