Showing posts with label Windows 7 x64. Show all posts
Showing posts with label Windows 7 x64. Show all posts

Silverlight not working because of font issue

If Silverlight is installed correctly, but still not working, check for Windows Fonts with an ampersand in the name and remove them:

http://connect.microsoft.com/VisualStudio/feedback/details/719317/silverlight-5-error-1001-font-filename-issue

Uneasy way to determine proxy server

Open a command prompt and perform the following steps:
  1. Inspect the output of netstat -an | find "EST" (short from 'ESTABLISHED')
  2. Go to a fresh site (one that you have not recently visited)
  3. Run the netstat command again, looking for the new connection. It might look like:
    TCP 192.168.1.1:1989 192.168.1.88:8080 ESTABLISHED
(credits go to Royce Williams)

Alternatively, install TCPView and look at the remote address and remote port columns for the browser connections.

OCR a (region of a) PDF using C# and "freeware"

Perform the following steps:

1) Install Ghostscript to make conversion of PDF possible:
https://code.google.com/p/ghostscript/downloads/list

2) Install Imagemagick to convert more easily from PDF to JPG:
http://www.imagemagick.org/script/binary-releases.php#windows

3) Install MODI using Sharepoint Designer 2007, if the Office version on the system is more recent then 2007:
Download Sharepoint Designer 2007
Start setup, custom, disable all
Then select all options under Microsoft Office Document Imaging

By default (on English Windows) only four English-alike languages can be recognized, so install other language packs, e.g. for Japanese or Chinese if needed. In Windows 7 Enterprise or Ultimate this can be done using the "optional updates" from the Windows Update tool In other versions additional languages are not available.

4) From C#, add COM reference to Microsoft Office Document Imaging

5a) Convert a PDF page to JPG from code by executing the following command line syntax:

Whole page:
convert -type grayscale -density 300 jp.pdf[0] jp.jpg

Region of the page:
convert -type grayscale -density 300 jp.pdf[0] -crop 600x600+50+50 jp_crop.jpg

5b) Convert the JPG image to text

Example C# code:
MODI.Document d = new MODI.Document();
d.Create(@"c:\tmp\image\jp_crop.jpg");
d.OCR(MODI.MiLANGUAGES.miLANG_ENGLISH, false, false);
MODI.Image i = d.Images[0];
Debug.WriteLine(i.Layout.Text.ToString());
Note:
  • If the OCR statement returns a "bad language" error, then install the requested language pack
  • If the OCR statement returns a "document not ready" error, then uninstall and reinstall MODI by using remove programs and rerunning the Sharepoint Designer setup
  • The language of the text that is parsed needs to be known and set in the OCR function

Quipu JDBC connection to MS Access

There are several ways to connect to a MS Access database from Java, like the low-level MS Access library called Jackcess: http://jackcess.sourceforge.net/

The downside is that most Java applications that support heterogeneous connections have a default built-in procedure to connect and open the database. Most of the time, the "getSchemanames" function is called and this one doesn't function as expected with MS Access. Quipu uses this method also.

Therefore, a connection can be made in the following way, but results in an error when retrieving the schema names during reverse engineering with Quipu from MS Access

1) JDBC to ODBC bridge

Create a connection to the MS Access database d:\test.mdb using a native and DSN-less JDBC to ODBC bridge:

Manage connection types:
Add a new connection type:

name= ms access jdbc
type= jdbc
database or file delimiter=
database or file required= false
jdbc port delimiter= :
jdbc default port=
jdbc driver= sun.jdbc.odbc.JdbcOdbcDriver
url type= jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=

Manage connections:
Add a new connection:

name: ms access jdbc
database= test.mdb
hostname= d
port= /

Notes:
  • The url type above is for Java x64 and MS Access x64. If Java x32 is used, then the url type= jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=
  • No additional jdbc driver (jar file) needs to be installed, because the driver is embedded in the Java JRE runtime
There is an alternative method:

2) UCanAccess

