If you have been job searching for an extended period of time with no results, it doesn't mean that you aren't skilled or knowledgeable, but it may mean that you are lacking in job search skills. Just one major mistake can eliminate your chances from the running as a potential candidate.
First off, do not dive into your job search by sending out resumes at random to any job sites, companies, or job ads you come across. You should start instead with a thorough self-assessment. Get to know yourself. Don't assume potential employers know how wonderful you are. It is your job in your resume and cover letter, and then in the interview to let them know this. Do lots of introspective work before setting out on your job search. Identify what you do that you are really good at and skills you must have and would like to have in your next position.
Keep in mind that having a job is not an entitlement. You need to put forth the effort in your job search. Research the companies that you are applying to work for, find out their position in the local and world market, what their customers think about them and be sure to read their latest press release or annual report if applicable. Upon getting an interview, learn who the person is who is interviewing you, and where they fit into the organization.
Having a strong cover letter is mandatory. Most HR departments and hiring managers will not look at a resume unless it is accompanied by a good cover letter. A good cover letter means that it is a totally separate document, not a regurgitation of your resume. Use the cover letter to let potential employers find out more about your personality and specific strengths that you could bring to their organization. Be specific about what you could bring to the position. For example, list specific examples of what you have accomplished in the past that directly relates to what they are looking for in their candidates. For example: increasing employee retention, increasing sales, or increasing market share.
Tailor your resume to the specific position you are applying for. Generic resumes do not sell! It does not have to be overly time consuming to tailor your resume to each position. You can accomplish your goal by eliminating irrelevant points and adding in others that speak to the target job's needs.
In an interview, remember that you can interview the employer too. The interviewer does not have to do all of the asking. In fact, most interviewers would prefer a candidate to ask a few poignant questions as this shows them your interest in the position. Ask pointed and direct questions to decide whether your values and those of the hiring company line up. This will help you to determine whether the position would be a good fit for you or not, while at the same time drawing a clearer picture of the company and what the position entails.
Remember that your ability to succeed is based almost completely on your attitude. Keep a positive attitude by giving it all you've got, surrounding yourself with a support group, and by visualizing success while you remain focused and committed to your search.