Why is WMDC/ActiveSync so flaky? - windows

I'm developing a Windows Mobile app using the .NET Compact Framework 3.5 and VS2008, and for debugging using the Device Emulator V3, on Win7, and seem to have constant problems with Windows Mobile Device Centre (6.1) connecting.
Using the Emulator Manager (9.0.21022.8) I cradle the device using DMA in WMDC. The problem is it's so flaky at actually connecting that it's becoming a pain.
I find that when I turn my computer on, before I can get it to connect I have to open up WMDC, disable Connect over DMA, close WMDC down, reopen it again, and then it might cradle. Often I have to do this twice before it will cradle.
Once it's cradled it's generally fine, but nothing seems consistent in getting it to connect.
Connecting with physical devices is often better, although not always. If I plug a PDA into a USB socket other than the one it was originally plugged into then it won't connect at all. Often the best/most reliable connection method seems to be over Bluetooth, but that's quite slow.
Anybody got any tips or advice?

I thought I'd add some notes to this so I could close it off. Generally I found not the following to make it a little more stable:
1) Don't setup a partnership. While this doesn't provide a major issue, if there is a partnership in place, a blank dialog window pops up whenever I connect a device.
2) Always make sure you connect the device (via USB) to the same USB port that it was first on when the device driver was first installed. Moving the lead to a different port will often cause the device to not connect.
3) If it doesn't connect then opening WMDC and un-ticking allow DMA connections, close the WMDC screen, re-open it and re-tick the DMA option, and it will generally suddenly connect.
4) Also if you're using the device emulator and have it cradled, ensure you disconnect the ActiveSync connection before saving the state of the device when closing it. If you fail to do this it will no be able to connect when you restart the device, until you fiddle about with the connection enough for it to realise that it's not actually connected.
If anybody else has any tips to making it more stable then feel free to add them in.

Try deleting the existing device partnerships. That has helped me in the past when WMDC/ActiveSync was playing up.
Go to Control Panel -> Sync Center and delete the device partnerships you see listed there.
Then reconnect your device/emulator and when the WMDC window comes up, make sure you create a new device partnership (in my experience the connection/debugging becomes flakier when you choose to not setup a partnership).

Another thing to point out about ActiveSync, I learnt this the hard way, I noticed the battery drains faster with ActiveSync, even if it is not in the cradle, it is actually running in the background, and whether it is a bug or not, not sure, but, it 'thinks' it is still in the cradle and continuously polling for the connection. Here's the link that explains it. And here's the temporary fix.
The way I dealt with it is to run a small C program that looks for the ActiveSync process and kill it each time I un-cradle the pocketpc.

Related

How to add an extended workspace on mac without connecting an external monitor?

So, I wanted to cast my extended workspace (on MAC) to my app on iOS. I've been reading on it for a few days and singled out Quartz display services API to capture the screen directly from the GPU for each display connected.
As for my use case, I need to stream it through HTTP on a local wifi network and be able to receive it in my app. The problem is, Mac won't extend the workspace without connecting a compatible device like a projector or a monitor. How do I work around this? I need to be able to cast only the extended workspace through HTTP/tcp and it seems possible from what I've read. I've also looked into IOKit and other related sources but they did not have much of useful info for me. Since the goal is to stream the extended workspace to other devices from the MAC, connecting a real secondary display is useless and does not make sense.
Can we work around this by somehow making the kernel think that there is another display connected?
Is there any other way to spawn an extended desktop and cast it?
Any help will be greatly appreciated.
I found a Github repo which does what I wanted to do to some extent. They have actually written a driver that enables multiple virtual desktops by tricking mac to think it was connected to a physical monitor. For someone like me in the future, take a look into this link.
Any other inputs to achieve this will also be great.

How to simulate the behavior of a remote desktop without showing the screen

I should make a program that simulates the behavior of a remote desktop but without showing the screen of the server to the client.
I can use any programming language, but the client must be on Android mobile device and the server's operating system must be Windows.
I do not know how to Start. I was thinking about two possibilities:
1- Use a socket. But the difficulty was to give commands outside of the programming environment.
2- Use a rdp already done but turn off the display screen (setting is not present in the rdp I know). Who can help me?
Thank you

Problems with Windows Phone 8.1 emulator