It is a open source database driver written by Marco Amadei that behaves identical to the JDBC to ODBC bridge, but
- doesn't use ODBC
- handles the getschemanames call, using a default "PUBLIC" schema

Download it here: http://sourceforge.net/projects/ucanaccess

To use it with Quipu:
- Extract the jar files from the \lib folder in the zip file to Quipu's \webapps\qp\WEB-INF\lib folder
- Sort files by name and make sure no duplicates exist, e.g. hsqldb and hsqldb-1.8.0 is not allowed.
- Remove the duplicate with the lowest versionnumber. In the case of hsqldb, which has no versionnumber: keep the one from the UCanAccess zipfile

Manage connection types:

Add a new connection type:
name= ucanaccess
type= jdbc
database or file delimiter=
database or file required= false
jdbc port delimiter= :
jdbc default port=
jdbc driver= net.ucanaccess.jdbc.UcanaccessDriver
url type= jdbc:ucanaccess://

Manage connections:

Add a new connection:
name: ucanaccess
database= test.mdb;showschema=true
hostname= d
port= /

Notes:

- The "showschema=true" property bypasses the getSchemanames error

Uninstall Microsoft Security Essentials

Microsoft Security Essentials can be uninstalled from Windows 7 as follows:

Stop Outlook from reformatting telephone numbers

A telephone number gets reformatted when adding it to a contact in Outlook, e.g. "+31.." becomes "31".

This behaviour can be stopped as follows:
  • Start, Search: "phone" and hit enter. If this doesn't work, then start the Telephony service:
    • Start, Search: "services" and hit enter - Double click Telephony (TapiSvr)
    • Startup type: automatic
    • Click Start
  • In the Phone and Modem screen, select a location or, if required, make a new location and use anything for the area code
  • Click Edit..
  • Country/region: Internation Freephone Service
  • (Stop and) start Outlook
Note: it doesn't stop reformatting completely.

E.g. "+31-12345678" still gets reformatted to "+31 12345678", but at least the starting "+" sign remains untouched. And "+31612345678" gets reformatted to "+31612345678 "

Epson AL-C900 with empty color toner

The Epson AL-C900 Aculaser has a default setting that makes it impossible to continue printing if one of the color toners/consumables is empty. Even in black and white.

This can be fixed as follows:
  • Connect the printer directly, i.e. via USB to the PC or laptop and turn the printer on
  • Install "Status Monitor 3 1.1b" from the Epson website:
    http://esupport.epson-europe.com/FileDetails.aspx?lng=en-GB&id=31761
    The name of the downloaded file is: epson31761eu.exe
    Note:  there is no separate Windows 7 x64 version, so use the Windows Vista x64 version for that platform
  • Right-click the "Status monitor 3" icon in the tray and:
    • Epson AL-C900 -> Printer Setting...
    • Check "Continue printing when consumables are empy"

MS Access DSN-less connection

It is possible to create a DSN less linked table and/or pass-through query from Microsoft Access to SQL Server Express without deleting those objects first, as is often suggested, e.g. here:

http://www.accessmvp.com/djsteele/DSNLessLinks.html

This is safer, because the linked objects will be gone if the code fails after deleting the objects, but before re-adding has completed.

One of the downsides of this approach is that MS Access has to be re-started for the new connections to be effected. In more detail: Access caches ODBC connections. For example, when a working ODBC connection of a linked table is replaced with one that has a wrong username, it will still work, because the previous one is retrieved from cache. It is not possible to clear this cache programmatically or manually, unless Access is restarted. Furthermore, Access only adds new connections to the cache when the driver, server or database property changes. Adding a new and correct ODBC connection to a linked table that only as a different login than the old one has no effect! The old connection from the cache will be used.

Another downside is that the database grows significantly after each execution of the code. A compact/repair resolves this. Set the "compact on close" property on the database.

Use this code to loop over all tables and queries to set the connection string:

