Hello Nuno,
I think you'll have to give us a bit more information to work with. For example the only reason I can think of to use a Windows function to find the position is that you are working with the position on the screen rather that inside the application. Your remark about the monitors tends to support that.
Is there a reason for that? Why do you need to know the position on the monitor? In my experience I've only once thought I had to know where my application was on the screen. I found that I really didn't and coded another way.
Also are you using PB Classic or PB.Net? It is possible to find column positions on a datawindow, but it helps to know what presentation style you're working with. Is yours a form?
Please give us some more detail of what you're working with and trying to achieve and I'm sure the folks who hang out here will be happy to help.
Paul