APIs supported with Windows 10 - windows-10

I want to develop a Windows 10 app (something similar to Windows Store app) .
I want to know , would I be able to get the following details from my app
CPU Usage and show top Metro apps consuming RAM
Getting list of all the apps installed.
Battery Usage , list apps consuming more battery
Kill apps consuming more RAM and CPU
Switch On /OFF wifi , Bluetooth from the app only
Any idea if these would be supported or not or shall I go with a WPF application

There is no way to gather this information from a Windows Store App (now called a "Windows Universal App"). Your best bet is to build a Desktop App (now called a "Classic Windows App") to get the information - and WPF is a fine choice if you already know how to use that.

Most of the features you list above (particularly "2.Getting list of all the apps installed." and "4.Kill apps consuming more RAM and CPU") require administrator rights. Windows 8 Store apps and universal Windows apps for Windows 10 run in a isolated security context called AppContainer that has less rights than a standard user much less an administrator. By design, these apps do not have the ability to impact other apps or system systems generally.

At least for #5, there is this new API in Windows 10.
I don't know of a solution for 1-4.

Related

C# windows service profiling using Glimpse

We have windows service written in C# and wanted to monitor which method taking more time, memory leaks/allocation etc.
Is it possible to profile windows service using glimpse profiler?
Or any other best profiler to monitor windows service?
(We have tried PerfView and DebugDiag but wanted to look in some other way too.)
Unfortunately, no. Glimpse works based on primitives in ASP.NET (HttpModule, HttpHandler), so it wouldn't be compatible with a standard Windows service.
I'd recommend trying a CPU Profiler like the ones that Red Gate and JetBrains sell.

How can I write a custom MDM Agent for a Windows 10 Mobile?

I know that a MDM Client is an integral part of Windows 10 and hence it is available on any device running windows 10.The following link explains MDM on Windows 10 in great detail and depth:
https://technet.microsoft.com/en-us/itpro/windows/manage/windows-10-mobile-and-mdm
However, I am curious to know(and code) that is it possible to write a custom MDM Client for Windows 10 Mobile/Desktop/Device and how.
Thanks!!
That is not possible, simply because there are no MDM APIs exposed by the OS.
You could write an app that talks to your server and executes commands in sequence, which would mimic the base flow of an MDM protocol. However, the app will be very limited in terms of what it can actually achieve. E.g. you won't be able to install apps, configure accounts, etc.
You could install certificates, although i am not sure those will be system-wide available, and get the basic device info (network hw addresses, battery level etc).

What is means by 'Universal Windows Platform (UWP) app is a Windows experience'

In this link https://msdn.microsoft.com/en-us/library/windows/apps/dn726767.aspx
it is said 'Universal Windows Platform (UWP) app is a Windows experience'.What is actually Windows experience means?
Well, basically what it means is; That by creating a UWP you are creating an app that will run across the Windows Platforms, thus giving the full Windows experience. Having an app that gives a familiar "experience" across all the devices that support Windows UWP (Xbox One, PC, Tablet, Phone, IoT, HoloLens) that is the goal.
Microsoft’s language around Windows has changed in the last year. Where Windows was originally a brand indicating an interconnected system of software, it is now used philosophically to represent the mission statement to let people do more.
The idea is, because of the Windows experience, developers can create software that operates in a new paradigm. More specifically, users can experience software in a way that centers around them as a user and not the device they are using.
This new workflow approach downplays the built-in interoperability of Microsoft products, and highlights the opportunity to create software that can do far more to change the way users and companies leverage and experience software.
At its heart, the Windows experience, is the experience that defines a better way to use software. This is a subjective thing depending on the type of user or industry – but it is also a far more broad-reaching definition that no longer simply implies: “build an app that can run on multiple devices”.
Good job teasing out this new language. Not everyone has noticed yet.
At the core of the Universal Windows Platform is the technology enabling code written for one Windows device to seamlessly transition to other devices and form factors. The Windows experience is the full panoply of Microsoft services, including those targeting iOS, Android, and traditionally competing products like Sales Force.
PS: the Windows Experience is not the performance measurement tool introduced in Vista to evaluate hardware for its readiness for an advanced graphics, etc.
The Windows experience, in the new mission-oriented form, is intended to promote a love for Windows - but thinking of Windows not as an Operating System, but, instead, as a family of reliable solutions. It's a nice change, and I (personally) am excited to see how it inspires developers.
I hope this helps.
I believe the intention is to encourage those creating software to not think about an isolated app that just runs on a single device (or class of devices) but to create an "experience" that can travel with the user across multiple devices.
For example, don't just think about creating a phone app or a desktop/tablet app. Instead think about how the user will experience interacting with your software (and presumably the same data) as they use different devices, in the Windows 10 family, at different times and in different ways.
Windows as an ecosystem has been moving closer and closer together in terms of developing for different devices for years. With Windows 10, you finally have a true universal platform where you can develop for phones, tablets, desktops, HoloLens, Xbox, etc with one code base. Sure, there are specific API tweaks, but those devices run the same core allowing you the developer to create experiences across multiple different devices!

is there Windows services on winCE?

is there something like Windows Services for WinCE 6.0 OS?, I mean, a background process thread(s) doing their things...
I need to develop a programm on .NETCF thay always listens to a specific port on device, stores it on SQL Server compact database and sends it back to another port. Don't want to do a desktop app for this as there will be no GUI at all...
Yes, Windows CE supports Services. However a true service must be written in C because the CF doesn't support EE Hosting. There is a Codeplex project to try to make managed services. I've never used it so I can't say I recommend it or not. YMMV.
As far as writing an app with no UI, that doesn't require a service. Just don't create a Form in your Main method.

Remote browser access to Windows CE/Mobile/Embedded emulators?

My company has a Compact Framework.NET WinForms application which runs on rugged handhelds manufactured by companies like Motorola, Intermec and Psion. These are expensive devices with built-in barcode scanners that are used in harsh conditions.
The configuration of the handheld application is managed by business users through our web site. The devices pick up the configuration when they sync from within the handheld application. Field workers use the handhelds, business users use the web site.
The business users have expressed the desire to, for lack of a better description, configure and preview or even fully use the actual handheld application through a web browser. They want to make configuration changes in the web site and immediately see what the impact will be in the handheld, without having to have a physical device (again, the devices are quite expensive). They want to be able to create training materials or conduct sales meetings and be able to demonstrate the application to their customers without having a physical device on hand.
Microsoft offers several Device Emulators, but they are probably too complex for business users. They are developer tools. One idea might be to somehow use the emulators within virtual machines possibly in conjunction with Terminal Services or even some kind of clever screen capture/VNC to show an emulated device in a browser. I suspect running emulators in the fashion may not exactly be a scalable solution, however. Also, only one emulator at a time on a single machine can be "cradled" and connected to network.
I'm looking for any suggestions which might help me meet the business users' requirements.
Thanks.
The only thing I can think of offhand is not that simple, but would probably be useful (and certainly the only "true" way for them to test).
I'd create a service that works like the Remote Display app (part of the WinMo Developer power tools, also ships with Platform Builder for CE), in fact it might just use that app (the source code for it actually ships with Platform Builder, so the eval version of PB would get you that source).
You would then create a web interface that acts as a "shell" for that service, marshalling the display image out to a web page and image clicks back as mouse events to the device.

Resources