Dim db As Database
Dim td As TableDef
Dim qd As QueryDef
Dim strODBC As String

  Set db = DBEngine(0)(0)
  strODBC = "ODBC;DRIVER=SQL Server;SERVER=REMOTESERVER\SQLEXPRESS;DATABASE=TestDB;UID=sa;PWD=sa;Trusted_Connection=No;"

  ' reconnect pass-through queries
  For Each qd In db.QueryDefs
    With qd
      If Left$(.Connect, 4) = "ODBC" Then
        ' note: for a passthrough query the uid and pwd are always stored
        .Connect = strODBC 
        .Close
      End If
    End With
Next qd

  ' reconnect linked tables
  For Each td In db.TableDefs
    With td
      If Left$(.Connect, 4) = "ODBC" Then
        ' note: for a linked table the uid and pwd are only stored when this property is set!
        .Attributes = dbAttachSavePWD
        .Connect = strODBC
        .RefreshLink
      End If
    End With
  Next td

  db.Close
  Set db = Nothing

Notes:
  • Use DBEngine(0)(0) in stead of CurrentDB(); the implementation is 1000x faster
  • Use Left$ in stead of Left; the implementation is faster
  • This particular code assumes that DAO is used, not ADO
  • The connection uses a SQL Server Authentication instead of Windows Authentication
  • The connection string value is assigned to variable strODBC
  • The connection string has to start with the text "ODBC;" both for the linked table as the pass-through query
  • If the connection is to a default instance of SQL Server, the string "\SQLEXPRESS" can be removed
  • By default, the username and password are stored for a pass-through query, but not for the linked table. This appears to be a bug, it either should be set for both or for neither. Setting the uid/pwd parameters for a linked table does, however, not result in an error
  • ... but if the code td.Attributes = dbAttachSavePWD is used, then the uid/pwd are also stored for a linked table. At least for MS Access 2010 on Windows 7 x64, this is enough. In some cases two registry settings need to be set for this to work:
    REGEDIT4
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Network]
    "DisablePwdCaching"=dword:00000000
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\8.0\Common\Security]
    "DisablePwdCaching"=dword:00000000
  • After the code has run, the connection string has been set for all the objects, but is not yet effective! For this, MS Access needs to be closed and reopened
  • I found that the reconnecting loop using DRIVER=SQL Server in stead of
    DRIVER={SQL Server}or
    PROVIDER={SQL Server Native Client 10.0 ODBC Driver}
    was much faster
  • Close and destroy the reference to the database object to prevent memory leaks
Related errors might include:

"login failed. The login is from untrusted domain and cannot be used with windows authentication"

PALO backend is unavailable

You might get an "backend is unavailable" error when connecting to the PALO server from an internet page.

Check the %SYSTEMDRIVE%\Program Files (x86)\Jedox\Palo Suite\log\core.log file for a probable cause. In my case the fonts folder did not exist:

[2012/05/02 10:22:28] ERROR [core] palo web core server version boost::filesystem::basic_directory_iterator constructor: The system cannot find the path specified: "C:\WINDOWS\Fonts"

The reason for this error is that Windows and the program files folder are installed on my G drive and PALO apparently hardcodedly searches the C drive for these fonts. The service PaloWebCoreServerService cannot start because of this error.

Resolution:
  • Create a folder called c:\windows\fonts
  • Copy at least the following fonts from the g:\windows\fonts folder:
    andalemo.ttf
    arial.ttf
    arialbd.ttf
    comic.ttf
    courier.ttf
    georgie.ttf
    impact.ttf
    times.ttf
    trebuc.ttf
    verdana.ttf
    webdings.ttf
    If any of these fonts is not available in the folder, then download them from Microsoft:
    http://sourceforge.net/projects/corefonts/files/the%20fonts/final/
  • Start the service PaloWebCoreServerService

Bamboo Pen & Touch supported driver not found

If you try to start the Wacom Bamboo Preferences application, but get an error message displaying "a supported tablet could not be found", then check if the service "Wacom Consumer Touch Service" is enabled and running.

