Difference between WinCE7 vs. WEC7 - windows-embedded-compact

I tried searching for training for Windows Embedded Compact 7 and I found that some of the training mention Windows CE 7. So, I would like to know if there is there a difference between Windows CE 7 and Windows Embedded Compact 7. Or do these 2 refer to the same thing?

These are the same thing.
The modular Windows OS for embedded systems was called "Windows Compact Embedded" or "Windows CE" up until version 6. For version 7, Microsoft changed the name to "Windows Embedded Compact" for some reason.
People still call it "CE7" out of habit though.

Related

Does windows CE work on ARM processors?

I am a little confused. When I search the internet I see examples of Windows CE running on Raspberry Pi or Samsung ARM11. However, I cannot be sure if they hacked it somehow or CE officially runs on ARM devices.
If it does not, should I use Windows Embedded products to target arm processors?
And the last question is that How does Windows CE fare when compared to Windows Embedded 7 in terms of footprint?
Can anybody enlighten me please?
Yes, Windows CE (lately renamed Windows Embedded Compact) runs on ARM. Up to version 6 it supported also SH4 and in Compact 7 MIPS.
Latest version is named (confusingly) Windows Embedded Compact 2013 and Microsoft is committed to support it up to 2023.
It's a different kernel (real-time) but provides some compatibility at the API level with desktop and server versions.
The new Windows IoT Core version runs on Raspberry Pi 2 (ARMv7) and uses the same kernel of the PC version.
Microsoft used an ARM build of Windows CE for Windows Phone 7, 7.5, 7.8, before they jumped to running NT on their ARM phones. For sure it exists.
I can't figure out if you can actually get it though. They have "Windows Embedded Compact 7", but from the documentation, it sounds like it's only x86 and amd64. But maybe there's some way to get the ARM version... maybe an MSDN license or by being some kind of business partner with Microsoft?
On second thought, this link: http://www.microsoft.com/windowsembedded/en-us/windows-embedded-compact-7.aspx suggests that it does work for ARM.
Bonus: Apparently Windows 10 will run on the Raspberry Pi 2: http://arstechnica.com/information-technology/2015/02/windows-on-arm-lives-on-even-as-it-dies/ The only question is if they'll keep requiring every non-app .exe to be signed by Microsoft like they did with the surface RT, preventing normal win32 or .NET programs from being possible to develop for ARM on NT. If they don't give us that crazy restriction, this could be pretty neat.

Does Windows 7 with platform update support desktop duplication?

The articles in MSDN are misleading and doesn't provide a clear answer whether or not Windows 7 with platform update will support desktop duplication.
Did anyone know if this is possible? I am developing an application for desktop streaming, I currently use mirror driver for windows 7, but i am looking for a common solution for windows 7 and windows 8.
I have win8 SDK and VS2010 for development.
Platform Update for Windows 7 on MSDN answers this question explicitly (highlights added)
Some new methods introduced in DGXI 1.2 are not fully supported with the Platform Update for Windows 7.You can test for the availability of these functions by calling them directly and checking for an error code. Make sure your applications targeting Windows 7 with the platform update have a fallback in place when the desired functionality is unavailable. These classes of features are unavailable on Platform Update for Windows 7:
...
Desktop duplication
...
See also DirectX 11.1 and Windows 7, DirectX 11.1 and Windows 7 Update, KB 2670838

Windows 7 compatibility mode in Windows 7

I have an application written in Delphi XE5 that targets mainly Windows 7, but also Windows 8 and 8.1. It does require that the user has administrator rights.
It works fine on nearly all of my user's computers, but on a few it only works when selecting compatibility mode for Windows 7 in Windows 7.
The error presents itself directly when starting up the application as a windows dialog stating that:
[NameOfMyProgram] has stopped working.
Problem Event Name: APPCRASH
Fault Module Name: KERNELBASE.dll
Fault Module Version: 6.1.7601.18839
Exception code: 0eedfade
My question is the following: Why is there a compatibility mode for Windows 7 on Windows 7, and what does it mean to use this mode that could affect my application in the way described above?
I have not been able to find any documentation about this specific compatibility mode.
When you're running Windows 7, the "Windows 7" option appears on the compatibility list when you have Windows 7 SP1 installed. If you don't have SP1 installed, then that option will not appear on the list.
The option makes Windows appear to the program as though it does not have the service pack installed, which may affect the behavior of certain API functions.

When will VB6 application support end?

