Windows 10 Worst Privacy Nightmare


Are you downloading Windows 10 upgrade? or planning to do so in next few hours? then we are totally sorry for spoiling your excitement but we think that you should know some facts that can grade Windows 10 into a spying software.

With every new version of an operating system there comes new exiting features and Windows 10 is no doubt a major upgrade that brings along variety of cool stuff; including the legendary “Start Menu button”.

Along with sleek features, Windows 10 comes with new set of privacy policies that have attracted a lot of criticism with-in 24 hours of its launch.

You should go ahead and read Privacy Policy and Service Agreement yourself in detail to find out the extent of information that you would be sharing with Microsoft.

We are presenting few of the items below:

Data Syncing is by Default Enabled

Your private data and apps (software) settings will be synced with Microsoft servers by default. This data includes your browsing history, websites that are open, apps settings, software setting, WiFi hotspot names and passwords and similar things.

This is very much similar to what Chrome does and it can be disabled by going into Setting menu > Privacy> general > Change privacy option.

Your Device is By Default Tagged with a Unique Advertising ID

With Windows 10, each user on each device is uniquely assigned an advertising ID that can be used to serve you with personalized advertisements by third-party advertisers and ad networks.

You can opt-out of this tagging by going into privacy options.

Cortana Can Collect Any of your Data

Cortana, a Siri like voice assistant that isn’t available in Pakistan as a feature but is bundled with the Windows 10 upgrade, can collect any and every data that you use, including your keystrokes, mic input, searches, data from your calendar, your address book, contacts and relationship, credit card payment information, data from your email, SMS, your call list, music that you listen, what you view or purchase, browser history and what not.

Microsoft says that its necessary for Cortana to collect all this data in order to work with optimum results. However, there is a lot of data that you are allowing to send back to Microsoft servers and we think you should be aware of this fact.

Microsoft can Collect Any Personal Data of Yours!

In addition to what’s mentioned above, when you download Windows 10 and sign the agreement, you are actually authorizing Microsoft to collect your following information:

  • Your Identity: First and last name, email address, postal address, phone number, and other similar contact data
  • Passowrds: Passwords, password hints, and similar security information used for authentication and account access
  • Demographics: Data about you such as your age, gender, country and preferred language
  • Interests and Habits: Data about your interests and favorites, such as the teams you follow in a sports app, the stocks you track in a finance app, or the favorite cities you add to a weather app.
  • Credit Card information: Data necessary to process your payment if you make purchases, such as your payment instrument number (such as a credit card number), and the security code associated with your payment instrument.
  • Usage data: Microsoft collects data about how you interact with various services. Such as the features you use, the items you purchase, the web pages you visit, and the search terms you enter.
  • Contacts and relationships. We collect data about your contacts and relationships if you use a Microsoft service to manage contacts, or to communicate or interact with other people or organizations.
  • Location data. Microsoft collects data about your location, either through GPS or by identifying nearby cell towers and Wi-Fi hotspots.
  • Content: Microsoft collects content of your files and communications when necessary toprovide you with the services you use. This includes:the content of your documents, photos, music or video you upload to a Microsoft service such asOneDrive. It also includesthe content of your communications sent or received using Microsoft services, such as the:
    • subject line and body of an email,
    • text or other content of an instant message,
    • audio and video recording of a video message, and
    • audio recording and transcript of a voice message you receive or a text message you dictate.

Your Data Can be Shared

When downloading Windows 10, you are authorizing Microsoft to share any of above mentioned data with any third-party, with or without your consent.

Here’s what the privacy policy says:

We share your personal data with your consent or as necessary to complete any transaction or provide any service you have requested or authorized.

We will access, disclose and preserve personal data, including your content (such as the content of your emails, other private communications or files in private folders), when we have a good faith belief that doing so is necessary to:

  1. Comply with applicable law 
  2. Protect our customers, for example to prevent spam or attempts to defraud users of the services, or to help prevent the loss of life or serious injury of anyone;
  3. Operate and maintain the security of our services, including to prevent or stop an attack on our computer systems or networks; or
  4. Protect the rights or property of Microsoft