Live calendar displays incorrectly in Chrome

At last the Windows Live calendar displays appointments correctly again in the latest Google Chrome beta release, 14.0.835.2. They fixed the improper displaying of events.

Up until now you had to use a workaround to have the bars visible in the month view:

No login prompt for Exchange

It is possible to suppress the login prompt that appears in Outlook, when trying to connect to an Exchange server via Outlook Web Access.

This prompt can be skipped:
  • Close Outlook
  • Get the Exchange server name: Control Panel -> Mail (32 bit) -> Email accounts... -> View or change existing e-mail accounts -> Double click the "Exchange" account
    • The microsoft exchange server name, e.g. exmbx01.acmexchange.com, becomes the exchange server name: *.acmexchange.com
  • Get the webserver name: -> More settings -> Connection -> Exchange proxy settings
    • The connection settings URL, e.g. webmail.acmeweb.com, becomes the webserver name: *.acmeweb.com
    • Set proxy authentication settings: NTLM authentication
  • Start the Credential Manager: Control Panel -> Credential Manager
  • Add a windows credential, e.g. for jim@acme.com
    a. internet or network address: *.acmeweb.com
    b. username: jim@acme.com
    c. password: pwd
  • Add another windows credential
    a. internet or network address: *.acmexchange.com
    b. username: jim@acme.com
    c. password: pwd
Start Outlook and send/receive. The login popup should be gone.

Keywords: microsoft exchange, outlook 2003, outlook web access, repeating login prompt

Use 32-bits Excel Source with 64-bits SSIS

The following is still work in progress and more of a braindump than anything else, but I've put it here, because someone might already find some use for it

Straight out of the box, you cannot use the Excel Datasource in SSIS on a 64-bits Windows platform , because the Excel Datasource uses a 32-bits OLEDB library. Microsoft has not released a 64-bits version of this library.

0) Use MADE 2010
There is 64 bits version for Office 2010, so for Excel 2010. It is called "Microsoft Access Database Engine  2010 Redistributable" of which there is a 32- and 64-bits version. We're interested in the 64-bits version, but this package can only be installed after removing all 32 bits Office applications!

a) Install MADE 2010 while NOT removing 32 bits Office applications:

AccessDatabaseEngine_x64.exe /passive

Notes:

  • THE SYSTEM WILL AUTOMATICALLY REBOOT, SO SAVE WORK BEFOREHAND!
  • Start Excel once to go through the configuration process. Start it a second time. It the configuration process starts again, then disable it by renaming this file to "setup_disabled.exe":
    c:\Program Files (x86)\Common Files\microsoft shared\OFFICE14\Office Setup Controller\setup.exe
  • run the repair option for the Microsoft Access database engine 2010 program inside "add/remove programs" 

b) If that doesn't work, then also install the Data Connectivity Components:
http://www.microsoft.com/en-us/download/confirmation.aspx?id=23734

1) Trick Windows to use 32-bits ODBC data sources
Try adding the SysWow64 folder to the beginning of your path:

Path=%systemroot%\SysWow64;...old values here...

When done via the command prompt via the SET-command, it will be undone when that window is closed.

2) Run SSIS in 32-bits mode
Use the 32-bit DTEXEC.EXE to execute the package containing the Excel Datasource. It is located in "Program Files (x86)\Microsoft Sql Server\90\Dts\Binn" (or for SSIS 2008: "Program Files (x86)\Microsoft Sql Server\10\Dts\Binn")

You can schedule this using "task scheduler" or SQL Agent.

3) Compile package as 32-bits
Package configuration properties -> Debugging -> Debugging Options -> Run64BtRuntime -> set to False.