Microsoft no longer supports VB6 development and support from Microsoft has already stopped. But VB6 applications still run on Windows 8.1. See also this article titled "Support Statement for Visual Basic 6.0 on Windows Vista, Windows Server 2008, Windows 7, Windows 8 and Windows 8.1".
When would a VB6 application stop running on Windows? Is there any official statement from Microsoft or any clue about the same?
EDIT:
In this link, the Visual Studio team has mentioned that, "It will be supported at least through 2024". But it's not clear whether they said it's supported in Windows 8 till 2024 or in future release of windows OS too.
The "2024" means as part of Windows 8. The link says the VB6 runtime is part of Windows and therefore will be supported in the same way as the rest of Windows. For example Windows 8 will be supported until 2024 because that's the support lifecycle for Windows 8.
EDIT: Microsoft have now said the VB6 runtime is officially part of Windows 10 too.
EDIT: the VB6 IDE (not runtime) is no longer officially supported on any version of Windows, but there are ways to get it to work on Windows 7 and 8.
Uservoice: The VB6 runtime it is still a component of the Windows operating
system and is a component shipped in Windows 8.1. It will be supported
at least through 2024
It seems clear they mean VB6 will be supported through 2024, not just VB6 on Windows 8 (whose mainstream support ends 6 years earlier anyway).
The VB6 programming language installs and runs on Windows 7, 8.x and 10.
There is a utility to install it here: VB6 IDE install utility
It is in Microsoft's interests for VB6 applications to run in Windows 10 and so they probably will. The same is probably true of most old application frameworks: Microsoft works hard to maintain compatibility. The IDE runs on Windows 7 (not sure about 8 or 10).
However, just because Microsoft says VB6 will run it doesn't mean your particular application will work, particularly if you use third party components. You should at least be thinking about migrating to another development environment.
From what I heard, VB6 applications still work on Windows 10 technical preview. I've seen no official statement yet, but it would seem that VB6 will stay supported for at least a few years.
Microsoft have just stated for VB6 programming on Windows 10:-
"Windows is committed to compatibility. The Windows compatibility team
has been looking at user telemetry and reacting to feedback from
Windows Insiders to ensure that existing apps work well with Windows
10. Windows 10 is designed to run Windows 8.1 and Windows Phone 8.1 software programs. And yes, everyone’s favorite VB6 Runtime will
continue to work, too. In the near future, the compat team will go
more in-depth on this topic on Blogging Windows."
Everyone's favorite VB6 programming on Windows 10
So VB6 programming will work on Windows 10, as does VBA programming.
They also state that 'Project Centennial' Universal Windows Platform Bridge will work with VB6 code.
Instructions for installing the VB6 IDE are available here...
In my personal experience if you build a dll in VB6 and add it as a component to COM Plus in Server 2016 it just won't add. You will get an error such as the following, even for a 'Hello World' component.
A registry value was changed while installing the following component
into a COM+ Application. If you are experiencing activation problems
with this component then please check the registry value for the
following key.
Component: C:\temp\Project1.dll
Registry Key:
CLSID\{D5DE8D20-5BB8-11D1-A1E3-00A0C90F2731}\InProcServer32
Process Name: RunDll32.exe Comsvcs.dll file version: not loaded
There is a project to provide a new language "RADBasic" which is intended to be compatible with the VB6 programming language.
New language compatible with VB6 programming
Looks like Microsoft just extended VB6 runtime support out to Windows 11 and Server 2022. No such luck for the IDE though.
Read more from Microsoft here:
https://learn.microsoft.com/en-us/previous-versions/visualstudio/visual-basic-6/visual-basic-6-support-policy

Windows 7 process scheduler and Windows Embedded scheduler

What are the differences in the Windows 7 scheduler and Windows Embedded scheduler ? I last used Windows CE 5.0 (and XP Embedded). As mentioned here : "Microsoft has announced that the next version, Windows Embedded Standard 2011, will be based on Windows 7". What components are based on Windows 7, because it also mentions that Windows Embedded Standard is the fully componentized version of Windows XP Professional . There a lot of difference in Windows Xp and Windows 7.
I like the the User Mode Scheduler (in Windows 7) ,which provides a new model for high-performance applications to control the execution of threads by allowing applications to schedule, throttle and control the overhead due to blocking system calls.
Windows Embedded Standard 2009 (actual available version) is based on XP Pro binaries.
Windows Embedded Standard 7 (previously known as Windows Embedded Standard 2011, and that will be available real soon) is based on Windows 7 binaries.
Basically, what Windows Embedded Standard is is a componentized version of the Desktop OS with the addition of some features specific to Embedded scenarios to enable fast boot, boot from removable media, shell customization,...
for Windows Embedded Standard 7, the binaries are stricly the same as Windows 7 ones, so when it comes to the scheduler, it is exactly the same as the one of the desktop version of the OS.
-Olivier

Resources