I have a application developed in Delphi 6, it works very good on Windows XP. Most of the controls are custom drawn to show gradients. Recently, I have deployed the application on Windows 7, after which all the windows are shown very slow. I have compared the same with the XP system.
Do i need to handle anything extra for running on Windows 7? With lot of pain, i have compiled the same application in Delphi XE, but still the application behavior is same. The windows were all opening very slow.
I have enabled the run time themes, disabled the custom drawing, but it did not have any impact.
Please help.
You should try to use a profiler with XP and with Seven and so you will see where the code is slowing.
There have been significant changes in GDI with the introduction of Vista: http://msdn.microsoft.com/en-us/library/windows/desktop/ff729480(v=vs.85).aspx.
Related
while understanding the differences between 10.0.19041.0 and 10.0.22000.0 SDK ,I encountered
https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/ this page. After looking into it , I understood 10.0.22000.0 is mainly for windows 11 applications .
If we select 10.0.019041 as the package and build the application, won't it run on windows 11.
If we want our application to be run on windows 11 do we need to choose 10.0.22000.0 over 10.0.19041.0.
Please correct me if my understanding is wrong.
Thanks for the help!
TLDR: No, your understanding is wrong. You can likely use whatever version you want and your application will run on both, Windows 10 and Windows 11.
Long with details:
It's true, the 10.0.19041 SDK is for Windows 10.
It's also true, 10.0.22000 SDK is for Windows 11.
Let's have a look from a user perspective:
When you download software, how often do you need to select the correct operating system? Not very often. So, somehow, the SDK version does not seem to be very important.
Let's have a look from a Microsoft perspective:
Does Microsoft want all developers require a rebuild of their Windows 10 programs once they release Windows 11? Certainly not, because this would mean that with the release of Windows 11, there wouldn't be a single application which runs on Windows 11. Microsoft couldn't even perform inhouse tests for multi-million-user software such as Adobe Reader.
Let's have a look from a technical perspective:
The Windows SDK provides the API definitions of Windows. The Windows API is very old. And since Microsoft does not want developers to rebuild and, even worse, let them fix breaking changes, Microsoft keeps that API incredibly stable. They will not change the API, they will only add new API methods.
The chance that the Windows API you use already existed in Windows 10 and still exists in Windows 11 is almost 100%. So your application compiled for Windows 10 will still work on Windows 11.
Likewise, if you compile with the Windows 11 API and don't use the most recent fancy API, your application will still work on Windows 10.
Example
Let's say you developed an application that manages Fonts. You have used the interfaces IDWriteFontSet, IDWriteFontSet2 and IDWriteFontSet3. With Windows 11, Microsoft has added IDWriteFontSet4. As long as you don't use that interface and stick to the previous 3 interfaces, your application will run fine. Once you start using IDWriteFontSet4, your application may crash on Windows 10 (potentially only if the user invokes the functionality, not so sure).
I am a VisualC# programmer and an individual Unity3d game developer. I wanted to know if there was any problem if I upgraded from my windows 7 to windows 10, I wanted to know if there is any difference in performance. And one more thing.. From a programmers point of view is there any feature that I would not be able to get if I do not activate windows,meaning that I use deactivated Windows because I donot think why should I activate it.
New Windows versions introduce new API. E.g. GetSystemTimePreciseAsFileTime() was only added in Windows 8.
Does anyone know if Siebel 7.8 is supported on IE10 and above? One application is about to be sunset, but will continue for a few months, but the desktops will be upgraded to Windows 8.
Any link to sources from Oracle for supporting or not supporting IE10 will be appreciated, since the official docs (http://docs.oracle.com/cd/E11886_01/siebel/books/SRSP78/SRSP78.pdf) do not talk about Windows 8 support
The last supported platform for High Interactivity mode is Windows 7 and Internet Explorer 8 (that is mentioned in document you are linked to the question). As far as I know there is no option to use Windows 8 with IE8, so the plain answer is: no, you cannot use it to access Siebel applications. Still if you find a way to install IE8 there is a little chance that it will work. Consider using some type of virtualization (Windows 8 Pro includes HyperX VM software) or any other methods.
I am trying to work out the least disruptive way of beginning to experiment with Windows 8 development. I currently have a Windows 7 Ultimate PC (plenty of disk space, RAM and i7 CPU), and I have a copy of Windows 8 (not 8.1).
I have considered various options:
Convert my whole machine to Windows 8. (Not ideal right now, as I am in the middle of other work, but I may have to do this eventually).
Dual boot Windows 7 & 8. (Can't get this to work. Windows 7 is already installed, and though I can get Windows 8 to install on the second HD, I can't get its boot menu to see Windows 7. I suspect this would be easier if I installed Windows 8 first, but that would be a huge pain.)
Run either OS using a virtual machine. (I haven't looked into this yet, and I have no idea what is involved.)
As a final option, I wondered if it is possible to develop Windows 8 applications on a Windows 7 PC and remote debug on an attached Windows 8 device? (I'd prefer to do this, as it is a way I have worked often in the past while doing console development.)
Does anyone have any experience of any of this - positive or negative? It takes ages to experiment with this stuff, with the constant threat of recking my existing work environment. I'd really appreciate any advice or pointers to articles that deal with any of this stuff.
Microsoft do their loyal developers no favours. I've paid hundreds for modern hardware, Windows versions and Visual Studio, and still it seems difficult to say the least to develop for their latest OS.
Kind wishes ~ Patrick
Option 4 is not possible. In similar situation I went with option 2 and gratually migrate myself completly to windows 8.
If you have problems with boot try to ask on superuser.com or better search the web for guideline.
If you want to develop applications for Windows 8 don't go with option 3.Please see this post on installing Visual studio in VM.
Regarding option 2,verbatim from Microsoft
You must install the older operating system first, and then install the more recent operating system. If you don't (for example, if you install Windows Vista on a computer already running Windows 7), you can render your system inoperable. This can happen because earlier versions of Windows don't recognize the startup files used in more recent versions of Windows and can overwrite them.
But as #Antonio said there may be roundabout for option 2.
I've used to Numega SmartCheck tool for analyzing the VB6 applications to capture all events and memory access in Windows XP. But since I'm upgraded to Windows 8, I can't able to run any application and I'm getting access violation errors.
Well, I'm thinking of new and equivalent or better application. Which is the best debugger/emulator for them? PS: I'm using Ollydbg. So I expect some high level emulator/debugger.
I encountered similar problem with VB6 applications on Windows Server 2008 R2 and Windows 7. In my case helped to disable of DEP (Data Execution Prevention) mechanism.
Please find the walkthrough how to disable DEP on Windows 8.