4) Even dirtier trick: convert Excel spreadsheet to CSV beforehand
This can be done in several ways, with minimal coding required:
  • If Excel is installed, then create a VBS script that uses CreateObject("Excel.Application") to create an Excel object. Then open the XLS file and save it as a CSV using this object.
  • ... or a perl script using the "Spreadsheet::ParseExcel" module
  • ... or a powershell script using "comobject Excel.Application"
  • Install OpenOffice and program a small macro in it's OpenOffice basic language. Then create a VBS or DOS script that opens OpenOffice and calls the macro with parameters, one being the source XLS, and one being the target CSV.
  • Without installing anything on the server running SSIS: write a small C# application that utilizes the Excel OLEDB data provider built into Windows to read data from the Excel sheet. Then write the results to a CSV file.
  • ... or write a small C# application that utilizes the opensource Excel Data Reader library to read data from the Excel sheet. Then write the results to a CSV file. This library appears to be buggy however.
  • Freeware commandline tool: XLS2CSV by Zoom Technology. Parses only the first sheet. The column separator and text quotes are configurable throught an ini file
  • Freeware commandline tool: XLS2CSV by Tom Crow. Parses all sheets to separate CSV files
ODBC/DSN configuration can be found here:
  • 32 bits ODBC connections: %windir%\syswow64\odbcad32.exe
  • 64 bits ODBC connections: %windir%\system32\odbcad32.exe
Notes:
  • ADO also uses the OLEDB library.
  • The OLEDB library is a piece of code that gets loaded and compiled into the calling application at runtime.
  • If you use the MADE 2010 Redistributable package, then be aware of a small bug when connecting to Office 2010. You have to use "MICROSOFT.ACE.OLEDB.12.0" as the driver name in stead of the specified "MICROSOFT.ACE.OLEDB.14.0".
  • Although previous Office versions need to be de-installed before installing MADE 2010, they can be reinstalled afterwards.

Increase maximum volume of the iPad

If you find that the maximum volume on the iPad is not loud enough, then you can fix that with the following adjustment:
  • Start Cydia
    • If you haven't installed OpenSSH, then search for it and install the app, restart the iPad
    • Install WinSCP on your Windows environment and make a connection to the iPad. The iPad IP adress can be found on the iPad in Settings -> Wi-Fi. Click on the blue arrow on your current wifi connection. By default the username is "root" and the password "alpine".
  • Download and install iPodRobot for Windows
  • Open a connection to the iPad via WinSCP
  • Copy the following file to your Windows environment: System/Library/PrivateFrameworks/Celestial.framework/RegionalVolumeLimits.plist
    • Just in case anything goes wrong: make a copy of this file on your Windows environment
  • Start iPodRobot and load RegionalVolumeLimits.plist
  • Find and replace 0.xx000000000000004 with 1, where x=79 or 84, or some other number under 100
  • Save the file and copy it back to the iPad using WinSCP
  • Reboot the iPad.
The volume will be much louder, so tune it down before starting any music or video on the iPad.

Note:
  • The iPad needs to be jailbroken, i.e. needs to have Cydia installed
  • The Cydia/Winterboard apps Volume Boost X3 and Volume Boost 4.0 have no effect on the iPad.
Alternatively, using iTunes, you can boost the volume of each individual video/song:
  • Start iTunes
  • Select all songs under iPad -> Music
  • Right click and select "Get info"
  • Tab "options", drag the slider to +100%
The song volumes will be adjusted song by song. This can take a long time!

Keywords: setting the maximum volume limit on iPod

Internet on iPad via adhoc wifi hotspot

Scroll down for the solution, read on for some trial-and-error background info.

When no direct wifi internet connection is available, then it is possible to use the internet connection of wired Windows PC. The only requirement is that the PC needs to also have a wireless (wifi) network card.

It is possible to use internet connection sharing (ICS) on Windows to setup an adhoc wireless network and connect to this network from the iPad:
  • Control Panel -> Network and sharing center -> Setup a new network or connection -> Set up wireless adhoc (computer to computer) network -> Next
  • Give the network a name
  • Security type: WPA2-Personal
  • Give the network a password (security key) of at least 8 characters
  • Click "Turn on internet connection sharing"
  • Select the LAN internet connection when asked "Select the internet connection that you want to share"
  • iPad -> Settings -> Wi-Fi -> Select the network, type in the password
