I have an application developed in Delphi 5 that works very well in Windows 7 using the XP Mode, except for one code:
TQRCompositeReport.Prepare
That function only works if I am using an administrator account.
If I am using an account that don't have administrator privileges, it works only if the "XP Mode" is disabled.
Since I have some errors runing my app in Windows 7 without XP Mode, I have to activate this option. Then, I can't preview or print any reports using this command to prepare it.
I have the idea that it may concerns to some temporary files that quick report generates, once it does work using administrator accounts. However, the default temporary folder in Windows 7 is "C:\users\username\App Data\Local\Temp\ and the user has privilege to create and modify files in this folder.
Related
I have installed Delphi 2010 and tried to create a new project clearly.
but when i compile my project, delphi does not generate any exe file.
also when i try to run application i get this error:
Could not find program, "C:\test\Project1.exe"
note: i haven't changed any configuration or settings of Delphi or project.
everything is as it's default
It was about getting absolute path because i'd changed ProgramFilesPath and ProgramFilesDir in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion to D: without leading backslash.
I changed it to D:\ and the problem was solved now
thank you all
If you're on Vista or later, this could be because of UAC settings. Try setting the project output folder in Project->Options to something a limited account would have access to, such as somewhere under My Documents\RAD Studio\Projects.
I've had the same problem on Windows 7.
Installing it as administrator solved the problem IIRC.
If that doesn't work then make sure you run it as administrator.
You are running it on XP though, so unless you've installed it as a non-administrator, or run it as a non-administrator this shouldn't be happening.
Note that if you're in a domain, it's possible that you're not local admin on your XP machine.
Run Process Explorer, search for any open handles to C:\test\Project1.exe using Find, Find handle or dll.
That will tell you what is locking your .exe.
Edit 20221221 because of link rot:
[Wayback/Archive] Process Explorer redirects to [Wayback/Archive] Process Explorer - Sysinternals | Microsoft Learn
[Wayback/Archive] Know which process has locked a file has died and moved to[Wayback/Archive] How to Identify the Process that has Locked a File in Windows and added solutions based on resmon.exe (built-in), handle.exe (SysInternals), OpenFiles.exe (built-in, but requires a global flag to be enabled which for enabling requires a reboot).
[Wayback/Archive] Handle - Sysinternals | Microsoft Learn
I have developed an app for computers a while back, that generates a word document and saves it automatically under a name provided by the software.
The application has worked perfectly in windows xp and windows 7. But now it needed to be moved to a windows 8.1 computer and since the generating works perfectly. But the save command wrdDoc.SaveAs(SaveToFile); does not work.
Basically what happens, is on that command's execution a save dialog appears and you can save the document yourself. After you click save. You get an error command failed with no further details.
Is there anything that has changed since windows 7 that prevents this code from executing properly?
The old computer used the following:
windows 7
office 2007/2010/2013(all were used at some point in time)
New computer:
windows 8.1
office 2010
UPDATE:
it is also worth noting, the dialog does not show any of the word documents in the folder if i browse there... Can this be a hint to the problem?
Resolved
I managed to find the problem. It's a brand new laptop, and Acer had a bunch of crap installed that sync's with office and explore. Once i uninstalled that the software returned to working normally...
Thank you guys anyway so much :)
It depends on your word version. Only 2007 has a "Saveas" method for the document object (https://msdn.microsoft.com/en-us/library/bb221597%28v=office.12%29.aspx). The later versions (2010 and 2013) only have a "Saveas2" Method (https://msdn.microsoft.com/en-us/library/ff836084.aspx)
I'm using ACOS3X smart cards in my Delphi application for user authentication. Everything is fine in Windows XP, but in Windows 7, every time I put the card into the reader (which is ACR38-CCID), windows tries to install a driver for it, to no avail. This does not affect my application in any way, but it's really annoying. Should I write a driver for my card just to satisfy Windows 7? And, if yes, could someone please tell me if it's possible to create drivers with Delphi?
This is what Windows 7 (and IIRC also Vista) does. If you insert a smart card, it tries to locate a minidriver through Windows Update.
Not sure if it works, but you can maybe modify Windows registry to include the necessary entry for your card (but not point to a working implementation).
Look into Windows Minidriver Specification (available from MS) and the "discovery" section in that document.
I have installed Delphi 2010 and tried to create a new project clearly.
but when i compile my project, delphi does not generate any exe file.
also when i try to run application i get this error:
Could not find program, "C:\test\Project1.exe"
note: i haven't changed any configuration or settings of Delphi or project.
everything is as it's default
It was about getting absolute path because i'd changed ProgramFilesPath and ProgramFilesDir in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion to D: without leading backslash.
I changed it to D:\ and the problem was solved now
thank you all
If you're on Vista or later, this could be because of UAC settings. Try setting the project output folder in Project->Options to something a limited account would have access to, such as somewhere under My Documents\RAD Studio\Projects.
I've had the same problem on Windows 7.
Installing it as administrator solved the problem IIRC.
If that doesn't work then make sure you run it as administrator.
You are running it on XP though, so unless you've installed it as a non-administrator, or run it as a non-administrator this shouldn't be happening.
Note that if you're in a domain, it's possible that you're not local admin on your XP machine.
Run Process Explorer, search for any open handles to C:\test\Project1.exe using Find, Find handle or dll.
That will tell you what is locking your .exe.
Edit 20221221 because of link rot:
[Wayback/Archive] Process Explorer redirects to [Wayback/Archive] Process Explorer - Sysinternals | Microsoft Learn
[Wayback/Archive] Know which process has locked a file has died and moved to[Wayback/Archive] How to Identify the Process that has Locked a File in Windows and added solutions based on resmon.exe (built-in), handle.exe (SysInternals), OpenFiles.exe (built-in, but requires a global flag to be enabled which for enabling requires a reboot).
[Wayback/Archive] Handle - Sysinternals | Microsoft Learn
I have an application written by Delphi 7 and this application works fine in windows XP.
Now i has upgrade my pc to windows 7 and everythings works fine with this application except when i click the button which will execute the TOpenDialog and TSaveDialog then hangs.
Anyone have this problems when using delphi 7 in windows 7?
Most likely reason is an issue with COM. The Open/Save dialog needs to run in an STA COM apartment otherwise some shell extensions can lock up.
If you have anything in your application which initializes COM in a different mode for the main thread, lots of strange things can happen.