Home
Various
DCC600 Service mode
Projects
Miscellaneous
Remote control
DVB
BenchScope
TV
Main
Miscellaneous
Chassis list
28PW9525 Remote control
Pioneer KRL-32V service mode
TV Service mode
Matchline (generic)
Remote control codes
MG7.1E Customer Service Mode
MG7.1E Service Alignment Mode
MG7.1E Service Default Mode
TV Service mode tables
A10
EM
EM1
EM2
FJ3.0
GFL
L01
MG2
MG3
MG7
|
|
|
|
2007-02-16 |
Added notes on CHKNTFS utility |
2006-09-25 |
Added Delphi sample on dockable panel which can be undocked at a user defined position. |
2005-12-29 |
Added problem with Canon CanoScan LiDE 50 scanner. |
2003-09-05 |
Added problem with Delphi 5 <> 7 code. |
2003-08-01 |
Added problem and remedy for Norton Ghost 2003 and XP. |
|
|
You do not want XP to check the disk when a unexpected reboot occurs |
When XP boots it checks the dirty flag of the drives.
If XP was not closed in a 'friendly' matter (e.g. BSOD, reset of the PC or some other thing that rebooted XP unexpectedly), then the drives are not marked 'clean' (thus they are 'dirty'). When XP
is started, by default it will run CHKDSK if it detects a dirty flag on a drive. This behaviour can be changed using the CHKNTFS utiltiy. In particular, using the '/X' option you can exclude
drives to be checked. For instance, use 'CHKNTFS /x c: d: e:' to exclude drives c:, d: and e: from the check on the dirty flag. The CHKNTFS utitlity is to be run from a command prompt, so use
'Start/Run, Open: cmd'. You can use 'CHKNTFS /?' to get some help on the possible options.
Problem with Delphi 7 code in Delpi 5 (editor show incorrect lines for errors) |
If you ever create code in Delphi 7 and then try to compile it under Delphi 5, then you might get strange results from the compiler/editor. It points to the incorrect position in the file were
an error is detected. This is due to the fact that Delphi 7 only uses a new line ($0A) character, whereas Delphi 5 uses a carriage return and new line ($0D $0A) for each line. Changing the single
$0A occurences into $0D $0A occurences will fix the problem.
Driver updating problems Windows |
Ever had the problem of updating a driver and it keeps insisting of using the old driver? Did you update a driver and it reports everything is oke but it does not work? Did you install/update
a software modem (WinModem), like a Rockwell/Conexant HCF modem, and the driver installed correctly but when checking communication the (COM) port could not be opened? Most of these problems are
caused by Windows using INF files of (previous) installed driver(s). The INF files for a new driver are typically placed into the '..\WINDOWS\INF\OTHER' subdirectory (Windows 98). The name of the
INF file is the original INF file from the driver preceeded by the manufacturer name. Sometimes all that is required to install/update a new driver correctly is to remove the old INF file from
the '....\OTHER' subdirectory. However, sometimes some INF files (and other files) are also placed in the '..\WINDOWS\INF', so just removing the file in the '...\OTHER' subdirectory is just not
enough. Therefore the solution is to (temporary) make the '..\WINDOWS\INF' directory unavailable to Windows. The easiest way is to rename the subdirectory. After installing the updated driver,
which WILL use the driver supplied INF files, you should merge the old and new ''..\WINDOWS\INF' subdirectories.
With some ATA-controllers it is possible that, after using Ghost 2003 (DOS), that XP is made inoperable. This happens for instance when you own an ASUS P4G8X DeLuxe motherboard.
Hardware concerned (most likely):
Motherboards/controllers with a serial ATA controller, eg. Silicon Image Sil3112 S-ATA Raid controller.
Symptom:
When Norton Ghost 2003 (DOS) is used to create (or restore) an image and XP is restarted, it will crash after a few seconds. It will show the BSOD ('blue screen of death') with the message that a
driver generated a fatal error (Irq less or equal). The driver for instance being SI3112R.SYS
Remedy:
Make sure that you power OFF the PC after using Norton Ghost 2003 (DOS) for creating or restoring an image. Do NOT restart the PC without shutting it down first!
Problem with Canon CanoScan LiDE 50 scanner |
This relates to Windows XP but might also be applicable to other operating systems. The problem is that a TWAIN error is being reported, whereas the device operated correctly before.
Re-installing the driver (with using the remove utility of Canon before this), still gives the same problems. The problem, probably, is that the environment path of were the Twain files can be
found has been removed. This can happen when an application or installer changes the environment path. This path then either gets corrupted, or it becomes too long. The solution to this problem
is adding the Twain drivers path to the environment path.
This goes as follows: CONTROL PANEL - SYSTEM - ADVANCED - ENVIRONMENT VARIABLES - Under System variables edit the 'Path' setting.
Include the path to the Twain directory, for instance: C:\WINDOWS\TWAIN_32\CNQL50.
After this all worked fine for me (although restarting the system might be needed).
Delphi (BDS/2006): Create an undocked panel at runtime without a close icon and which can be positioned anywere |
The following code is a sample on how you can create a dockable panel. The panel itself is created at runtime, and it is being undocked at a user defined position. Typically one would use
'FDockPanel.ManualFloat()' to have it undocked. However, the left/top position passed on with ManualFloat is not used. Using 'ManualDock' and 'HostDockSite.Left'/'HostDockSite.Top' makes it
possible to position the undocked panel. Using our own 'TDockForm' class for the 'FloatingDockSiteClass' allows us to disable the close button typicaly present in an undocked control.
type
TFrmMain = class(TForm)
......
private
{ Private declarations }
FDockablePanel: TPanel;
end;
TDockForm = class(TCustomDockForm)
constructor Create(AOwner: TComponent); override;
procedure DoClose(var Action: TCloseAction); override;
end;
.........
constructor TDockForm.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
BorderIcons := []; // This disables the 'close' button
end;
procedure TDockForm.DoClose(var Action: TCloseAction);
begin
Action := caNone;
end;
procedure TFrmMain.FormCreate(Sender: TObject);
begin
// Note: Freed by parent
FDockablePanel:= TPanel.Create(Self);
// Yes, 'with FDockablePanel do' also works ...
FDockablePanel.Parent := Self;
FDockablePanel.Height := 640; //
Note: setting Top/Left has no use since these will be changed by the docking
FDockablePanel.Width := 400;
FDockablePanel.DragKind := dkDock; // Make it a dockable panel
...
FDockablePanel.DragMode := dmAutomatic;
FDockablePanel.FloatingDockSiteClass := TDockForm; // Use our own docksite class, which in our case disables the 'close' button
// Create the (undocked) dock site
FDockablePanel.ManualDock(NullDockSite, nil, alLeft); // Can also use 'nil' instead of 'NullDockSite', alignment is don't care here
// Modify the dock site position
FDockablePanel.HostDockSite.Left := Self.Left + 500; // Offset from our main window
FDockablePanel.HostDockSite.Top := Self.Top + 100; // Offset from our main window
......
end;
|