I couldn't get this to work properly. I tried all of the following:
  • "Turn on internet connection sharing" does not appear. Try a solution posted by sinnerman on windows7forums.com:
    • Open Network and Sharing Center
    • Go to Change Adapter Settings
    • Find the adapter for the default internet connection (it was a PPPOE in my case)
    • Right click on that -> Cancel as Default Connection
    • Right click -> Properties -> Sharing tab
    • Uncheck "Allow other network users to connect ..." if it is not
    • Setup the ad-hoc as explained above, the Turn on Internet connection sharing should appear.
  • Disable Windows Firewall. If you have another one, for example Bitdefender, then there is/might be a direct option to allow ICS.
  • Allow other users on internet connection:
    • Control Panel -> Network and sharing center -> change adapter settings -> select internet connection -> Properties -> Sharing -> Check "Allow other network users to connect ..."
  • Set a policy that allows you to use ICS: 
    • Start gpedit.msc.
    • Local Computer Policy -> Computer Configuration -> Administrative Templates -> Network -> Network Connection
    • Set "Prohibit use of Internet Connection Sharing on your DNS domain network." to false
Solution
  • Download Connectify. It is freeware
  • Install and allow the software to install drivers
  • Start Connectify and start easy setup wizard
  • Give the network a name, next
  • Give the network a password, next
  • Select the connection (wired/LAN) through which there is an internet connection
  • iPad -> Settings -> Wi-Fi -> Select the network, type in the password.
The connection from the iPad is lost when unused for a couple of minutes. When using, for example, Safari on the iPad, the connection is quickly restored via a popup that lets you select from wifi networks. Sometimes this is not even necessary and safari restores the connection automatically.

Bluetooth device not found on Dell laptop

If you are sure you have a built-in bluetooth device on your Dell laptop, but you cannot find it in control panel or device manager, then try these steps:
  • Determine bluetooth device type using the Dell device locator
    or
    Go to http://support.dell.com and type in the search bar: "Find Out Which Bluetooth Adapter Is in Your Dell Computer"
    or
    Go to the webtool "system configuration tool" directly: system configuration tool
    In all cases, use the service tag that can be found on the bottom of the laptop
  • Search for "bluetooth" on the page that the SCT returns, it should have code beside it, i.e. "370"
  • Go to http://support.dell.com and type in the search bar: "bluetooth 370"
  • The results page contains drivers for bluetooth for various Windows OS'es:
    - Look for "Dell Wireless 370 Bluetooth Minicard, v.XXX" and search for the most recent version XXX.
    - Make sure "Win 7" is in the description, if the driver is needed for Windows 7.
  • Download and install the driver.
Notes:
  • The SCT only works from Internet Explorer 5.5+
  • And only from the 32 bits version of Internet Explorer. Make sure you don't use the 64 bits one.

Subtitle Workshop blank screen with Matroska/MKV containing H.264

Scroll down to solution for the workaround to get video in stead of a black screen. Read on for a little bit more background information.

There are five components to video in Windows: container (like avi, mkv), video format (divx, h.264), splitter, decoder, and video player.

Nice post to get started:
http://www.hack7mc.com/2009/02/mkvs-for-minimalists-on-windows-7.html

But the scripts could be more robust. E.g. change the fixed system root "c:\windows" to %systemroot%

SPLITTERS

Haali Media Splitter: http://haali.su/mkv
Note: since december 2009, this contains also the x64 version.

Gabest: hard to get, but is part in some packs.
x32: http://www.hack7mc.com/wp-content/plugins/download-monitor/download.php?id=12
x64: http://www.hack7mc.com/wp-content/plugins/download-monitor/download.php?id=11

Advice: Haali splitter.

DECODERS

ffdshow (the original, but outdated): http://sourceforge.net/projects/ffdshow/files
ffdshow tryouts: http://sourceforge.net/projects/ffdshow-tryout/files