Since Windows 10 is a device independent OS, meaning that it will be able to run on PCs, tablets, smartphones and on other capable devices, it collects a lot more data than previous versions. However, accessing private files and emails is pretty serious.

While we know that there’s nothing private on internet, this is a lot of private data that is going to get accessed and probably shared with third parties.

Considering Windows 10 is distributed as a free upgrade, data privacy advocates are likely to get on the roll soon.

Over all we think it may get crucial for many to decide to either upgrade to Windows 10 or not.

Reference : propakistan

Microsoft and Client Remote Desktop for Android

Before establish connection between host PC and remote client app, you have to setup in both PC side and client side.

Set up your Remote Desktop in host PC. (This example running Windows 8.1 Pro)

– Enter “Remote Desktop” in Search, select “Select users who can use remote desktop“.

– Under Remote tab, enable “Allow remote connections to this computer” under Remote Desktop. Click the “Select Users” button.

Read More »

Choosing between Windows CE and Windows XP Embedded

The Quickest, Safest and Easiest Way to Send Money
Instantly Send Cash from Your Mobile or Computer to 125+ Countries
Which is best for your application — Windows CE or Windows XP Embedded? Microsoft has published a whitepaper to assist developers in answering that question. The paper begins with an overview of each of the two Windows Embedded OSes, and then presents a variety of factors and decision criteria in areas such as OS features, development tools, support for the .NET Framework (and Compact Framework) and…

Web services, and the type of device or application being developed.

In this article, we provide several exerpts from the whitepaper which highlight key aspects of the OS decision process. A link for downloading the full whitepaper is provided at the conclusion of this article.

Selected excerpts from . . .

Which to Choose:
Comparing Microsoft Windows CE and Windows XP Embedded

Microsoft Corporation
July 2003

From the introduction . . .

Windows XP Embedded is designed to deliver the power of Windows in componentized form, enabling you to rapidly build reliable and advanced embedded devices. Windows CE. NET combines an advanced, real-time embedded operating system with powerful tools for rapidly creating the next generation of smart, connected, and small-footprint devices. Each operating system ships with a complete integrated development environment, with support for a wide range of existing hardware, application development tools, and third-party value-added applications and services.

Device-Specific Considerations

The features and functionality typically required for specific device categories can help you choose between Windows XP Embedded and Windows CE.

Table 1 provides examples of some of the device categories that can be powered by the Windows Embedded family of operating system software. In some cases, however, Windows CE and Windows XP Embedded may provide comparable support for a targeted device, so your choice should be determined by comparing your specific design requirements with the features offered by Windows CE or Windows XP Embedded respectively.

Table 1:
Recommended Windows Embedded Operating System
by Device Category

Targeted Device Windows XP Embedded Windows CE
Mobile Clients
Internet and Media Appliances
PC Companions
Digital Cameras
Printers and Scanners
Thin Clients
Retail Point-of-Sale (RPOS) Devices
Windows-Based Terminals
Connected Clients
Basic Set-top Boxes
Advanced Set-top Boxes
Basic Residential Gateways and Servers
Advance Residential Gateways and Home Servers
Industrial Controls
Voice Over Internet Protocol (VoIP) Phones

Devices such as mobile handhelds and basic residential gateways require a small footprint, efficient power management, and remote management capabilities along with the ability to deliver rich user experiences, making Windows CE the recommended operating system for smart, connected and small-footprint devices.

Devices such as advanced set-top boxes and retail point-of-sale clients require the latest security and reliability features, familiar and powerful Windows features, and are less restricted in terms of footprint. Windows XP Embedded is the recommended operating system for delivering the power of Windows in componentized form.

The latest versions of Windows CE and Windows XP Embedded are optimized to support a variety of device-specific platforms, including ATMs, thin clients, gateways and set-top boxes. For detailed information about these platforms, visit the Windows Embedded Device Platforms Web site.

