You can send audio but not receive it when using Skype for Android

System Requirements:

  • Android
  • Skype for Android 4.5.0.39600

The Problem:

When you make a Skype call on an Android device (Skype for Android 4.5.0.39600 at the time of writing) your partner can hear you and see you, however you cannot hear them.

This problem was observed on a Barnes & Noble Nook HD+ running ICS 4.0.4, but should by no means be exclusive to this equipment.

More Info

Quite simply, the fix to this one was that the Android device had been left with a pairing state with a Bluetooth Audio device – one that was not connected. This occurred irrespective of whether Bluetooth was on or off or the speaker in range.

By unpairing the device from the bluetooth partners list in Android Settings, the sound started to work once again at the next establishment of a call.

As other apps were using Audio correctly via the built-in speakers, I suspect this to be a bug in Skype rather than Android or Barnes & Noble’s firmware.

“StartServiceCtrlDispatcher failed (error 6)” is returned from attempting to start SQL Server Agent and “System.NullReferenceException: Object reference not set to an instance of an object.” is returned when attempting to start SQL Server Agent in SQL Server Management Studio

System Requirements:

  • Microsoft SQL Server 2008

The Problem:

It’s another instance of a new SQL Server installation on a newly installed Windows Server system that refuses to do what it is supposed to do. It seems to me that this is the rule rather than the exception, but I digress.

If you pull up a command prompt and attempt to manually start the SQL Server Agent process e.g.

"F:\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\SQLAGENT.EXE" -i MSSQLSERVER

You will receive

StartServiceCtrlDispatcher failed (error 6)

Similarly, if you attempt to start the SQL Server Agent inside SQL Server Management Studio you will receive the ubiquitous

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.

Server stack trace:
at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.ObjectExplorer.FindObjectExplorerFrame()
at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.ObjectExplorer.GetObjectExplorer(Boolean activateWindow)
at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.ObjectExplorer.ShowError(Exception e)
at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.Service.Start()
at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.PrivateProcessMessage(RuntimeMethodHandle md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)

In addition if you check the SQL Server Logs, the current log for SQL Server Agent will be blank or will have nothing logged recently (this is important)

More Info

If you are seeing up to date events in the SQL Server Agent log, then this fix likely does not apply to your situation. If you have a blank or a stationary log file then chances are it does.

Basically, the SQL Server Agent is refusing to start because it cannot write TO the log file. Obviously it is extremely hard to have the process termination log or output that fact otherwise Microsoft would have done it already… sigh.

The Fix

It is probably either or both of:

  1. Check the error log file path for accuracy
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.MSSQLSERVER\SQLServerAgent
    Reg_SZ: ErrorLogFile
  2. Check the file / folder permissions for the path stated above, the SQLAGENT.OUT file and the SQLAGENT.# files. You can either reset them so that the SQL Server Agent’s process account has Full Control access or (depending on your logging policy) delete the files and SQL Server Agent will re-create the logs at startup

“Service reached limit of transient errors. Will shut down. Last error returned from Service Manager: 0x80029c4a” when trying to install .net Framework 3.0 on Server 2008 or .net Framework updates from Windows Update

System Requirements:

  • Windows Vista
  • Windows 7
  • Windows Server 2008, 2008 R2

The Problem:

So we had a server with a corrupted .net installation, Windows Update kept on trying to install a .net 3.5 QFE and failed it, which showed up on the SUS server error logs. Investigation revealed that it would not install the update.

After running the .net cleaner utility, Windows Update still insisted that the machine needed the QFE – despite the fact that .net 4, 3.5, 3.0, 2.0 and 1.x were not installed.

The next obvious step was to put .net back on the machine, starting with 3.0 in the Windows Server Manager ‘Features’ list. It would not reinstall the feature however terminating with

Service reached limit of transient errors. Will shut down. Last error returned from Service Manager: 0x80029c4a

There were two problems here

  1. A .net Framework update was stuck in the Windows Update Catalogue and could not be cleared (even by purging SoftwareDistribution)
  2. The .net Framework 3.0 feature could not be reinstalled onto the operating system via Windows Server Manager

The Fix

In this instance the following solved the problem:

  1. Browse to:
    C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG
  2. Check to see if there is a machine.config file present within the folder
  3. If there is not, make a copy of machine.config.default in the same folder and rename it to machine.config

Note that you may need to look through other folders under C:\Windows\Microsoft.NET\Framework for this .config file as the ‘v2.0.50727’ part changes with the service release.

 

Once this was done, .net 3.0 could be reinstalled from Windows Server Manager. Once that was done .net 3.5 SP1 could be reinstalled (along with .net 2.0 SP2 and .net 3.0 updates). This allowed the stuck update to actually install and cleared the original error from WSUS.

After that .net 4.0 went back on and everything on the server was back to normal again.

…the toe bone connected to the foot bone, and the foot bone connected to the ankle bone, and the ankle…

Visual Basic 6.0 Error: ‘Compile Error: Procedure declaration does not match description of event or procedure having the same name’

System Requirements:

  • Visual Basic 6.0

The Problem:

After copying a control placed on a form in the VB 6.0 IDE you receive the following error message when you attempt to run the program.

Compile error:

Procedure declaration does not match description of event of procedure having the same name

Compile Error Message

The program will not compile correctly even after the VB control that you copied has been deleted from the form.

More Info

This seems to be a bug in the VB 6.0 IDE. Remember this?

Create Control Array Message

It asked you if you wanted to place the control into an array so that multiple controls named ‘Command1’ in this case could be referenced from a common name i.e. Command1(0), Command1(1), Command1(2) etc.

Very occasionally the VB IDE gets this wrong, attempting to reference a control variable as an array variable. This in turn leads to non-compliable code and no clear way to get out of the problem.

The Fix

The fix is to prevent the VB IDE from trying to treat the original variable as an array by removing its index parameter.

  1. Delete or rename the duplicate named control
  2. Note the name of the control in the error message
  3. Save your project and exit VB
  4. Open the location of your .vpb (Visual Basic Project) file
  5. Locate the .frm file (form) that your control appears in amongst the list of files
  6. Open notepad and drag and drop the .frm file into its window so that you can see the underlying code-behind the form
  7. Search the file for the name of the control named in the error message
  8. Beneath it you should find a parameter list associated with the control. Locate and delete the line “Index” line as highlighted below
  9. Save and exit notepad and restart the IDE

Or, if the control exposes it, clear the value of ‘index’ on the properties explorer in the IDE.

The Fix in Notepad