Get a 64 bits or 32 bit ("generic") in the folder "official releases" or get a more recent nightly build from the folder "SVN builds by clsid".

Advice: a recent 32 bit nightly build.

SPLITTER/DECODER packs

K-Lite Codec Pack: http://www.digital-digest.com/software/K-Lite_Codec_Pack_64-Bit_history.html

Shark007: Install Win7Codecs first (http://www.majorgeeks.com/Win7codecs_d5959.html), then x64Components (http://www.majorgeeks.com/download.php?det=5535)

Shark's Win7Codecs comes with a tool to select and configure the various splitters and decoders for the various media types (divx/xvid, mpeg2, h264/mpeg4) and containers (avi, mkv).

Install and use the "settings32.exe" application to configure, since most video players are currently still 32 bit (winamp, zoomplayer)

Advice: Shark007 packs

VIDEO PLAYERS

Zoomplayer 5.02 Standard (latest free version), Windows Media Player (build-in, WMP Classic/Guliverkli2 or WMP Classic Home Cinema) and Winamp all work with the system splitters and decoders. VLC Player comes with its own splitters/decoders and does not use the ones installed on the system.

Subtitle Workshop v2.51 does only work with "real" avi containers. The "rename trick", where the mkv extension is changed to avi, will work with most of the video players, but unfortunately not with Subtitle Workshop.

The more recent betas of v4 do work with mkv/h.264 files, but those are not very stable. The splitter has to be Haali, Gabest's does not work - "cannot render media!". It does not matter if the "rename trick" is used. This also applies to Windows Media Player. Gabest also doesn't work with Subtitle Workshop v2.51.

Winamp doesn't really like mkv files; it almost always halts on startup.

Zoomplayer does not work well with video format "Xvid dev 25-Mar-03". You have to use Haali splitter for avi, because Gabest and Microsoft's cause a stack overflow.

Zoomplayer doesn't work with mkv/H.264 when the ffdshow codec is used.

CHECK TOOLS

Tools to check video containers, e.g. get video format or the the processing workflow (splitting, decoding):


SOLUTION

To get the video preview to work in Subtitle Workshop 2.51 with mkv files, that contain the h.264 video format:
  • Install both Shark007 packs mentioned above. Check the box to install ffdshow.
  • To get the latest ffdshow version working with Shark007 (this step is not necessary):
    • In \program files (x86)\win7codecs\filters: regsvr32 /u "ffdshow.ax". Uninstall this older version
    • Download most recent 32 bit nightly build mentioned above and install with default settings
    • Copy "ffdshow.ax" from the nightly build install folder to the \win7codecs\filters folder
  • Start \program files (x86)\win7codecs\tools\settings32.exe
  • Click "reset all" to get the recommended configuration. 
    • To be sure, check the following settings:
      H264: use ffdshow's codec/ffdshow with multithreading
      MKV: use haali splitter
  • Set H264 codec in directshow players to "use ffdshow's codec"
  • Finally, install Vobsub 2.23
Notes:
  • The final step is very important. You have to install Vobsub (or "vsfilter") as the final step, even if it is already installed. Just install it again. (VobSub is a directshow filter that overlays subtitles)
  • Test mkv and avi video formats in Winamp and Zoomplayer. If they fail to start, then uninstall Vobsub 2.23 again. Use the subtitle option from ffdshow to have subtitles in those players. WMPC and VLC have their own subtitle overlay filters.
  • The version has to be 2.23, more recent versions will not work. E.g. 2.39 does not work.
  • Do not rename the container from .mkv to .avi. Subtitle Workshop 2.51 will load the .mkv extension without problems.

CDBurnerXP: drive not recognized

CDBurnerXP is a freeware tool for burning CD's and DVD's, including blueray. However, it sometimes does not recognize the drive to burn with.

First, check the FAQ on the CDBurnerXP website:
http://cdburnerxp.se/help/appendices/troubleshooting

In my specific case, I then did the following:
  • Start CDBurnerXP in "audio mode"; the drive was recognized. Only in "data mode" it is not.
  • Check the chipset. Download the freeware tool "system info": http://www.gtopala.com/siw-download.html.
  • Extract and start it - it does not have to be installed; it is a standalone executable. Check hardware -> motherboard -> southbridge. Note the chipset.
  • Download "intel matrix storage manager" for your chipset: IMSM.
  • Install IMSM and restart.
Now, CDBurnerXP should work in "data mode".

Note: make sure the drive is on the "compatible drives" list: http://cdburnerxp.se/en/testeddrives

The nearby-future of storage

The ioDrive Duo by FusionIO out-performs even multiple SSD's placed in parallel. The 320GB version of the ioDrive has a read/write speed of ~1.5GB/s:

http://www.fusionio.com/products/iodriveduo

Difference with traditional SSD:
  • The flash memory is integrated in the PCI card.
  • The flash memory has been optimized using a proprietary technology.
Downside:
  • Cannot be used as a boot drive.
  • Requires a 64-bit operating system.
  • The price is about 15,000 euro for 320GB version (ssdeurope.com). Ofcourse, this has to be compared against the cost of buying and operating a SAN.

SQL Developer thick/OCI driver

The following error messages may appear when using SQL Developer to select data from a SQL Server table via a (heterogeneous or DG4ODBC) database link on an Oracle 11g DB:

Bigger type length than Maximum
OALL8 is in an inconsistent state

Solution: switch to the thick driver to work around this.

In SQL Developer: tools -> preferences -> database -> advanced -> use oci/thick driver = checked.

If this does not work or when getting the error messages:

no ocijdbc11 in java.library.path
vendor code 0

then:

- Download Oracle Instant Client 11.1.0.7.0 basic lite (easily found with Google, register with Oracle to download)

Note: version 11.2 does not work with SQL Developer!

Note: take the 64-bits version on a 64-bits OS, like Windows7 x64.

- Extract files to c:\ora\instantclient_x64_11.1.0.7.0_basiclite
- Add to environment variable PATH: c:\ora\instantclient_x64_11.1.0.7.0_basiclite
- Create a batch file called sd.bat in the rootfolder of the SQL Developer installation, with the following body:
set ORACLE_HOME="c:\ora\instantclient_x64_11.1.0.7.0_basiclite"
start sqldeveloper.exe
- Double-click sd.bat to start SQL Developer
- Add a connection with Connection type = basic

To make a connection with Connection type = TNS:

- Create folder c:\ora\instantclient_x64_11.1.0.7.0_basiclite\network\admin
- Put these files in the admin folder:

sqlnet.ora
tnsnames.ora

- In SQL Developer: tools -> preferences -> database -> advanced -> tnsnames folder: c:\ora\instantclient_x64_11.1.0.7.0_basiclite\network\admin
- Add a connection with Connection type = TNS

Note the following:
  • The solution above even (or especially) works when another Oracle client is already installed. For example, if the OracleXE DB (which, at the time of writing, is 10g) is installed locally, then the Oracle Client 10 is also installed. But this client might not work when trying to connect to a remote Oracle 11g DB
  • There is no need to set the environment variables ORACLE_HOME or TNS_ADMIN variable on the system. It does not matter what their values are
  • The order of folders in the variable PATH does not matter
  • Most likely Help -> About -> Properties -> oracle.home does not point to the correct Oracle home folder. So not to c:\ora\instantclient_x64_11.1.0.7.0_basiclite. It does not matter what the value is
  • Unfortunately, the ORACLE_HOME trick does not work with the PATH variable; it is no use adding that to the batch file
  • The error "Bigger type length than Maximum" is related to a bug in the implementation of the thin part of the JDBC driver. Not to heterogeneous services, Oracle DB, SQL Server, SQL Developer or the thick part of the JDBC driver. (Note: the same driver, e.g. ojdbc6.jar, contains the thin and the thick classes)