Decision Criteria for Choosing a Windows Embedded Operating System

To help you select the most suitable Windows Embedded operating system software, you may want to consider your device design in terms of the following features and functionality:

  • CPU Architecture — Are you using an x86 or non-x86 CPU? If you are using an X86 CPU, you can use either Windows CE or Windows XP Embedded. If you are using a non-X86 CPU, then you must use Windows CE, which supports four families of microprocessors, including:
    • ARM — Examples of supported processors include ARM720T, ARM920T, ARM1020T, StrongARM, and XScale.
    • MIPS — Supported processors include MIPS II/32 with FP, MIPS II/32 without FP, MIPS16, MIPS IV/64 with FP, and MIPS IV/64 without FP.
    • SHx — Supported processors include SH-3, SH-3 DSP, and SH-4.
    • X86 — Supported processors include 486, 586, Geode, and Pentium I, II, III, and IV.

    Additionally, heat dissipation concerns will affect both CPU selection and operating system. If heat dissipation is a concern, and you select a non-X86 processor as a result, then Windows CE is the only choice for your device.

  • Real-Time Support — Does your device require real-time support? Both Windows CE and Windows XP Embedded support real-time performance. Windows CE is inherently a hard real-time operating system. While Windows XP Embedded is not inherently a real-time operating system, you can easily add real-time capabilities and optimize Windows XP Embedded to meet your real-time needs with readily available third-party solutions.
  • Win32-based Applications — Does your device design take advantage of Win32-based applications? If your device will make use of existing Win32-based applications and drivers without modification, use Windows XP Embedded. Win32 applications and drivers must be modified to run on Windows CE.
  • Operating System RAM Configuration — How much RAM will your device include, and what is the corresponding device image footprint requirement? Both Windows CE and Windows XP Embedded are componentized to enable you to create small or managed footprint designs. The minimum footprint for Windows CE is less than 350 KB, while the minimum footprint for Windows XP Embedded is approximately 8 MB. Footprint requirements are an important factor when choosing between Windows CE and Windows XP Embedded.

Figure 1 provides decision criteria that can help you choose whether Windows CE or Windows XP Embedded is optimized for your specific device requirements.

Figure 1:
Decision Matrix for Choosing
Windows XP Embedded or Windows CE

Windows CE and Windows XP Embedded differ primarily in regard to processor support, real-time support, application portability and footprint. If it appears after reviewing this overview that your device requirements can be met by either Windows Embedded operating system, you can find more detailed information at the Windows CE Web site and the Windows XP Embedded Web site.

Read the full whitepaper here . . .

Which to Choose:
Comparing Microsoft Windows CE and Windows XP Embedded

(150KB download, Word file)

Copyright 2003 Microsoft Corp. All rights reserved. This article was initially published here. Reproduced by with permission.

Deploying Java Servlet applications on Windows with IIS


Java platform is extremely successful in building robust and high performance web applications. Platform independence is one of the strength of Java engine and Helicon Zoo now provides a convenient way to deploy and run Java web applications on Windows platform with Microsoft IIS. To deploy Java Servlet application on IIS 7 you will only need to follow this simple instruction:

Platfrom installation

  1. Download and install Web Platform Installer.
  2. Run Web Platform Installer and click “Options”.
  3. Add Helicon Zoo feed into Display additional scenarios box: New “Zoo” tab will appear.
  4. Go to the Zoo, Packages and install Java Hosting Package.
  5. Accept licenses to start installation process.

Alternatively, instead of installing Java Hosting Package you can install Modules –> Helicon Zoo Module and Engines –> Jetty separately. This is minimal requirement to run Java Servlet applications under Microsoft IIS web server. If you want to run Java Servlets under IIS Express and WebMatrix in your development environment, then you will also need to install Helicon Zoo Module for IIS Express form Engines section.

This is enough configuration to run most of Java Servlet applications directly form IIS.

Installing application

