The Linux Page

Updating your Drupal website from FCKeditor to CKEditor

As FCKeditor becomes old and the new CKEditor is started to get there, I'm updating more and more websites to make use of the newer version of CKEditor. This requires a few steps to make sure you don't lose the previous functionality.

Permissions

The update does not transfer the FCKeditor permissions to the CKEditor. This is because by the time you install the new CKEditor, the FCKeditor should already be uninstalled. In other words, those permissions are gone already. Plus, the scheme is slightly different in the new editor.

Roles

The list of roles who are assigned one ...

MFC80U.dll, MSCRT80.dll, etc. missing

As I was working in Visual Studio today I had a problem with AQtime which I just installed. More or less, AQtime attempts to read the file that you're just writing and at the time you try to save the manifest in the output, it fails because AQtime has the .exe open in Read Only mode.

To fix the problem I simple said don't generate the manifest, which seemed the be the right solution. That made the compilation work great, but then AQtime would not be able to start the executable. Seemingly nothing would happen (i.e. type F5, made sure the parameters were fine, click Run, AQtime and the ...

MS-Access prints white pages

Problem

One of my customers changed a report and all of a sudden was getting an empty page for every other page (it will look like the last page in case you print a single page, but it really is every other page.)

Did you think about the margins?

When you create a report to be printed, you must define its size properly. So if you are printing 8"1/2 x 11" paper, you want to create a report that's exactly (to about 1/100th) the same size.

The total height must be 11" and the total width must be 8"1/2. However, the actual page that you create does NOT include the ...

Drupal paths that won't work!

As I created a new site to list all of my accounts on the Internet, I thought the folder where those accounts appear should be called profiles. But somehow autopath did not generate the URL Alias as expected.

https://alexiswilke.me/profiles/

I tried several times and each time it returned an empty alias. Then I tried adding the alias by hand and that was accepted by Drupal, but when I then tried to go to that page it failed with an Apache error which at first I found odd. Then I recalled that there was a folder named profiles in the top directory of Drupal. The Drupal code (from the

cellpadding="..." and cellspacing="..." not working

Today I was trying to create a table in a post and just could not get the cell padding I wanted. Without the padding the data is all cramped together which did not look the way I wanted (see Alexis Wilke Accounts.)

I knew I had the following entry in my CSS but did not think it was stronger than the table cellpadding and cellspacing specifications because I thought it worked for me before!

* {
  margin: 0;
  padding: 0;
}

I was wrong, that definition applies to the td with a greater constrained. So I had to add another entry. I solved the problem using a td definition like this:


Wordpress Media Upload returns IO Error

I got a new word press website a couple days ago and got it installed in the last few days. There were 3 images missing so I started working on getting them in. When I got the first image, I went to Wordpress and I got an error... with no detailed explaination (maybe there is a log, but I don't know Wordpress that well to tell.)

The error message was just: IO Error

I was pretty sure that the problem was just that the folder where Wordpress tries to upload the new content was write protected from the Apache user. Under Ubuntu and Debian, the default name for that user is www-data and ...

MS-Access hangs when setting a recordset

Today I experienced a hard lock-up with MS-Access as I was in a form typing a new query.

The new query data is checked first, if valid, then the query is processed and ends in a SELECT SQL order which I save in the Form with a simple OpenRecordset call as in:

sql = "SELECT stuff FROM thing WHERE foo LIKE 'begin*'"
Set CUSTOMER_LIST.Form.Recordset = CurrentDb.OpenRecordset(sql)

That used to work just fine in older versions of MS-Access, but we now use MS-Access 2007.

The hanging happens on the 2nd line, when the Set occurs. Note that it generally happens the second

Too many authentication failures for <username>

Today I tried to make use of sftp to transfer a website to SourceForge.net. Unfortunately, it kept giving me an error:

Received disconnect from <IP address>: 2: Too many authentication failures for <username>

I looked around why that would happen and could not really find anything decisive... until I found an issue in the trac system that SourceForge.net uses. That issue mentioned the fact that the ssh-agent could be the culprit.

It was. Somehow the ssh-agent was sending key after key after key... exhausting the number of keys that SourceForget.net will accept and thus made it

Root Kit

Under a Unix system, a virus is often called a Root Kit. This is because the only real way to really hurt the data on a Unix system is by changing things that are protected such that only a root user can access them.

Thus hackers write tools that check for flaws and when they find one they become root on your system. From that point on, your system is compromised and needs to be (1) reinstalled and (2) fixed...

In this case, Fixed means for you to find the process that the rootkit used to become root which is often not easy since they are likely to have deleted all the logs (hence the need

Compiling in 64bit with VC 2010 can result in a crashing software

Today, as I was trying to run a 64 bit application in Release mode under Windows 7, I got a crash about a NULL pointer. There is the debuggee (<- well known Microsoft spelling of Debugger) error window:

Unhandled exception in ... Access violation reading location 0x0000...

Unhandled exception at 0x52740ccf in guikeyboard_test_developer.exe:
0xC0000005: Access violation reading location 0x0000000000000000.

So... according to this error, the software access a NULL pointer. It took me some time, but the problem was not a NULL pointer, it was an unaligned memory access. In other words, it is trying to write a a pointer that is not 16 bytes aligned, which is ...