Begin by shifting your perspective and find a way of putting the target on YOU (aka on the *want* your product or service fills for the user).
When you've decided on a market - invest your resources getting to know the people in it.
Understand them SO well that you know and can articulate what they really want (on an emotional - not necessarily rational - level).
Once you know what they want - match your product (aka what you have for them to buy) with that want.
(And it should go without saying that your product really must do what you claim it does)
Then craft a message that - whether they find you (inbound marketing) or you communicate with them (outbound marketing) - they'll be irresistibly drawn to what you are offering.
Put your message "out there" (i.e. get to work marketing) and see how the market responds.
If you got it even partially right - you'll make some sales.
Of course this is an oversimplification of the steps you take...
But my hope is that you "get" the essence of the proposed shift which is...
Stop thinking like a "marketer" and start thinking like a "customer".
Consider what THEY want (i.e. a solution to a problem) versus what YOU want (i.e. making a sale and a profit)
Lastly consider that there is no "sure-fire" when it comes to true business success.
A large part of what you get compensated for in business is:
(1) finding a risk worth taking then
(2) figuring out how to profitably mitigate it then
(3) taking action and finding out if you were correct.
Let me know if I can be of any further assistance.