Launch IIS Manager and create new web-site or an application within a web-site. Copy your Java application into the root folder of this IIS application. Java application could be either a single .war file or set of unpacked files with directory structure, including web-inf folder. Then just create the following web.config:

 <?xml version="1.0" encoding="UTF-8"?>
      <application name="jetty.project" >
          <!-- Uncomment line below if you want to set contexts directory -->
          <!--  <add name="CONTEXTS_DIR" value="%APPL_VIRTUAL_PATH%" /> -->

          <!-- Optional variables: -->
          <!-- <add name="CONTEXT_PATH" value="%APPL_VIRTUAL_PATH%" /> -->
          <!-- <add name="WAR_EXTRACT_PATH" value="%APPL_PHYSICAL_PATH%" /> -->

          <!-- A WAR file or start directory to run -->
          <add name="WAR_FILE" value="my_application.war" />

          <add name="jetty.project#x86" scriptProcessor="java.jetty"
            path="*" verb="*" modules="HeliconZoo_x86"
            preCondition="bitness32" resourceType="Unspecified"
            requireAccess="Script" />
          <add name="jetty.project#x64" scriptProcessor="java.jetty"
            path="*" verb="*" modules="HeliconZoo_x64"
            preCondition="bitness64" resourceType="Unspecified"
            requireAccess="Script" />

Please take a look at <environmentVariables> section.

  • CONTEXTS_DIR — optional path to directory with .xml files which describe Jetty contexts. If this variable isn’t set, Zoo looks for “contexts” folder in the root of application. If no such folder found, Zoo presumes the application has single context and uses variables described below.
  • CONTEXT_PATH — optional virtual path of the application. Default value is taken from APPL_VIRTUAL_PATH variable.
  • WAR_FILE — optional path to a .war file or directory with extracted application.
  • WAR_EXTRACT_PATH — optional .war file extraction path. Is set to application’s root folder by default.

Here is an example of context.xml file that you may use instead of setting WAR file name explicitly. This allows to run multiple applications and contexts in a single IIS web site.


<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "">

<Configure class="org.eclipse.jetty.webapp.WebAppContext">

   <Set name="contextPath">/application</Set>
   <Set name="war">my_application.war</Set>
   <Set name="tempDirectory">application_dir</Set>


WARNING: Since WAR files need to be extracted before execution you will need to have a folder with write permissions.  In default IIS installation all application pools are executed with permissions of IIS_IUSRS group which does not have write permissions to the web application folders. You will need to provide write permissions to the user running Application Pool or IIS_IUSRS group to the folder containing Java application or specify other folder using WAR_EXTRACT_PATH variable with write permissions provided.Now you can open IIS web site in the browser and see your Java web application running.

That’s it! Installation process is clear and automatic and will only take several minutes.

