Category Archives: Rant

The stuff worth ranting about

Access your PC files remotely via SkyDrive on mobile device

If you use Microsoft Skydrive application on your Windows machine, you know that besides syncing local dedicated Skydrive folder to the cloud it allows accessing your PC files directly (without uploading them to the cloud) from remote location. Unfortunately this feature is available for desktops only, mobile apps are “by design” missing it.

But what prevents you from logging into Skydrive Website directly from a mobile Web browser?

Skydrive In Mobile Chrome

After authorizing yourself with security code you’re in! Albeit this is not as convenient as a native app would be, but until “design” changes this approach allows you to access your PC’s files without installing any additional software on the PC and without downloading any additional app to the device.

ABCMouse.com contact number is 800-633-3331

ABCMouse.com offers teaching games for kids. Some like them, some don’t – it’s a matter of taste and preference. What really sucks about the site is their contacts – they never respond to emails, and online contact form isn’t of much use either. And nowhere on the site they list phone number for a contact.

Fortunately such number does exist:

1-800-633-3331

And when you call it, surprisingly, you get to speak to a live person, who resolves your problems pretty quickly.


DISCLAIMER

I feel really silly posting this disclaimer, but due to numerous comments here it is: I am in no way associated with ABCMouse.com. I myself had a bad experience with their service and when I found their direct phone number I decided to share it with the others to spare them the frustration I went through. So, again, I am not charging your card, I cannot cancel your account, please CONTACT THE COMPANY VIA NUMBER ABOVE!


UPDATE

Since visitors here continue to complain and ask advice, I decided to open a message board (forum) where users can exchange experiences and ask for advice.

  1. Please register first: http://forum.galanter.net/ucp.php?mode=register
  2. And login to post question/answers here: http://forum.galanter.net/viewforum.php?f=4

Never mind.

It’s confirmed: Apple sucks!

I long suspected that Apple played dirty, just didn’t know to what extent. Today I got a chance to find out.

An iPad mini came into my possession, so I registered an online “AppleID” account. This required all kinds of contact information, including cell phone number which I provided. Soon after registration I began to receive spam calls and text messages. No, not from Apple, oh no. These came from auto insurances, money making schemes and other such scum. Wherever did they get my number? I have had it for several years and NEVER received any spam until this fateful day.

But this is just a beginning. I decided – to hell with it, I was willing to give Apple a chance and they blew it. So now I wanted to delete my account and all associated data. Surprise! You can’t do this online. At http://appleid.apple.com you can only change some contact info, but that’s about it.

So I called support. They requested my device serial number. That made me really wonder – why? If I want to cancel my Google account – they don’t request my Droid phone s/n. Ditto Amazon & Kindle. So why, Apple, why?

The support agent enlightened me. This is needed so I could be charged for this paid support call! I needed to pay to get information on how to cancel my account.

Well, this is really it. Back to Android. Oh and by the way, I don’t see what’ s the fuss is about. As a tablet iPad is pretty average, it does pretty much what any other tablet on the marked does. A few years ago when it was the only thing – maybe it was something. But now – Apple lost it.

Solution for: Value of type ‘System.Web.UI.HtmlControls.HtmlGenericControl’ cannot be converted to ‘System.Web.UI.HtmlControls.HtmlTableRow’ error

If you’re trying to compile an ASP.NET project/website in Visual studio 2012 or 2010 and getting error:

Value of type ‘System.Web.UI.HtmlControls.HtmlGenericControl’ cannot be converted to ‘System.Web.UI.HtmlControls.HtmlTableRow’

chances are you have an HTML table in your ASPX markup with runat="server" attribute set and <tbody> or <thead> tags present. Remove <tbody> and <thead> tags and the error should go away.

Run Adobe Flash Player on Android 4.1 Jelly Bean (and above)

It is a well known fact that Adobe is willingly shooting itself in the foot stopped supporting flash on Android devices. If you run Android 4.1 (Jelly Bean) it is not even available on the Google Play. Oh and speaking of Google – unlike its desktop counterpart Chrome for Android doesn’t support Flash either.

So.. is this the end of the era?

Fear not. Just download and install this handy Flash APK and install it on your device. Voila! Your mighty tablet/phone now has Flash. It still won’t work in Google Chrome, but other browser (Stock, Dolphin) will happily use it.

Active CSS selector not working correctly for Input Button in IE

CSS has a cool selector called “:active“, it can be used for example to select a button when it is pressed. Let’s say you have an HTML markup like this:

<input type="button" class="mybutton" value="Click me" />

and you define CSS selector like this:

.mybutton:active {background-color:red}

the button will change its background color to red when clicked and only for the duration of the click (while the mouse button is down) as soon as mouse button is released – background color is reverted to original.

