Hello Everybody

Happy to be back on-line after the pass few months... Come to find out I have been over charged for the pass few year and have just received an credit of $120.00 bucks leaving me to pay only $84.00 for the rest of the year :) :)

Anyway do anyone understand this problem...

I complete my project over that time and have put what i thought was the lowest form of API calls thought-out the ENTIRE project to insure that it was ok (to work for all windows).

But tonight a friend of mine just told me it don't work on XP and told me to fix that first because lots of people in the business sector have defected to XP.

What a B O M B E R . ..

Just happy to be back anyway... but what a suprise for me to boot.

I only use API out of the old help files so i am in the state of S H O C K...

Do anyone know what index or what ever where i can find the pure API help file for XP.. Not the whole kit just the ones that works for all Windows... I am hoping there is a basic rule that i can match and mix with my s i m p l e 95 project.

H E L L O
Posted on 2003-05-12 03:21:20 by cmax
cmax,
AFAIK there is no XP specific API guide, you just have to use an up-to-date copy of MSDN.

For now, here are two things to look at, probably the two most likely things to cause your app to fail:

- you forgot to preserve registers. 9x is quite forgiving about this, NT isn't.

- you are executing an API call that requires a certain level of privilege (ie reading/writing to the registry) and you have either not opened the handle with the right privilege level, or you have exceeded the privilege level available to you (ie you may have tried using KEY_ALL_ACCESS for your registry access).


Also, it would be helpful if your friend described a little better how your app failed, was there an error message, was there an error code? I have seen stupid users say "Oh, it crashed" because they saw some behaviour they either didn't expect or were too stupid to work out what it was. Make sure your friend is not in that category :)
Posted on 2003-05-12 06:12:30 by sluggy
XP also has an option to run any program in a mode compatible with previous versions of Windows and even DOS. By RIGHT-clicking on the file and choosing properties, there is a tab for compatibility.

Ask your friend if he tried to modify the compatibility mode before you make any modifications to your program.

Raymond
Posted on 2003-05-12 11:17:53 by Raymond
Thanks guys,

Thats all i need to know. I did use ALL_KEY_ACCESS in one call and did not use it in another. I also packed it fsg that could have been another problem with XP. He said something like XP cannot open up the file. I should have paided better attention to what he was reading back to me.
Posted on 2003-05-12 18:33:52 by cmax
sluggy, do this mean that i *should not* use ALL_KEY_ACCESS or the other way around... Do you know the safe privilege level that may work even with XP. I can't get MSDN because it take too long to down load and I got to watch my time on the internet now until i get Mo cashs. SBC is chargeing .15 a minute just to call my IP which is just across town (under 10 miles) ...3000 minutes mean $500.00 per month bill . I don't know why or how but they never screw me up again...

I am going to my API help files right now to see what i can come up with... So NT os the same as XP in this case i guest.
Posted on 2003-05-12 21:08:33 by cmax
cmax, win2000 = nt5.0, XP = nt5.1 ... so yeah, XP == NT :)

What you need to be very careful about is accessing keys in HKEY_LOCAL_MACHINE - this will usually require administrator privileges. You should generally only use HKEY_CURRENT_USER for your own data. If you're just _reading_ stuff from HKLM, don't specify KEY_ALL_ACCESS - KEY_READ is a better bet.

Same goes for file access - generally only touch stuff in "documents and settings" (and of course get this value from the registry, don't hardcode the path). You can't touch stuff in the windows directory, and in many setups, not even stuff in your program folder. This might seem nazi, but it makes sense at a company.

Other stuff on NT that requires different code from 9x is windows shutdown. This - and some other things - require you to enable the privilege in your program code (and will of course fail if the user doesn't have the privilege to do so).


Btw, you should be able to order the PlatformSDK from microsoft for just the price of shipping - should be cheaper than downloading it I guess. Do consider getting a not so retarded ISP :)
Posted on 2003-05-13 01:38:01 by f0dder
Thanks f0dder

This is very helpful. I did not want to try again until i got things at lease half way right.

"Do consider getting a not so retarded ISP"

I don't think they are retarded i think they just got to greedy and was hoping someone like me would not notice, or either they did not want to lose an long time customers for which the other company had before they sold-out.

Thanks all for the info here now i got a better chance to get thing right with-out to much guesting that would have lead me to total destrution or an good idea.
Posted on 2003-05-13 02:36:25 by cmax