5 Responses to Deploying Java Servlet applications on Windows with IIS

  1. Peter says:

    Downloaded and installed as described in the article (

    However for some weird reason I can successfully view the Java app via IIS when using http://localhost/appname but if I do the same thing http:///appname on another machine I get a a 404 from IIS and if I do it on the server itself I get a 404 from Jetty instead.

    This is running on a 64bit Win2008R2 Std server VM with an IIS app set up to use a ASP.NET 4.0 integrated app pool.
    The folder the IIS app points to contains the contents of the WAR file, i.e. \web-inf and \xforms-jsp and the web.config with the described contents from the article.

    Any ideas on what could be wrong would be much appreciated.

    • Slavik says:

      Please try and use CONTEXT_PATH variable as follows:
      <add name=”CONTEXTS_PATH” value=”/appname” />

      Make sure “appname” is an application. If it’s not, open IIS manager, navigate to that folder and in the context menu click “Convert to Application”.

  2. jules says:

    I installed on a Windows 7 64 bit machine and then downloaded the jenkins.war file and tried to deploy it:
    But I get:
    HTTP ERROR: 503
    Problem accessing /test. Reason:
    Service Unavailable
    Powered by Jetty://


    • Slov says:

      I think installing Jenkins on IIS may deserve a separate article.
      First you will need to upgrade your Jetty installation as we have fixed some functions. Just delete C:\jetty folder and install again using Helicon Zoo feed.
      Then you will need to use contexts folder, instead of setting WAR file explicitly as Jenkins require additional configurations.
      Please remove all “environmentVariables” from web.config, create contexts folder, and create context.xml file in this folder with the following content:

      < ?xml version=”1.0″?>
      < !DOCTYPE Configure PUBLIC “-//Jetty//Configure//EN” “”&gt;

      Test Realm

      After that navigate to http://localhost/jenkins (not to the root folder). It should work now.

      • Slov says:

        A bug with tags. Try again:

        <?xml version=”1.0″?>
        <!–DOCTYPE Configure PUBLIC “-//Jetty//Configure//EN” “”>–>

        <Configure class=”org.eclipse.jetty.webapp.WebAppContext”>
        <Get name=”securityHandler”>
        <Set name=”loginService”>
        <New class=””>
        <Set name=”name”>Test Realm</Set>

        <Set name=”contextPath”>/jenkins</Set>
        <Set name=”war”>jenkins.war</Set>
        <Set name=”tempDirectory”>jenkins</Set>

Reference :

Web Services – Web Services Tutorials

In this section of the Web Services tutorial you will be familiarized with the Web Services.


The next generation of distributed computing has arrived. A Web service is a unit of managed code that can be remotely invoked using HTTP, that is, it can be activated using HTTP requests.

Historically speaking, remote access to binary units required platform-specific and sometimes language-specific protocols. For example, DCOM clients access remote COM types using tightly coupled RPC calls. CORBA requires the use of tightly coupled protocol referred to as Internet Inter-ORB Protocol (IIOP), to activate remote types. Enterprise JavaBeans (EJBs) requires a Remote Method Invocation (RMI) Protocol and by and large a specific language (Java). Thus each of these remote invocation architectures needs proprietary protocols, which typically require a tight connection to the remote source.

One can access Web services using nothing but HTTP. Of all the protocols in existence today, HTTP is the one specific wire protocol that all platforms tend to agree on. Thus , using Web services, a Web service developer can use any language he wish and a Web service consumer can use standard HTTP to invoke methods a Web service provides. The bottom line is that we have true language and platform integration . Simple Object Access Protocol (SOAP) and XML are also two key pieces of the Web services architecture.

What is a Web Service

Web services constitute a distributed computer architecture made up of many different computers trying to communicate over the network to form one system. They consist of a set of standards that allow developers to implement distributed applications – using radically different tools provided by many different vendors – to create applications that use a combination of software modules called from systems in disparate departments or from other companies.

A Web service contains some number of classes, interfaces, enumerations and structures that provide black box functionality to remote clients. Web services typically define business objects that execute a unit of work (e.g., perform a calculation, read a data source, etc.) for the consumer and wait for the next request. Web service consumer does not necessarily need to be a browser-based client. Console-baed and Windows Forms-based clients can consume a Web service. In each case, the client indirectly interacts with the Web service through an intervening proxy. The proxy looks and feels like the real remote type and exposes the same set of methods. Under the hood, the proxy code really forwards the request to the Web service using standard HTTP or optionally SOAP messages.

Web Service Standards

Web services are registered and announced using the following services and protocols. Many of these and other standards are being worked out by the UDDI project, a group of industry leaders that is spearheading the early creation and design efforts.

Universal Description, Discovery, and Integration (UDDI) is a protocol for describing available Web services components. This standard allows businesses to register with an Internet directory that will help them advertise their services, so companies can find one another and conduct transactions over the Web. This registration and lookup task is done using XML and HTTP(S)-based mechanisms.

Simple Object Access Protocol (SOAP) is a protocol for initiating conversations with a UDDI Service. SOAP makes object access simple by allowing applications to invoke object methods or functions, residing on remote servers. A SOAP application creates a request block in XML, supplying the data needed by the remote method as well as the location of the remote object itself.

Web Service Description Language (WSDL), the proposed standard for how a Web service is described, is an XML-based service IDL (Interface Definitition Language) that defines the service interface and its implementation characteristics. WSDL is referenced by UDDI entries and describes the SOAP messages that define a particular Web service.

ebXML (e-business XML) defines core components, business processes, registry and repository, messaging services, trading partner agreements, and security.

Implementing Web Services

Here comes a brief step-by-step on how a Web service is implemented.

  • A service provider creates a Web service
  • The service provider uses WSDL to describe the service to a UDDI registry
  • The service provider registers the service in a UDDI registry and/or ebXML registry/repository.
  • Another service or consumer locates and requests the registered service by querying UDDI and/or ebXML registries.
  • The requesting service or user writes an application to bind the registered service using SOAP in the case of UDDI and/or ebXML
  • Data and messages are exchanged as XML over HTTP

Web Service Infrastructure

Even though Web services are being built using existing infrastructure, there exists a strong necessity for a number of innovative infrastructures. The core architectural foundation of Web services are XML, XML namespaces, and XML schema. UDDI, SOAP, WSDL, ebXML and security standards are being developed in parallel by different vendors

Web Services Technologies and Tools

There are a number of mechanisms for constructing Web services. Microsoft has come out with a new object-oriented language C# as the development language for Web services and .NET framework. Microsoft has an exciting tool called Visual Studio .NET in this regard. The back end database can be Microsoft SQL Server 2000 in Windows 2000 Professional.

Sun Microsystems has its own set of technologies and tools for facilitating Web services development. Java Servlets, Java Server Pages (JSPs), Enterprise JavaBeans (EJB) architecture and other Java 2 Enterprise Edition (J2EE) technologies play a very critical role in developing Web services.

There are a number of tools for developing Web services. They are Forte Java IDE, Oracle JDeveloper, and WebGain Studio.

Sun Microsystems has taken an initiative called Sun ONE (Open Network Environment) and is planning to push Java forward as a platform for Web services. It is developing Java APIs for XML-based remote procedure calls and for looking up services in XML registries – two more JAX family APIs: JAX/RPC (Java API for XML Remote Procedure Calls) and JAXR (Java API for XML Registries). These will wrap up implementations of Web services standards, such as SOAP and UDDI.

IBM also for its part has already developed a suite of early-access tools for Web services development. They are Web Services Toolkit (WSTK), WSDL Toolkit, and Web Services Development Environment (WSDE).

Apache Axis is an implementation of the SOAP (“Simple Object Access Protocol”) submission to W3C.

From the draft W3C specification:

SOAP is a lightweight protocol for exchanging structured information in a decentralized, distributed environment. It is an XML based protocol that consists of three parts: an envelope that defines a framework for describing what is in a message and how to process it, a set of encoding rules for expressing instances of application-defined datatypes, and a convention for representing remote procedure calls and responses.

Apache Axis is an Open Source SOAP server and client. SOAP is a mechanism for inter-application communication between systems written in arbitrary languages, across the Internet. SOAP usually exchanges messages over HTTP: the client POSTs a SOAP request, and receives either an HTTP success code and a SOAP response or an HTTP error code. Open Source means that you get the source, but that there is no formal support organization to help you when things go wrong.


For the last few years, XML has enabled heterogeneous computing environments to share information over the Web. It now offers a simplified means by which to share process as well. From a technical perspective, the advent of Web services is not a revolution in distributed computing. It is instead a natural evolution of XML application from structured representation of information to structured representation of inter-application messaging.

Prior to the advent of Web services, enterprise application integration (EAI) was very difficult due to differences in programming languages and middleware used within organizations. This led to the situation where interoperability was cumbersome and painful. With the arrival of Web services, any application can be integrated as long as it is Internet-enabled.

It is difficult to avoid the popularity and hype that is surrounding Web services. Each software vendor has some initiative concerning Web services and there is always great speculation about the future of the market for them. Whichever way it turns out, Web service architectures provide a very different way of thinking about software development. From client-server to n-tier systems, to distributed computing, Web service applications represent the culmination of each of these architectures in combination with the Internet.