I am having really difficult time to cope up with the windows phone emulator.
My ultimate goal is to deploy my application and sniff http requests through fiddler.
I am on Visual Studio 2013 Update 4 on Windows 8.1
Problems which i face
Sometimes the emulator does not start at all and gets stuck "Window Phone OS is starting ".
Here first i get the message of "Attempting to modify switch settings" info dialog. I clicked on ok. Then i get Error dialog of "Windows Phone emulator is unable to connect to the windows phone operating system" "Object reference not set to an instance of an object "(Internal c# error). I click close and it gets stuck at "Windows Phone OS is starting".
if i get past this problem and my application gets deployed. I cannot connect to internet. Even a link in browser does not open.
Now for the rarest of rare times i am able to connect to internet. I am in no way able to sniff http request.
But sniffing is still my secondary problem, but my first issue is to get the emulator run and connect to internet.
Steps which i have performed to troubleshoot.
Hyper-V as a Windows feature is turned on.
My firewalls have been disabled.
I have removed the virtual machines and switch created by Hyper-V manager and let it be created through Visual Studio.
In network connections, disabled and enabled the vEthernet (Windows Phone emulator switch ).
Have also tried ipconfig/renew.
Have gone through lot of msdn posts, blogs, so questions but the behaviour of emulator is pretty inconsistent.
Is there any way i can get emulator logs/info ?
Any help to direct to me to any direction will be hugely appreciated.
UPDATE
only thing which is consistently working for me right now is disabling Hyper-V windows feature and then enabling it again.
Mind the expensive system restarts also. Then adding my user name to Hyper V admin group and then deploying the application.
So whenever i am changing my network i have to perform these steps. Definitely not sustainable
UPDATE 1
So now i have fiddler also acting as a man in the middle. Followed the steps here http://blogs.msdn.com/b/wsdevsol/archive/2013/06/05/configure-the-windows-phone-8-emulator-to-work-with-fiddler.aspx. Couple of thing to change here are the port number and to give the ip number instead of host name.
Also have fiddler always start first and then the emulator. Fiddler is able to sniff the requests happening in emulator. But my application http requests are not going through which is fine if i run without fiddler. I am currently looking into this.
Best Regards,
Saurav
Have you tried to run Visual Studio as Administrator? Sometimes, the user must have highest privileges to run Hyper-V.

Is there a way to have XCode ask before downloading documentation/API updates?

By default, XCode is setup to download updates associated with the various documentation and API libraries available to the application. This can be disabled from the XCode preferences screen. However, I'd prefer not to disable the automatic updates but, rather, prompt me to start the updates so that I can potentially dismiss them for download at a later time.
My reasoning is because I primarily work through a network connection that gains access to the internet through a 4G wireless hotspot that gets hit by overage fees. In fact, I'm connected through this device, to the internet, about 90% of the time I'm working on my Mac. When I need to download any form of large software update, I always take my Macbook to an open, direct-connect source to the internet and let it do what it needs to do.
This works fine for most software, but not XCode.
I want my updates to remain automatic (so that I am at least informed that there is an update available,) however, I'd like to have the choice whether to initiate them or not.
Is there something that I can do to make XCode ask before downloading?
A QUICK NOTE
I know how we technical minded folk are-- half of you are still wondering why I work off of a 4G hotspot and want to fix that problem, instead of the one I asked. (Yes, I tend to think this way too.)
However, I work in an environment that has an IT department that adamantly refuses to allow any operating systems, other than Win XP and Win 7, onto their network. The Engineering team (which I work for) has to have an internet connection and an internal network for storing and backing up data and we are developing iOS software that is integrated with our products. This is obviously problematic since we need to use Macbooks to do our work.
Our solution to this dilemma has been to setup our own, small LAN and our only way of getting internet access is through cellular WiFi. All WiFi ISP plans that are available in our region are tier-based and overages are charged (at a reasonable rate) when we use more than our allotment of data. We don't mind going over our quota, however, we need to keep it reasonable. Automatic updates like this can start to take a huge hit on our network when a few of us have to download a few GBs of data each month.
Software like LittleSnitch might be the best solution (firewall).
In case Xcode tries to update itself, the dialog below shown.
Now you can simply Allow or Deny the connection.
This way you can accurately control all connections (and your privacy).
Other applications might also consume quite some bandwidth.
P.S.
Why not connect a cheap XP box to the network,
which shares the internet connection to all Macs?

Vista Business Login and RDP Problems

At work, I running Vista Business on a lavishly new PC, which runs great excepting two issues. In order of annoyance, but not importance:
When I reboot the machine, the Windows Splash is presented asking me to Press Ctrl + ALT + DELETE so I can logon. It takes three to five minutes and seceral key presses for me to be prompted to select my user account. After which, everything works like a charm.
As part of my duties with the firm, I am responsible for emergency work on a rotating basis and deploying patches during off-business hours. I have been given an older laptop with XPSP2 (downloading 3 for kicks right now) which I use for browsing with the intention of RDP to my desktop in the offices. If I am connected at the domain through conventional means, I am able to RDP. However, if I am using an existing broadbad connection with VPN, I am not able to get access. I am able to access other servers, desktops running a variety of OS'es including Vista.
So umm any ideas guys?
as for 2 - this happens with some proprietary VPN software (i.e. Cisco). My solution was to perform my work duties in a Virtual PC (which doesn't need its normal LAN abilities) and do my other network/internet tasks in the physical machine.
I have a Vista at work and uses my home PC to rdc in for support work. I do not experience your problem 1 so I cannot offer any advice. For your second problem have you tried the IP address instead of the machine name? We have situations where sometimes the dns resolution in the office network is not accurate.
Do you have remote access enabled, either on the machine, via group policy?
If not, you might have to go into the Control Panel\System and Maintenance\System and choose Remote Settings (from the menu on the left).
That will show you the options for Remote Deskop, including Don't allow connections, Allow connections from any version of Remote Desktop, and Allow connections from computers running Remote Desktop with Network Level Authentication (which might be the hang up you are experiencing over the VPN).
Good Luck.
I have to chalk this up to "something wierd with my laptop" as I was able to download RoyalTS and connect to the machine just fine. I had Remote connections permitted, firewall disabled, McAffee gone and others could access the machine.
The advice garnered above is excellent and useful for your typical rdp connections

Resources