This works fine in all modern browsers and supposed to work in Internet Explorer since version 8. And it works – well kind of – only you click the button but not the button label (text of the button). If you click actual text – style does not change.

Weird, but with IE weird is often normal. To alleviate the problem use button HTML element instead of input:

<button type="button" class="mybutton">Click me"</button>

With this markup CSS described above works universally.

Of course if you need to target browser below IE8, CSS selector approach does not work, you have to resort to JavaScript:

<input type="button" style="background-color:white" value="Click Me" onmousedown="this.style.background='green'" onmouseup="this.style.background='white'" />

Starforce sucks. DRM must die

This is why piracy will always be here. This is why legitimate paid software will never take hold. Main reason being – greed of the publishers and inability to look beyond immediate profit.

I’ve purchased an adventure game “Moment of Silence” (“Момент Истины“, a Russian localisation by company called Akella). The game is perfectly compatible with all versions of Windows from Windows95 till Windows 7 64bit and beyond. BUT its copy protection system made by StarForce isn’t. Attempt to run game displays a cheery message in lines that “Copy-protection works only in Windows 95/NT/98/ME/XP“. Just how dumb is it?

I am running Windows 7. And no, running the game in compatibility mode doesn’t help. And I am not going to install “XP Mode”, which is basically a resource-hogging VM. So I had to go and find a pirated copy of that game with cracked “NO-DVD” executable included. I downloaded it – guess I am a pirate (or at least a user) now. But Akella can go screw itself, I do have a legid copy, it’s just not worth squad.

(Possible) solution for MSChart ArgumentException The image is not found error

If you’re using Microsoft’s .NET charting control on your ASP.NET pages you may receive an annoying error

[ArgumentException]: The image is not found. at
System.Web.UI.DataVisualization.Charting.ChartHttpHandler.ProcessSavedChartImage(HttpContext context) at
System.Web.UI.DataVisualization.Charting.ChartHttpHandler.System.Web.IHttpHandler.ProcessRequest(HttpContext context) at
System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

I could be intermittent, sometimes happen, sometimes not. In your web.config you already set your temp images to be stored as files and not deleted after serving:

<add key="ChartImageHandler" value="storage=file;timeout=20;url=~/temp/;deleteAfterServicing=false" />

as well as trying other remedies and nothing helps.

One possible solution is, while still using file temp storage, instead of indicating relative path via url property set it to absolute path via dir property:

<add key="ChartImageHandler" value="storage=file;timeout=20;dir=C:\TEMP;deleteAfterServicing=false" />

In the example above C:\TEMP is an absolute path to the temp folder on the Web Server. In your case it could be different; in multi-server (WebFarm) environment it should be a network share, accessible by all servers.

SSRS viewer doesn’t work on IIS7 64bit

If you’re developing an ASP.NET application that utilizes Microsoft’s SSRS ReportViewer control, you may experience a weird behavior while trying to use it on 64 bit version of IIS7 (Windows Server 2008 or Windows 7) – nothing is displayed in the main report area and even icons, such as Print, Export aren’t rendering.

One possible cause for this – your application is using Application Pool with 32bit mode enabled. If so – disable it or switch to a different application pool. Chances are this will fix the above issue.

WebDataTree returns multiple selected nodes in single-select mode

This could be a bug in Infragistics WebDataTree control or it could be a very specific scenario (maybe it’s even by design, I don’t know) but here’s a weird behavior that I encountered. Using following code in WebDataTree’s event handler (oh and by the way, tree control is in a single-select mode):

Protected Sub xMyTree_SelectionChanged(ByVal sender As Object, ByVal e As NavigationControls.DataTreeSelectionEventArgs) Handles MyTree.SelectionChanged
   if e.NewSelectedNodes(0).Text = "Some Value"
      'do something with newly selected tree node
   end if
End Sub

I intended to use newly selected node to perform some operations. To my surprise e.NewSelectedNodes(0) referred to previously selected node (despite the name of the property) and newly selected value were located in e.NewSelectedNodes(1)! So the quick workaround was to use slightly modified code:

Protected Sub xMyTree_SelectionChanged(ByVal sender As Object, ByVal e As NavigationControls.DataTreeSelectionEventArgs) Handles MyTree.SelectionChanged
   if e.NewSelectedNodes(e.NewSelectedNodes.Count-1).Text = "Some Value"
      'do something with newly selected tree node
   end if
End Sub

This way it will always get latest selected node and the solution is universal. If the bug described above occurs – code will grab e.NewSelectedNodes(1) (because Count = 2). If the tree behaves as expected – code will get grab e.NewSelectedNodes(0) (because Count = 1)