[All]
Delphi 2007 - List of Fixes from December Update
By: Chris Pattinson
Abstract: List of 93 fixes (32 from Quality Central) for D2007 as part of the RAD Studio 2007 December Update
| QC# |
Project |
Area |
|
Delphi |
Documentation |
| Description: |
Steps: |
Start IDE without click anything, press F1 got error.
--------------------------- Error --------------------------- No help found for context. --------------------------- OK Details >> ---------------------------
|
1. Start IDE 2. press F1
//exp: Help's default page //act : error
--------------------------- Error --------------------------- No help found for context. --------------------------- OK Details >> ---------------------------
|
| QC# |
Project |
Area |
|
Delphi |
Documentation |
| Description: |
Steps: |
//This are the remaining issues from 254976
Bad links in default.htm file.
There are other links that don't work Backfish SQL documentation http://dn.codegear.com/article/36770 is incorrect : page not found
Eco documentation http://dn.codegear.com/article/36853/ is incorrect: page not found |
Run BDS. In the default page, click on the Help button. Check the different options. Some links don't work. |
| QC# |
Project |
Area |
|
Delphi |
Documentation |
| Description: |
Steps: |
Help Update
Running 'Rad Studio Documentation' stand alone I see 'No table of contents has been defined for current Help collection' |
Run Update install From Windows Start menu CodeGear Rad| Rad Studio Documention
|
| QC# |
Project |
Area |
|
Delphi |
Documentation |
| Description: |
Steps: |
Help on Help returns
Unable to get navigation object [!DefaultDynamicLinkIndex]
URL:ms-help://borland.bds5/MS.NETFramework.v20.en/MS.Dexplore.v80.en/dv_dexplore/html/92b51076-8841-45a2-8e2b- |
bmp attached Run help Help|help on Help |
| QC# |
Project |
Area |
|
Delphi |
Documentation |
| Description: |
Steps: |
[Function Issue] Help button of "Add Source Breakpoint" window and the document screen do not support.
Please see attach.
[MSeki on 16/10/07 (After HelpUpdate/1013/)] This issue has been resolved. |
1. Watch "Add Breakpoint" of "Breakpoint List".pane. 2. Select "Source Breakpoint..." => "Add Source Breakpoint" window appears 3. Push "Help" Button 4. "Add Address Breakpoint or Add Data Breakpoint" is displayed in DocumentExplorer.
|
| QC# |
Project |
Area |
|
Delphi |
IDE |
| Description: |
Steps: |
When F1 is pushed on TObject, it is necessary to display help.
[HelpUpdate] |
1. Run "Delphi for Microsoft Win32" or "C++Builder". 2. Create New VCL Form Application. 3. Drop New TObject(ex.TButton) 4. Click TButton1. ->TButton1 is active. 5. Push F1. ->Help is not displayed.
|
43860
| QC# |
Project |
Area |
| 43860 |
Delphi |
IDE |
| Description: |
Steps: |
[QC Short Description] Vista problems with XML Data Binding Wizard
[QC Description] The Delphi 2007 XML Data binding wizard tries to write to the program files folder (C:\Program Files\CodeGear\RAD Studio\5.0\bin\xmldbwizard.ini.). In Vista this only works if the user has launched Delphi as admin.. QC Entry 43860
|
1. Start Delphi 2007 in Vista 1.5 New Delphi Win32 VCL App 2. From the File menu select New -> Other 3. In the new item dialog, select Delphi Projects -> XML -> XML Data Binding 4. Click OK 5. You get the following error dialog:
--------------------------- Error --------------------------- Unable to write to C:\Program Files\CodeGear\RAD Studio\5.0\bin\xmldbwizard.ini. --------------------------- OK Details >> ---------------------------
|
| QC# |
Project |
Area |
|
Delphi |
IDE |
| Description: |
Steps: |
Contains and Requires are not able to translate in the tree of Project Manager.
[mt - also in French D2005] same in Japanese Update2 and German Update2.
Are "Contains" and "Requires" hard corded? |
1. File /New/ Package - Delphi pour Win32 2. check Project Manager // Contains and Requires are not translated in the tree. |
43305
| QC# |
Project |
Area |
| 43305 |
Delphi |
IDE\Dialogs\Project Options |
| Description: |
Steps: |
[QC Short Description] Duplicate DEBUG/RELEASE defines
[QC Description]
After using the "Default" checkbox on "Project Options", whenever a new project is created it has a duplicate define DEBUG that stays even when switching to RELEASE options. QC Entry 43305
|
1) New project
2) Project Options, Directories/Conditionals, Check the "Default" check box and click OK
3) Close all
4) New project
5) Project Options, Directories/Conditionals: duplicate DEBUG appears in "Debug" options; DEBUG;RELEASE show in "Release" options.
|
44669
| QC# |
Project |
Area |
| 44669 |
Delphi |
IDE\Dialogs\Project Options |
| Description: |
Steps: |
[QC Short Description] Image base setting is not persisted
QC Entry 44669
|
---added - TG ---- 1. After saving image base to another value, save project and close. 2. Open the dproj in a text editor to verify the ImageBase was added to the project 3. Reopen the project 4. In the Project Manager, right click Project1, and Save. 5. Re open the dproj in text editor, notice the ImageBase was removed.
----ORIGINAL--------------- Situation A:
1. Set an image base other than $0040000 in Project Options / Linker 2. Save and Close the project 3. Open the same project
Expected: Image base remains as set Found: Image base has reverted to $0040000
Situation B:
1. Set an Image base other than $0040000 for Release Build in Project Options / Linker 2. Select Debug build 3. Select Release build
Expected: Release build Image base remains as set Found: Release build Image base has reverted to $0040000
Situation C:
1. Set an image base other than $0040000 in Project Options / Linker 2. Save and Close the project 3. Verify that the correct image base is saved in the DPROJ file 4. Open the same project 5. Open the Project Options Dialog, then click OK 6. Build the Project
Expected: The built DLL should have the specified image base Found: The built DLL has image base $0040000
|
| QC# |
Project |
Area |
|
Delphi |
IDE\Code Editor |
| Description: |
Steps: |
Popup menu in code editor for an XML file contains non grayed items which do nothing. "Refactoring" doesn't do anything, should be grayed. "Rechercher" has an arrow, indicating there is a submenu, but there isn't. "Compléter la classe sous le curseur" not grayed but doesn't do anything and so should be grayed. See screen dump. "Basculer le point d'arrêt" is a non-sense in this context. Should be grayed. Same popup is shown for HTML, JavaScript, ...
|
|
51136
| QC# |
Project |
Area |
| 51136 |
Delphi |
IDE\Code Editor\Error Insight |
| Description: |
Steps: |
[QC Short Description] REPRODUCABLE Error Insight Eats All Memory
[QC Description] I finally found something reproducable that shows Error Insight consuming memory to the point that the IDE slows to a crawl (or worse). See steps.. QC Entry 51136
[ref. 244356, looks like similar issue.] |
1) I bring up an out of the box (well, as downloaded) copy of the Delphi personality on a freshly booted machine.
2) Open a new VCL Forms Application.
3) Open the Windows Unit and the Classes Unit
4) Have Task Manager running so you can follow the Mem Usage of bds.exe. The CPU Time is interesting to watch as well.
5) When looking at the Windows Unit, you should see three Error Insight messages (QC51111).
6) Go down to the TYPE directive at line 109 and put a couple of // in front of it to comment it out. Wait patiently for about 7-10 seconds while the Error Insight list gets built in the Structure window. Get used to seeing how long this takes...
7) Switch to the Classes unit and comment out the TYPE directive on line 72 (it isn't the first TYPE)
8) You'll now see a few Error Insight messages from Classes. Leave classes with these errors.
9) Switch back to the Windows unit where the TYPE is commented out.
10) Position the cursor right after the two // you added.
11) Now comes the fun... While watching the list of Errors in the Structure box, backspace twice to delete the two // characters. As soon as big bunch of Error Insight error messages disappear (three will remain), type the two // characters again and wait for all of the Error Insight Messages to reappear (7-10 seconds).
12) Repeat step 11, alternating between having the errrors and not having the errors. Remember to delete the // as soon as the error messages finally appear and add the // back after the error messages quickly disappear.
13) Follow the Mem Usage while doing this -- things bog down when you get up to about 1.2 GIG of memory usage.
(Don't forget to fix the source files when you are done)
Choice of files isn't significant -- just something to generate lots of errors...
Up-to-date XP
2 Gigs Memory
3.4 Gig Pentium D (so two processors) |
| QC# |
Project |
Area |
|
Delphi |
IDE\Code Editor\Error Insight |
| Description: |
Steps: |
| stdcall causes error insight errors. |
New VCL App add the following type decl;
type TTestRecord = record E1: procedure stdcall of object; E2: procedure of object stdcall; E3: procedure of object; stdcall; end;
//error insight is flagging 6 different errors. the code compiles fine. |
| QC# |
Project |
Area |
|
Delphi |
IDE\Code Editor\Error Insight |
| Description: |
Steps: |
Error Insight has shows an error for code involving calling convention directives.
(JJS: See related compiler issue 238688)
// Francois Piette 2007.09.18 Still in build 2804.9245 (RAD Studio 2007) Still in build 2825.9366_VCL_Update.8
|
Load the attached program into the IDE as a Win32 app.
See that error squiggles are indicated for the code on the line marked with #1.
Nevertheless, the program compiles as expected.
program Project2;
{$APPTYPE CONSOLE}
uses SysUtils;
type TMyFuncPtr = procedure (const Msg : String); cdecl; procedure MyFct(const Msg : String); cdecl; forward; const MyFctPtr1 : procedure (const Msg : String); cdecl = MyFct; //#1 MyFctPtr2 : TMyFuncPtr = MyFct; procedure MyFct(const Msg : String); cdecl; begin WriteLn(Msg); end; begin MyFctPtr1('Test1'); MyFctPtr1('Test2'); end.
|
| QC# |
Project |
Area |
|
Delphi |
IDE\Code Editor\Error Insight |
| Description: |
Steps: |
When the Editor options "error insigth" is enabled, Adding comments, new lines and deliting lines within a class definition is causing performance issue.
After dding few blank lines between class fields definition, the "private bytes" of the bds process increase of 1K. Removing those makes this number to increase of 1 more K per line removed.
The "Private Bytes" number will not decrease unless even when those comments or blank lines are removed. BDS needs to be re-started to see "privates bytes" number change.
[ref. 254984 for other steps.] |
1. Open a pas file with class definition
2. start process explorer and open the properties window for it - [Private bytes during at this point of this test is 139 484 K]
3. add blank lines between fields of a class definition. -[ "private bytes" = 140 828 K"]
4. remove the same lines [ "private bytes" = 144 284K"]
5. wait ....10 minutes. [ "private bytes" = 144 284K"]
will update this raid with the automated tests once it is ready
|
51428
| QC# |
Project |
Area |
| 51428 |
Delphi |
IDE\Code Editor\Help Insight |
| Description: |
Steps: |
[QC Short Description] REPRODUCIBLE Help Insight "Object Reference Not Set To An Instance of an Object"
[QC Description] I put together a relatively simple case that will give an Object Refererence Not Set To An Instance of an Object" error dialog box every time you hover over an identifier.
The same thing happens with many other symbols defined in the D3DX9 unit.
Code compiiles without error.
This has been around for a long time... QC Entry 51428
STACK TRACE IN COMMMENT. |
This uses DirectX code from the Clootie/Jedi library.
Load the project title Bug in the attached files.
In the main program, hover the mouse cursor over D3DXMatrixIdentity and you'll get an error dialog.
D3DXMatrixIdentity is an inline procedure declared in the D3DX9 unit. |
22343
| QC# |
Project |
Area |
| 22343 |
Delphi |
IDE\Form Designer |
| Description: |
Steps: |
[QC Short Description] F1 not working from embedded form-designer
[QC Description] Selecting a control on the embedded VCL Form designer and pressing the F1 button fails to display help for the selected control.
Applies only to the embedded designer! With the floating designer F1 still works as in previous versions QC Entry 22343
[10.0.2237.38180 ( 2/16/2006) : true ] [HelpUpdate] |
!. Start a Delphi with just the Win32 personality (with the default docked layout and the embedded designer).
1. Start a Win32 project.
2. Place a TButton on the main form.
3. Click on TButton so that it is selected.
4. Press F1.
In previous versions of Delphi (e.g. Delphi 5), help on TButton would be displayed. In Delphi 2006, nothing happens. |
44578
| QC# |
Project |
Area |
| 44578 |
Delphi |
IDE\Open Tools API |
| Description: |
Steps: |
[Windows Vista] [QC Short Description] IDE Crashes on shutdown with DLL expert loaded
[QC Description] When this very DLL export (attached) is loaded the IDE crashes on shutdown (the Windows Vista "Blabla has stopped working" dialog shows up). QC Entry 44578
|
Install on Windows Vista (note from QA: does not occur on Windows XP)
1) Compile the attached expert project or use the included DLL 1) Add DLL expert to the registry path HKEY_CURRENT_USER\Software\Borland\BDS\5.0\Experts using an string key such as TestExpert with a value of C:\<PathTo>\IDECodeFind2007CrashTest.dll 2) Start Delphi 2007 3) When completely started up, close the IDE using the main window caption bar X
-> EXP: IDE shuts down normally -> ACT: IDE crashes with this type of error (seen under the Delphi 2007 debugger):
--------------------------- Debugger Fault Notification --------------------------- Project D:\Borland\Delphi2007\bin\bds.exe faulted with message: 'access violation at 0x05ac6c0c: access of address 0x05ac6c0c'. Process Stopped. Use Step or Run to continue. --------------------------- OK ---------------------------
The crash happens after FinalizeWizard completes and the DLL is unloaded. The call stack at the time is like this with the top frames repeated many times: :77dcee57 ntdll.KiUserExceptionDispatcher + 0xf :77deb6a3 ; ntdll.dll :77dcee57 ntdll.KiUserExceptionDispatcher + 0xf :77deb6a3 ; ntdll.dll :77dcee57 ntdll.KiUserExceptionDispatcher + 0xf :77deb6a3 ; ntdll.dll :77dcee57 ntdll.KiUserExceptionDispatcher + 0xf :77deb6a3 ; ntdll.dll :77dcee57 ntdll.KiUserExceptionDispatcher + 0xf :2000a204 UnregisterModule + $20 :2000ac6e ; C:\Windows\SysWOW64\rtl100.bpl :77dfa664 ntdll.RtlDestroyQueryDebugBuffer + 0x100 :77deb8f2 ; ntdll.dll :77deb915 ; ntdll.dll :76a292c7 kernel32.ExitProcess + 0x15 :200078c9 @Halt0 + $C5 :00400000 ; C:\<IdePath>\bin\bds.exe |
| QC# |
Project |
Area |
|
Delphi |
IDE\VersionInfo |
| Description: |
Steps: |
IDE doesn't save version info for the localized project when the localized project for a project is present.
Clarify 672774 |
****UPDATED**** 1. I create a simple sample project (VCL forms application - Delphi for Win32) 2. I then choose Project | Languages | Add. I then choose to add French Canada. 3. I save when prompted. 4. I recompile the project when prompted. 5. I now have my project.frc in the project manager, and it compiles / works properly. 6. I then choose Project | Options and select 'Include version information in project.' 7. I can now modify the version information, such as set Major = 3. Then, File, Save all. 8. When I build the project.frc and go to view the properties on the built frc, I do not get the version info. 9. I set the same version informations on project.frc using the right-click context menu -> options. 10. If I save the project group, close it, re-open it (reopen the Project group, then activate Project.frc) and choose Project | Options, the 'Include version information in project' does appear, however, the right-click context menu of project.frc does not display the correct version information...
****ORIGINAL**** 1. I create a simple sample project (VCL forms application - Delphi for Win32) 2. I then choose Project | Languages | Add. I then choose to add French Canada. 3. I now have my project.frc in the project manager, and it compiles / works properly. 4. I then choose Project | Options and select 'Include version information in project.' 5. I can now modify the version information, such as set Major = 3. Then, File, Save all. 6. When I build the project.frc and go to view the properties on the built frc, I do not get the version info. 7. If I save the project group, close it, re-open it (reopen the Project group, then activate Project.frc) and choose Project | Options, the 'Include version information in project' is once again de-selected and all my changes are gone.
|
48947
| QC# |
Project |
Area |
| 48947 |
Delphi |
IDE\Class Completion |
| Description: |
Steps: |
[QC Short Description] Class completion duplicates code when invoked on certain classes
[QC Description] When invoked on some classes, class completion will duplicate code; usually what is located in the topmost private section.
This problem is present in build 2738, but not in 2728. QC Entry 48947
|
1. Start Delphi build 2738.
2. Open the attached dupunit.pas. No need to create a project first.
3. Move the cursor somewhere in the class and invoke Class Completion (Ctrl+Shift+C).
4. The expected behavior is that nothing should change, but everything in the private section is duplicated and class completion produces code that doesn't compile. |
50146
| QC# |
Project |
Area |
| 50146 |
Delphi |
IDE\Packages |
| Description: |
Steps: |
[QC Short Description] Project options dialog corrupts the list of DCR files in package DPK file.
[QC Description] The list of DCR files in the package DPK file gets "corrupted" to include duplicate entries, which in turn prevent the project from building. Manual editing of the DPK file can resolve the problem.
QC Entry 50146
|
0: First, copy the attached UNIT1.PAS and UNIT1.DCR to a folder on your system. (or use any other PAS/DCR pair that you have)
1: Launch RAD Studio
2: File/New Package - Delphi Win32
3: Right-click on package1.bpl in project manager, and "View Source". You'll see this at the head of the file.
package Package1;
{$R *.res}
{$ALIGN 8}
...
4: Project/Build Package 1 - this works just fine.
5: Project/Add to Project "Unit1.pas" (from step #0)
Note that the package "view source" (the DPK file) now looks like this:-
package Package1;
{$R *.res}
{$R 'dcrbug\Unit1.dcr'}
{$ALIGN 8}
...
6: Again, Project/Build Package 1 - this works just fine.
7: Open Project/Options dialog, and click "OK" to close: DPK file now looks like this
package Package1;
{$R *.res}
{$R 'dcrbug\Unit1.dcr'}
{$R 'dcrbug\Unit1.dcr'}
{$ALIGN 8}
...
Note: an additional line will be added each time you repeat this step!!
8: Again, Project/Build Package 1
EXPECTED: Builds ok.
ACTUAL: Build fails, with error:-
[DCC Error] E2161 Warning: Duplicate resource: Type 2 (BITMAP), ID 1; File C:\Users\Roddy\Documents\RAD Studio\Projects\dcrbug\Unit1.dcr resource kept; file C:\Users\Roddy\Documents\RAD Studio\Projects\dcrbug\Unit1.dcr resource discarded.
*NOTE* This should be a warning, but it's being treated like a fatal error. Your package has *not* built.
|
| QC# |
Project |
Area |
|
Delphi |
IDE\Packages |
| Description: |
Steps: |
When a file is added to a package project and there is a .dcr with the same base name as the file, it leads to duplicate .dcr's in the project causing duplicate resource errors. [this problem was introduced to Spacely post-RTM] |
0. Install Spacely and Cogswell [an important step, the latest Spacely only does not show the problem] 1. Unzip attachment to a directory 2. File | New Delphi Package 3. Project | Add To Project and select the Unit1.pas you unzipped in step 1 4. Go to Project | Remove From Project notice the list contains:
Unit1.dcr rtl Unit1 Unit1
5. Remove one of the Unit1s 6. Go to Project | Remove From Project and notice that the list is the same or there might now be two Unit1.dcr's
alternate steps to see the duplicate dcr's 1. Unzip attachment to a directory 2. File | New Delphi Package 3. Project | Add To Project and select the Unit1.pas you unzipped in step 1 4. Go to Project Manager and remove Unit1.pas from the project 5. Go to Project | View Source and notice two entries for Unit1.dcr,e.g. package Package1;
{$R *.res} {$R '..\test\Unit1.dcr'} {$R '..\test\Unit1.dcr'}
|
| QC# |
Project |
Area |
|
Delphi |
IDE\Packages\Installing Components |
| Description: |
Steps: |
[ACCESS VIOLATION]
[QC Short Description] Rapport d'incident automatisé
[QC Description] Violation d'accès à l'adresse 216D53B0 dans le module 'delphicoreide100.bpl'. Lecture de l'adresse 00000004.
I was trying to compile and install a component set designed for BDS2006. There are two packages. One runtime and one design time. The runtime package compiled OK. The design time complained about a component already in the design time package and proposed to remove the unit. I asked to see the details in the remove dialog box, then clicked OK to accept removing. The access violation occured when I clicked OK. QC Entry 42271 and also 42274
It looks like it is not related at all to the attached code. I reproduced with another project. I built a sample project. See attached file PackageCrash2622.zip.
Note: DO NOT DISTRIBUTE ATTACHED CODE !
QC 42271 - removed from Ref No so field testers cannot see the attached code
// Francois Piette Still there in 2671 Still in 2798, see QC51434 Still in 2825.9366_VCL_Update.8, see QC53376
|
Steps with the simple projects attached:
1. Launch the IDE 2. Close All 3. Unzip PackageCrash2622.zip in any folder 4. Open ProjectGroup1 from PackageCrash2622.zip 5. Build Package1 6. Install Package1 7. Build package2 => The IDE pops a dialog box up to let you remove Component1 Click OK to remove Component1 => ACCESS VIOLATION 8. Shutdown the IDE => Send report to Microsoft :-)
NOTE 7/17/07 - This no longer results in an AV. It causes an duplicate resource to be added to the project Source file. if you remove this duplicate, the file now builds fine. Note by F. Piette 05/08/2007 - Build 2770.8305 still experience duplicate resource added in the package
Step to reproduce with project mentionned in QC42271:
1. Unzip/Untar the attached source code 2. Open GrizzlyBaseD10.bdsproj 3. Build GrizzlyBaseD10.bpl first => It complains about GrizzlyBaseR10.bpl not found (normal !) 4. Build GrizzlyBaseR10.bpl (Should be OK) 5. Build GrizzlyBaseD10.bpl again => Complain about HotKeyMgr 6. Check "Show details" 7. Click OK => ACCESS VIOLATION
Note: DO NOT DISTRIBUTE GRIZZLYPACK ATTACHED CODE ! Note by F. Piette 05/08/2007 - Cannot reproduce this one with build 2770.8305
|
42177
| QC# |
Project |
Area |
| 42177 |
Delphi |
IDE\Desktop Layouts |
| Description: |
Steps: |
[QC Short Description] In classic undocked mode after you close last unit you will see gray window and if you try to close it using Ctrl+F4 you will get Access violation
[QC Description] Still exists in 2625. In classic undocked mode after you close last unit you will see gray window and if you try to close it using Ctrl+F4 you will get Access violation QC Entry 42177
|
1. Open IDE.
2. Switch IDE to Classic Undocked layout.
3. Create New VCL application.
4. Close every open unit unit you will gray window.
5. Press Ctrl+F4 and see access violation
Expected: After closing of last unit this window should disapear.
Actual : This gray window stay in screen and it looks quite bad. |
| QC# |
Project |
Area |
|
Delphi |
IDE\Translation Tools\Resource DLL Wizard |
| Description: |
Steps: |
[Nov 2007 Update] Resource DLL wizard does not work.
Error dialog with "There are no options" show up.
After error message, the RD wizard still active, but the project file does not contain any source files.
Note: BDS 2007 RTM (D2007 Update3) worked fine.
|
1. Create new VCL form / W32 application. save it. 2. Select "Project | Languages | Add.... 3. Error dialog with the following message.
=============== [Window Title] Error
[Content] There are no options for C:\Users\tarisawa\Documents\RAD Studio\Projects\Test\Project1.dproj ===============
|
21257
| QC# |
Project |
Area |
| 21257 |
Delphi |
IDE\Help |
| Description: |
Steps: |
[QC Short Description] Help needs to use Personality for Search Filter
[QC Description] Help is supposed to be helpful, I should not have to scroll massive lists of unrelated help just because the IDE doesn't bother to pass what personality should be used for the filter.
QC Entry 21257 [HelpUpdate] |
(Simple Example)
1, Open up any personality
2. Type some keyword like TObject
3. Hit F1
---- Expected Behavior I see TObject only for that Personality
(Annoying Example)
1. Open up any Personality
2. Type keyword like "Handle"
3. Hit F1.
--- I shouldn't have to scroll through 40 items that don't relate to my personality to find the "open" call I want.
|
| QC# |
Project |
Area |
|
Delphi |
IDE\Help |
| Description: |
Steps: |
No help found when clicking button in Project Page Options dialog |
New VCL app Project|Project page Options Click Help button |
43181
| QC# |
Project |
Area |
| 43181 |
Delphi |
IDE\Help |
| Description: |
Steps: |
[QC Short Description] Pressing F1 after creating a new project doesn't work
[QC Description] Pressing F1 after creating a new project gives the error "No help found for context" QC Entry 43181
|
1. Start IDE.
2. Using the mouse, select File, New, VCL Forms Application - Delphi for Win32. Do not do anything using the mouse after that.
3. Wait until a new VCL Forms app has been created, press F1.
EXP: Proper help on how to design a VCL Forms app.
ACT: No help found for context |
| QC# |
Project |
Area |
|
Delphi |
IDE\Help |
| Description: |
Steps: |
Build Events shows up No help found for context.
Additional enabling Help Debug results in the following message in the Help Viewer: [Help2] CanShowALinkEx ALink = BDS5:13751 ANameSpace = borland.bds5 AIndex = 2 Result = 0 |
+ Install RTM product + Create a VCL Project + Click Project | Options | Build Events + Click the Help button //exp: Information on Build Events worked //act:
--------------------------- Error --------------------------- No help found for context. --------------------------- OK Details >> ---------------------------
<details are attached> ---- ADDITIONAL ---- Used Chris B's help tool. The following information was found:
No help found for "hcBuildEventPropSheet"
No help found for "hcBuildEventEditor"
No help found for "bds5:13751"
Interestingly enough, putting in: bds5:13752 results in getting back a help page of: ms-help://borland.bds5/devcommon/buildconfigurationmanager_xml.html
[Help2] CanShowALinkEx ALink = BDS5:13751 ANameSpace = borland.bds5 AIndex = 2 Result = 0
|
| QC# |
Project |
Area |
|
Delphi |
IDE\Help |
| Description: |
Steps: |
| Help button for Pre-Build Event dialog brings up error: No help found for context. |
1. new VCL app for win32 2. Project | Options 3. Click on page build events 4. Click on Edit... 5. in Pre-Build Event dialog click help button
//exp: help shows up //act. error message |
47408
| QC# |
Project |
Area |
| 47408 |
Delphi |
IDE\Refactoring\Rename |
| Description: |
Steps: |
[QC Short Description] Rename refactoring does not work for non-class function parameters
[QC Description] Renaming of a Parameter that is not part of a class only renames the parameter in the implementation section but does not rename it in the declaration of the procedure/function. QC Entry 47408
|
1. start Delphi for Win 32. 2. create a new VCL application. 3. in the interface section of the form's unit (and outside of the class), declare this function (just above the Implementation keyword):
procedure DoThat( Param1: Integer );
4. in the implementation of the unit, create the following function:
procedure DoThat( Param1: Integer ); begin end;
5. right-click on the Param1 parameter from the declaration in the interface section. 6. invoke the Rename refactoring and change the name to Param2. 7. the name of the parameter is changed in the implementation section, but not in the interface. 8. invoking Rename on Param1 from the implementation for the procedure will also not rename the parameter in the declaration of the procedure.
|
48365
| QC# |
Project |
Area |
| 48365 |
Delphi |
IDE\Start Page |
| Description: |
Steps: |
[QC Short Description] When selecting a Newsfeed, the displayed dates of items are about a month in the future
Example: CodeGear Developer Days June 2007 - The Replays C++Builder, Delphi 2007 for Win32, Delphi for PHP and InterBase technical sessions Posted on: Sunday, 29 July 2007
CodeGear - Delphi for Win32 - TRY IT NOW! eDM for Delphi 2007 for Win32 Posted on: Sunday, 29 July 2007 QC Entry 48365
|
Open the IDE. Click on 'Select Newsfeed' in the top right Select 'Delphi' //note the dates displayed on the items reference the dates on the public website using regular browser //note the date difference
|
| QC# |
Project |
Area |
|
Delphi |
Install |
| Description: |
Steps: |
[STRING CORRUPTION] Message characters when I canceled Install were corruption. (InstallAware Wizard) |
1. Run Setup.exe 2. Click Cancel Button At once (InstallAware Wizard) |
51030
| QC# |
Project |
Area |
| 51030 |
Delphi |
Install |
| Description: |
Steps: |
[QC Short Description] ESD Help installer & 7zip files installed to bad location - prevents network install
[QC Description] When the ESD installer stub is used to install Highlander, it downloads the instal 7zip files to a location of the user's choice, then unzips them into the Documents and settings\all users directory and continues installation from there.
With the breakout of the help installer into a separate procedure, this is no longer true of the help install - The installer and 7zip files for the help system are downloaded to c:\documents and settings instead.
Because of this, If I use the install image on the network to install to several workstations, each of the workstations must face a lengthy download of the help system files.
There may be a way to make the help install automatically if the files are copied to the network/external hd, but if there is it is not obvious, and really should not be necessary.
Only obvious "solution" is to copy the Help install files from documents and settings to each workstation prior to running install. Install should work without such hacks.
QC Entry 51030
|
Download install.exe to a network or external drive.
Run install.
Attach a different workstation to the network or external drive
Run install from second workstation
Exp: Install for second workstation will use data downloaded to the network or external hd and will not need to download any files from the internet.
Act: RAD Studio is installed without downloading additional files from the internet, but the Help install files are not available to the second workstation, so it spends an additional 3.5 hours downloading them (actual time from my workstation at work). |
| QC# |
Project |
Area |
|
Delphi |
Install |
| Description: |
Steps: |
missing Intraweb_90_100.bpl and IntrawebDB_90_100.bpl under System32
[Please check #255286] |
|
| QC# |
Project |
Area |
|
Delphi |
Install |
| Description: |
Steps: |
[Spacely+Highlander Update] - regression
Exception when dropping objects (connection or table) to the form.
System.IO.FileNotFoundException: Could not load file or assembly 'Borland.VclDbExpress, Version=11.0.5000.0, Culture=neutral, PublicKeyToken=91d62ebb5b0d1b1b' or one of its dependencies. The system cannot find the file specified. File name: 'Borland.VclDbExpress, Version=11.0.5000.0, Culture=neutral, PublicKeyToken=91d62ebb5b0d1b1b' at Borland.Data.Explorer.DataExplorerIDEImpl.CreateDBXConnection(TreeNode aNode) at Borland.Data.Explorer.DataExplorerIDEImpl.DragDrop(Object Sender, ItemDragEventArgs Event) at Borland.Data.Explorer.DataExplorerControl.a(Object , ItemDragEventArgs ) at System.Windows.Forms.TreeView.OnItemDrag(ItemDragEventArgs e) |
Install Spacely + Highlander - using 'old keys' ---Update3 Run DE drag and drop any table from DE to the form
Borland.VclDbExpress should have been included in the update for dataexplorer functionality to work. |
| QC# |
Project |
Area |
|
Delphi |
Install |
| Description: |
Steps: |
Help Update
Add ability to detect and only install teh Update if machine has Update 3 or Highlander installation.
|
|
| QC# |
Project |
Area |
|
Delphi |
Install |
| Description: |
Steps: |
| When choosing View, Data Explorer from a fresh installation of RAD Studio 2007 R2 Architect, Data Explorer shows Object not set to an instance of an object. And there's no Ado.Net data providers shown in Data Explorer. |
1. Install RAD Studio 2007 R2 Architect with all features on Windows XP 2. Start IDE. 3. Choose View, Data Explorer
EXP: No errors ACT: Object not set to an instance of an object. And there's no Ado.Net data providers shown in Data Explorer.
Alternative steps
RAD Studio 2007 RTM Arch on Windows XP 1. Select Modify, Repair or Uninstall from RAD Studio menu on Windows XP (assumes existing installation) and that all features are installed. 2. Select Repair, and click Next and complete the process. 3. Start IDE. 4. Choose View, Data Explorer
EXP: No errors ACT: Object not set to an instance of an object. And there's no Ado.Net data providers shown in Data Explorer.
|
| QC# |
Project |
Area |
|
Delphi |
Install |
| Description: |
Steps: |
| Remove License.txt file from the install for Highlander |
In DeXter we are shipping a License.rtf and a License.txt. Pubs is requesting we no longer ship the License.txt file. |
| QC# |
Project |
Area |
|
Delphi |
Install |
| Description: |
Steps: |
| Check for Update 3 shows up on a Highlander RTM build and should not. |
+ Bring up a Highalnder RTM build + Change to swintern to get "akami" like install + click through the install //exp: no notification that the Help could not be found and that users should make sure that they are installing over an Update 3 version //act: notifiction occurs.
|
| QC# |
Project |
Area |
|
Delphi |
Install |
| Description: |
Steps: |
Help Update Install AND Uninstall
It closes without any notification. Shouldnt we get a dialog with 'Finish' or Install Completed' for instance ?
Uninstall also do not notify when is completed. |
|
| QC# |
Project |
Area |
|
Delphi |
Install |
| Description: |
Steps: |
| when trying to upgrade to cogswell from spacely RTM using the latest delivery you don't get to enter a serial number when using the "upgrade" option of the installer. |
1. install spacely RTM 2. run \testing.IA.11.0.2655.5955.1 setup.exe 3. chose upgrade 4. next ......... |
| QC# |
Project |
Area |
|
Delphi |
Install |
| Description: |
Steps: |
[Pro] dbxmss30.dll of MSSQL dbExpress driver is not found in Professional edition. In deploy.htm,this file is written that it can distribute. But, this file is not found.
|
|
| QC# |
Project |
Area |
|
Delphi |
Install\Install Execution |
| Description: |
Steps: |
| [VCL Patch] The patch install (not injection) hangs on Vista at the "validating install" phase. |
Run the setup for the VCL patch. At "validating install", the setup will not progress; the dialog is responsive, but the status message will not update, and if logging is enabled, logging will stop. |
| QC# |
Project |
Area |
|
Delphi |
Install\User Interface |
| Description: |
Steps: |
| Word-wrap on the License Agreement page isn't quite right. It looks like line length idoesn't take the scrollbar into account |
1. Run install; proceed to "License Agreement" page 2. Note these lines: NOTICE: THIS BORLAND SOFTWARE PRODUCT (TOGETHER WITH ITS ACCOMPANYING.... |
| QC# |
Project |
Area |
|
Delphi |
Install\Registry settings |
| Description: |
Steps: |
About box show incorrect update version: It says "october" instead of "november". See screen dump.
|
|
| QC# |
Project |
Area |
|
Delphi |
Install\Files |
| Description: |
Steps: |
| welcomepage\ASPNetDemos.htm should be removed; it has obsolete references and isn't used anymore. |
Check directory. |
| QC# |
Project |
Area |
|
Delphi |
Install\Register UI |
| Description: |
Steps: |
Make sure sanctuary phone list is updated with DevCo phone numbers prior to Highlander release
CodeGear now... |
|
| QC# |
Project |
Area |
|
Delphi |
Database |
| Description: |
Steps: |
| [November Patch] An application with a SQLConnection fails to build with an error File not found: 'DBXClentDataSetStorage.dcu'. |
Install November patch. New VCL Win32 app. Drop a TSQLConnection, build. Compiler error results. |
| QC# |
Project |
Area |
|
Delphi |
Database |
| Description: |
Steps: |
According to documents and datasheets, only 1 User / 4 Connections are available on Blackfish SQL Desktop Edition, which comes with RAD Studio 2007 Professional Edition.
But, in fact, we can make 8 connections using client application. Then, if we try to create 1 more connection, AV occurs.
This is As Designed?
sshaughnessy: I looked at this and was able to launch 8 DataExplorer before getting the proper error message. The code is giving 4 more connections than it should. 1 user gets 4 connections. I don't know what the AV is from. Need a reproducable test case.
Tomohiro Takahashi: sorry, AV means error dialog box. |
TDBXHighlanderBugsSuite.Managed.exe connection=BLACKFISHSQLCONNECTION -s:oTestRaid_255287 (see comment on this testcase)
-OR-
1) Install RAD Sutdio 2007 Professional Edition
2) start Blackfish SQL
3) build client application which creates one connection
4) shutdown IDE
5) run 9 applications at the same time |
26179
| QC# |
Project |
Area |
| 26179 |
Delphi |
Database\Fields Editor |
| Description: |
Steps: |
[QC Short Description] SortFields Editor failure (on move one-by-one field)
[QC Description] On click over the button to move one field from one side to another side ... the field disappear on the editor form.... QC Entry 26179
[Nov Update] |
Steps: New Project (VCL Forms Application) ... Place one SQLConnection on form .... Configure the connetion (in my case for oracle) ... connect to database ... place one SQLDataSet ... link the SqlDataSet.SQLConnection To SQLConnection ... set commandType to clTable ... in CommandText select the table .... in SortFieldNames, click in button to call the editor ... in the editor, try to add one field to "Order by fields:" .... |
49558
| QC# |
Project |
Area |
| 49558 |
Delphi |
Database\Decision Cube Controls |
| Description: |
Steps: |
[QC Short Description] Applications that use Decision Cube do not compile in D2007
[QC Description] It is a discusion in the newsgroups.borland.com borland.public.install.delphi:18804 QC Entry 49558
|
Import and compile application that uses decision cube |
| QC# |
Project |
Area |
|
Delphi |
Database\Drivers\InterBase |
| Description: |
Steps: |
The DBX4 InterBase driver is unable to cope with the following query:
SELECT * from test
where * represents 206 integer columns
When the Active property is set to true, an error message "unassigned code" is returned. Normally InterBase returns this when some buffer has overflowed. The dbx driver would need to increase the size of this buffer in order for the query to execute successfully. IBConsole can successfully run this query.
Also DBX3 appears to be able to successfully run this query |
TDBXHighlanderBugsSuite.Managed.exe connection=ibconnection -s:oTestRaid_255708
or
TDBXHighlanderBugsSuite.Native.exe connection=ibconnection -s:oTestRaid_255708
or
1. Connect a TSQLConnection to an InterBase database of your choice. 2. Create the following table from the create statement attached. 3. Connect up a TSQLQuery component to the TSQLConnection and set the SQL property to:
SELECT * from test
The unassigned code error is returned. |
| QC# |
Project |
Area |
|
Delphi |
Database\DBExpress |
| Description: |
Steps: |
OracleW / Intl. Oracle server
CLOB field does not use UNICODE enabled field type. TDBXValu.GetWideString method cause error at truntime.
Under Oracle server with Intl. setting, All character type filed (include CLOB, CHAR and VARCHAR) are able to contain any character.
We have to provide GetWideString method for these field avoiding lose Intl. characters. |
TDBXBugsSuite.Native.exe connection=oracleintlconnection -s:oTestRaid_255910
|
659
| QC# |
Project |
Area |
| 659 |
Delphi |
Database\DBExpress |
| Description: |
Steps: |
[QC Short Description] Interbase driver issuing isc_commit_retaining for select statements
[QC Description] Even with CommitRetain set to false, the driver is issuing isc_commit_retaining for select statements. I have a simple project that opens a parameterized query and then does an insert, with an SQLMonitor to show the statements, as well as dumping the values of the connection params right after connection. Here is the debugging output:
ODS: sql: INTERBASE - isc_attach_database ODS: SQLConnection1.Params (13 elements) ODS: ...<DriverName=Interbase> ODS: ...<BlobSize=-1> ODS: ...<CommitRetain=False> ODS: ...<Database=copland:\interbasedata\maestrocfs.gdb> ODS: ...<ErrorResourceFile=> ODS: ...<LocaleCode=0000> ODS: ...<Password=maestro> ODS: ...<RoleName=RoleName> ODS: ...<ServerCharSet=> ODS: ...<SQLDialect=3> ODS: ...<Interbase TransIsolation=ReadCommited> ODS: ...<User_Name=maestro> ODS: ...<WaitOnLocks=True> ODS: sql: INTERBASE - isc_dsql_allocate_statement ODS: sql: INTERBASE - isc_start_transaction ODS: sql: select * from TRADES where TRADE_ID = ? ODS: sql: INTERBASE - isc_dsql_prepare ODS: sql: INTERBASE - isc_dsql_describe_bind ODS: sql: INTERBASE - isc_dsql_execute ODS: sql: INTERBASE - isc_dsql_fetch ODS: sql: INTERBASE - isc_commit_retaining ODS: sql: INTERBASE - isc_dsql_free_statement ODS: sql: INTERBASE - isc_start_transaction ODS: sql: INTERBASE - c_dsql_allocate_statement ODS: sql: insert into "TRADES" ("TRADE_ID", "CLIENT_ID", "PRODUCT_ID", "ORG_ID", "PERS_ID", "USER_ID", "TRADED_ON", "ENTERED_ON", "PRINCIPAL", EVENUE_GROSS", "TRADE_STAT_ID") values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) ODS: sql: INTERBASE - isc_dsql_prepare ODS: sql: INTERBASE - isc_dsql_sql_info ODS: sql: INTERBASE - isc_vax_integer ODS: sql: INTERBASE - isc_dsql_describe_bind ODS: sql: INTERBASE - isc_dsql_execute ODS: sql: INTERBASE - isc_dsql_free_statement ODS: sql: INTERBASE - isc_dsql_free_statement ODS: sql: INTERBASE - isc_commit_transaction [Nov Update] |
|
| QC# |
Project |
Area |
|
Delphi |
Database\DBExpress |
| Description: |
Steps: |
OracleW driver.
GetIndexColumns metadata function of DBX cause AV if dbxoraW30 driver.
Error message is: Project TDBXBugsSuite.Native.exe raised exception class EAccessViolation with message 'Access violation at address 02AB0000 in module 'dbxoraW30.dll'. Write of address 02AB0000'.
|
TDBXBugsSuite.Native.exe -s:oTestRaid_255728
Project TDBXBugsSuite.Native.exe raised exception class EAccessViolation with message 'Access violation at address 02AB0000 in module 'dbxoraW30.dll'. Write of address 02AB0000'.
|
| QC# |
Project |
Area |
|
Delphi |
Database\DBExpress |
| Description: |
Steps: |
OracleW / Intl. Oracle server
Where clause is not able to use parameterized value if a target field is "Char" type.
VarChar works fine.
--------------------------- Project TDBXBugsSuite.Native.exe raised exception class ETestFailure with message 'No affect'.
|
TDBXBugsSuite.Native.exe connection=oracleintlconnection -s:oTestRaid_255913 |
| QC# |
Project |
Area |
|
Delphi |
Database\DBExpress |
| Description: |
Steps: |
OracleW / Intl. Oracle server
DBXReader.Size does not match with field's size.
For example, DBXReader.Size should return 11 for Char(10) field, but the shipping driver return 22.
--------------------------- Project TDBXBugsSuite.Native.exe raised exception class ETestFailure with message 'Size: exp: 11. act: 22'.
|
TDBXBugsSuite.Native.exe connection=oracleintlconnection -s:oTestRaid_255911
|
| QC# |
Project |
Area |
|
Delphi |
Database\DBExpress\TSQLConnection |
| Description: |
Steps: |
Customer is reporting that the TSQLConnection component seems to have a memory leak. if dbxdrivers.ini and dbxconnections.ini files are not available.
In TSQLConnection.DoConnect TDBXConnection.GetConnectionFactory raises exception when ini files are not there, TDBXMemoryConnectionFactory is then created but never freed.
This seems to be similar to QC 42824 and also RAID:248340
|
1. Create a new app. 2. Setup a SQLConnection to a interbase table 3. Add a Open and Close on FormCreate and FormClose 4. Set ReportMemoryLeaksOnShutDown to true.
procedure TForm7.FormClose(Sender: TObject; var Action: TCloseAction); begin SQLConnection1.Close; end;
procedure TForm7.FormCreate(Sender: TObject); begin SQLConnection1.Open; end;
initialization ReportMemoryLeaksOnShutdown := true;
Results:
1 - 12 bytes TDbxClosedByteReader x1 13 - 20 bytes TdbxMemoryConnectionFactory x1 37 - 44 bytes TdbxContext x 1 61 - 68 bytes TWideStringList x2 |
| QC# |
Project |
Area |
|
Delphi |
Database\dbExpressCore |
| Description: |
Steps: |
| When a timestamp is inserted in a native application into a blackfish database using the data generator, hours does not always match when read back through a Reader. |
DataAccess.Native.exe connection=blackfishsqlconnection -s:TestReadWriteAll
|
| QC# |
Project |
Area |
|
Delphi |
Database\dbExpressCore |
| Description: |
Steps: |
Cannot write Oracle NClob to database.
Trying to write NClob produces: TDBXError with message 'ORA-22275: invalid LOB locator specified
This was busted out per request from Raid 245660. |
See TDBXBugsSuite.Native.exe connection=oracleconnection -soRaid_253754 |
| QC# |
Project |
Area |
|
Delphi |
Database\dbExpressCore |
| Description: |
Steps: |
Cannot write Oracle NChar, or NVarchar to database.
Trying to write NChar or NVarchar produces the following exception: TDBXError with message 'ORA-01036: illegal variable name/number
|
Please open the TDBXBugs suite and look at test method for this RAID entry. TDBXBugs suite is located: http://dtg-svn.borland.com/svn/bdstests/trunk/UnitTest/projects/database/dbexpress/Bugs
TDBXBugsSuite.Native.exe connection=oracleconnection -s:TestRaid_245660 |
| QC# |
Project |
Area |
|
Delphi |
Database\Data Explorer |
| Description: |
Steps: |
Database|Modify Database menu off the database node has trouble finding resources
[Nov Update] |
Open a Blackfish SQL employee database select the Database|Modify Database menu Error occurs:
System.Resources.MissingManifestResourceException: Could not find any resources appropriate for the specified culture or the neutral culture. Make sure "Borland.Data.Explorer.ModifyDatabaseDialog.resources" was correctly embedded or linked into assembly "Borland.Data.Explorer" at compile time, or that all the satellite assemblies required are loadable and fully signed. at System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo culture, Boolean createIfNotExists, Boolean tryParents) at System.Resources.ResourceManager.GetResourceSet(CultureInfo culture, Boolean createIfNotExists, Boolean tryParents) at System.ComponentModel.ComponentResourceManager.FillResources(CultureInfo culture, ResourceSet& resourceSet) at System.ComponentModel.ComponentResourceManager.FillResources(CultureInfo culture, ResourceSet& resourceSet) at System.ComponentModel.ComponentResourceManager.FillResources(CultureInfo culture, ResourceSet& resourceSet) at System.ComponentModel.ComponentResourceManager.ApplyResources(Object value, String objectName, CultureInfo culture) at System.ComponentModel.ComponentResourceManager.ApplyResources(Object value, String objectName) at Borland.Data.Explorer.ModifyDatabaseDialog.InitializeComponent() in c:\Projects\d11\tp\database\internal\src\cs\borland\dbtools\explorer\DatabasePropertiesDialog.cs:line 59 at Borland.Data.Explorer.ModifyDatabaseDialog..ctor(ConnWrapper conn) in c:\Projects\d11\tp\database\internal\src\cs\borland\dbtools\explorer\DatabasePropertiesDialog.cs:line 25 at Borland.Data.Explorer.DataExplorerControl.miModifyDatabase_Click(Object sender, EventArgs e) in c:\Projects\d11\tp\database\internal\src\cs\borland\dbtools\explorer\DataExplorerControl.cs:line 2324 at System.Windows.Forms.MenuItem.OnClick(EventArgs e) at System.Windows.Forms.MenuItem.MenuItemData.Execute() at System.Windows.Forms.Command.Invoke() at System.Window |
| QC# |
Project |
Area |
|
Delphi |
Database\Data Explorer |
| Description: |
Steps: |
"Confirm Password:" lable of Database|Change Password dialog is not alligned properly.
[Nov Update] |
Open a Blackfish SQL employee database select the Database|Change password
"Confirm Password:" overlaps the field to the right.
|
| QC# |
Project |
Area |
|
Delphi |
Database\Data Explorer |
| Description: |
Steps: |
Change password encounters exception.
[Nov Update] |
Open a Blackfish SQL employee database select the Database|Change password Change password and hit ok. Exception occurs:
See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text ************** System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index at System.Collections.ArrayList.get_Item(Int32 index) at Borland.Data.DataStore.DataStoreParameterCollection.get_Item(Int32 index) at Borland.Data.DataStore.DataStoreParameterCollection.GetParameter(Int32 index) at System.Data.Common.DbParameterCollection.get_Item(Int32 index) at Borland.Data.Explorer.ChangePasswordDialog.btnOK_Click(Object sender, EventArgs e) in c:\Projects\d11\tp\database\internal\src\cs\borland\dbtools\explorer\ChangePasswordDialog.cs:line 128 at System.Windows.Forms.Control.OnClick(EventArgs e) at System.Windows.Forms.Button.OnClick(EventArgs e) at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ButtonBase.WndProc(Message& m) at System.Windows.Forms.Button.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
|
| QC# |
Project |
Area |
|
Delphi |
VCL |
| Description: |
Steps: |
(Patch3)
After apply Patch on Spacely RTM, Running application will cause IDE shrink size even thought IDE still in Maximize mode. Try to resize IDE, the mosue cursor behave strange, please see steps |
1. Install Spacely RTM 2. Start IDE 3. File | New | VCL Application 4. Run // notice: when IDE switch to debug mode, IDE size do not change 5. Close IDE 6. Install Patch3 7. Start IDE 8. File | New | VCL Application 9. Run // notice this time, IDE change the size, even window still show "Maximize" button 10. Use mouse to resize IDE // mouse cursor position JUMP to Form Designer
note: without running application, just change IDE layout will reproduce this problem |
| QC# |
Project |
Area |
|
Delphi |
VCL |
| Description: |
Steps: |
| Shown dialog will show in TaskManager in Application tab on Vista |
1. File | New | VCL Application 2. drop a TButton and TColorDialog 3. double click Button1 for OnClick event 4. add code as: ColorDialog1.Execute;
5. Run, click the Button // ColorDialog show 6. run TaskMan 7. click Application tab // there is an item name "color", you can max/min/kill it.
|
52256
| QC# |
Project |
Area |
| 52256 |
Delphi |
VCL\Core VCL Classes\TApplication |
| Description: |
Steps: |
Taskbar button is not hidden when the MainForm is hidden and MainFormOnTaskbar is False.
Regression. |
* File New VCL Application * Drop a button on the form * In the OnClick handler, enter "Hide;" * View | Project Source * Set Application.MainFormOnTaskbar := False; * Run, click on the button // Exp: The taskbar button is hidden // Act: The taskbar button is still visible |
51831
| QC# |
Project |
Area |
| 51831 |
Delphi |
VCL\Core VCL Classes\TWinControl |
| Description: |
Steps: |
[QC Short Description] Edit, Memo, ComboBox, ... context menus are not displayed anymore
[QC Description] The fix for QC 42752 broke the default context menus for TEdit, TMemo, TComboBox and all other windows controls with a default popup menu. QC Entry 51831
|
1. Create a new VCL application
2. Drop a TEdit on the form
3. Start the application
4. Right click on the edit
Expected:
The Cut/Copy/Paste/Delete popup menu appears
Actual:
Nothing happens because the "Exit" in the TWinControl.DefaultHandler stops the processing of WM_CONTEXTMENU |
46134
| QC# |
Project |
Area |
| 46134 |
Delphi |
VCL\Dialog Controls\TOpenDialog |
| Description: |
Steps: |
[QC Short Description] TOpenDialog under Vista Breaks doShareAware
[QC Description] If you are running Vista, and use the TOpenDialog, and rely on the ofShareAware option, this is broken with Delphi 2007.
If you try to open a file that is in use, under Vista, with ofShareAware set to true, you get a dialog showing "Not implemented".
This can be tracked down to the code in Dialogs.pas:
1 - At the beginning of TOpenDialog.DoExecute, if Vista is being used, wrappers around the new FileDialogs are used 2 - These wrappers are created, and there properties assigned from the standard TOpenDialog (which skips OnShareViolation) 3 - The code in TFileDialogEvents.OnShareViolation checks to see if OnShareViolation is assigned and, if not, results in E_NOTIMPL
The sum of these parts is that, if you use a TOpenDialog, even with ofShareAware set, you will be completely unable to select in-use files. QC Entry 46134
|
Create an application with a TOpenDialog and a TButton.
Set TOpenDialog.Options.foShareAware to True
In the button's click handler, call OpenDialog.Execute
Run the program
Click the Button
Try to select a file that would normally raise a share violation
Expected: Select the file, ignoring the share violation
Actual: A warning dialog is displayed with the file name followed by "Not implemented" |
| QC# |
Project |
Area |
|
Delphi |
VCL\Standard Controls\TLabel |
| Description: |
Steps: |
Vista / Aero / DBCS
Under Vista / Aero Tlabel on GlassFrame does not draw correctly if a caption contains DBCS character.
See attached screen shot.
TSpeedButton has a same problem. |
See attached project and screen shot on Vista/Aero |
51845
| QC# |
Project |
Area |
| 51845 |
Delphi |
VCL\Standard Controls\TMainMenu |
| Description: |
Steps: |
[QC Short Description] TMainMenu not painted in form designer on Vista with Standard or Classic scheme
[QC Description] On Vista (x64) the TMainMenu is not painted in the form designer if the scheme is Standard of Classic. Not Painted means the space for the menu is reserved, but you see at the position where the menu should appear what was at this position before you switched to the form designer. The same issue exists for VCL.NET projects.
With the Aero or Vista Basic scheme or with D2007 Update 1 on W2k everything is okay.
I've attached an example project and two images. QC Entry 51845
|
- on Vista (x64) select the color scheme "Standard" or "Classic"
- start Highlander
- open the example project (or create a new VCL Forms Application, add a TMainMenu and add some items)
expected:
- the main menu with the items is visible
actual:
- the main menu is not visible -> see image QC*MainMenuInDesignerWithVistaStandard.png
- close Highlander (otherwise QC 49128 (RAID: 252631) "Switching Windows designs may destroy the IDE layout" would occur)
- switch the color scheme to "Vista Basic" or "Aero"
- start Highlander
- open the example project (or create a new VCL Forms Application, add a TMainMenu and add some items)
expected:
- the main menu with the items is visible
actual:
- the main menu with the items is visible (as expected) -> see image QC*MainMenuInDesignerWithVistaAero.png |
52671
| QC# |
Project |
Area |
| 52671 |
Delphi |
VCL\Standard Controls\TMainMenu |
| Description: |
Steps: |
Under Vista with Theme, if TMenuItem has DBCS character in caption, and the menu item has a bitmap, Unexpected garbage characters are displayed.
Spacely/Cogswell works fine.
See attached bitmap.
255408-XPCompatible-mode is what I expected. 255408-Vista is actual result.
Some rare case, The application cause AV.
[See. 255411] |
|
| QC# |
Project |
Area |
|
Delphi |
Debugger\Stepping |
| Description: |
Steps: |
If you have "minimize on run" selected in Tools | Options | Environment Options and try to debug a program with two breakpoints set, the IDE stops on first breakpoint but when you press F9 to stop on the next breakpoint the IDE does not maximize but remains down on the taskbar.
You must then click on the taskbar icon in order to bring up the IDE.
|
1. Extract attached files and open up the project in Rad Studio. 2. In Rad Studio, select Tools | Options | Environment Options and select "Minimize On Run". 3. In MinimizeU.pas, place a breakpoint on line 31 and line 37. 4. Hit F9 to launch the app from within the IDE. 5. Click the button. 6. First breakpoint is hit so hit F9 again to run the app to the next breakpoint.
exp: IDE should maximize and cursor should be at line 37. act: IDE remains minimized. |
| QC# |
Project |
Area |
|
Delphi |
Debugger\CPU |
| Description: |
Steps: |
| After closing and reopening the CPU view, attempting to use the main IDE window to search in either the disassembly or dump panes causes an access violation |
Create a delphi win32 console app F8 to step View | Debug Windows | CPU Windows | Entire CPU Focus either the dump pane or the disassembly pane Seelct Search | Find from the main IDE menu Close the CPU Search bytes dialog
Close the CPU view View | Debug Windows | CPU Windows | Entire CPU to reopen it Focus either the dump pane or the disassembly pane Seelct Search | Find from the main IDE menu
Exp: the Enter Search Bytes dialog comes up Act: Access violation |
42695
| QC# |
Project |
Area |
| 42695 |
Delphi |
Internet |
| Description: |
Steps: |
[QC Short Description] CGI WebService on Windows Vista / IIS 7.0 Fails
[QC Description] I tried to register a CGI WebService on Windows Vista / IIS 7.0 and the fowlling error appears :
HTTP 502.2 - Bad Gateway
If this WebService is converted into ISAPI WebService, it works fine. QC Entry 42695 |
One hack to workaround this is to turn off IO checks here:
TCGIApplication.Run; begin ... + {$I-} Reset(Input); {$I+} + IOResult; ... end
I've verified this hack at least lets the CGI startup and run without the mentioned 502 error, but this probably isn't the best fix. For more discussion/steps see: http://qc.borland.com/wc/qcmain.aspx?d=42695
---- cwchua's workaround: Add VistaCGIApp.pas to a CGI application and it would work on Vista. I've attached VistaCGIApp.pas to this RAID.
Note that one web action item needs to have it's default property enabled. Otherwise, if there are no PathInfo matches, the CGI would still return 502.2 on Vista.
|
15265
| QC# |
Project |
Area |
| 15265 |
Delphi |
Internet\XML\Data Binding |
| Description: |
Steps: |
[QC Short Description] IXMLNode converts xs:boolean to False where it should be false
[QC Description] I generated an interface from an XML schema. The type type="xs:boolean" creates a boolean property in the interface.
When I create an XML document from this interface the boolan values are set to False where this should be false.
see also http://www.w3.org/TR/xmlschema-2/#boolean QC Entry 15265
|
(see attached project)
- Create an XSD with an attribute type="xs:boolean"
- Use the databinding wizard to create an interface
- create an XML document from the interface |
| QC# |
Project |
Area |
|
Delphi |
Internet\XML\Data Binding |
| Description: |
Steps: |
| Duplicate property getters and declarations in binding produced from Microsoft.Build.Core.xsd |
Create a new Delphi app. File | New | Other | Xml | Xml Data binding Point at c:\windows\microsoft.net\framework\v2.0.50727\MSBuild\Microsoft.Build.Core.xsd Finish the wizard so you get Microsoft.Build.Core.pas Project | Compile. -- errors because of duplicate getters and prop decls. |
| QC# |
Project |
Area |
|
Delphi |
Internet\XML\Data Binding |
| Description: |
Steps: |
| Exception when clicking on elements of "Schema Components" |
Create a Delphi project. File | New | Other | Xml | Xml Data Binding Find a schema file. Next Click on any schema component (complex or simple type) -- exception (something about 'has no single text node') |
47225
| QC# |
Project |
Area |
| 47225 |
Delphi |
Compiler |
| Description: |
Steps: |
[QC Short Description] Compilation 7 times slower after installing update 1!
[QC Description] After installing update 1 there is a significant delay after selecting |compile project".
In Original version everything works fine. After some changes in a large project (3mln lines) compilation starts immediately and completes in about 20 sec.
After installing update 1 it takes 155 second. After selecting "compile project" processor utilization hits 100% and IDE hangs for 1 minute before anything in compile window happens.
I run Vista on 2 dual core Xeon processors and 4GB RAM. QC Entry 47225
|
Load large project.
Change some code and select Compile Project.
|
52358
| QC# |
Project |
Area |
| 52358 |
Delphi |
Compiler\Delphi\Code Generation/Optimization |
| Description: |
Steps: |
[QC Short Description] Please include RTTI informations for non-monotonous enums
[QC Description] if an enum type is defined with explicit ordinalities that are non contiguous, the runtime type information of any published property of that enum type is lost.
see the Steps for a code that demonstrate the problem.
Improving RTTI to support such kind of enum would help component builders to provide directly editable enum properties in components at designtime, or improve the storage / loading of persistent classes with generic storage classes such as Jedi JvAppStorage.pas
QC Entry 52358
|
Compile and run the attached program below.
See the following output.
FAIL #1 - Visible Property Missing in TMyClass
See that this message appears for TMyClass which involves an enum with an assigned ordinal value. Also that the for the similar class TMyOtherClass, a fail message is not produced, the only difference being that the enum type used there does not specify an ordinal value for any of its elements.
program BTS255479;
{$APPTYPE CONSOLE}
uses SysUtils, Classes, TypInfo;
type TMyInvisibleEnum = (iefoo = 1, iebar, ieboo, iecar);
TMyVisibleEnum = (vefoo, vebar, veboo, vecar);
TMyClass = class(TPersistent) private FMissMe: TMyInvisibleEnum; published property MissMe:TMyInvisibleEnum read FMissMe write FMissMe; end;
TMyOtherClass = class(TPersistent) private FSeeMe: TMyVisibleEnum; published property SeeMe:TMyVisibleEnum read FSeeMe write FSeeMe; end;
var TypeData: PTypeData; Counter: Integer = 0;
begin try TypeData := GetTypeData(TMyClass.ClassInfo);
if TypeData.PropCount <> 1 then Writeln('FAIL #1 - Visible Property Missing in ', TypeData.ClassType.ClassName) else Inc(Counter);
TypeData := GetTypeData(TMyOtherClass.ClassInfo);
if TypeData.PropCount <> 1 then Writeln('FAIL #2 - Visible Property Missing in ', TypeData.ClassType.ClassName) else Inc(Counter);
if Counter = 2 then WriteLn('PASS'); except on E:Exception do Writeln(E.Classname, ': ', E.Message); end; end. |
| QC# |
Project |
Area |
|
Delphi |
Compiler\Delphi\Other Compiler |
| Description: |
Steps: |
RLINK32 error when building the vclactnband package in the VCL directory.
It seems to be unable to find dfm files (although they exist). |
* Go to <TP>\vcl * Run "msbuild clean debug" //Exp: Build succeeds //Act: Error: E2161 RLINK32: Error opening file "..\clr\vcl\actman\CustomizeDlg.dfm" |
| QC# |
Project |
Area |
|
Delphi |
Compiler\Delphi\Finalization |
| Description: |
Steps: |
| Application does not unload from Memory when terminating, when loading two or more DLLs, using ShareMem (cannot check against SimpleShareMem, see #255157) and run-time packages. |
1. Start a new Win32 VCL Delphi application 2. Add 2 DLL Projects to the Project Group 3. Save all as "AH01.dpr", "AH02.dpr" and "AH03.dpr" respectivly, name the Form "FormMain.pas" 4. For each project go to project options -> Packages Set the tick for using run-time packages Add "vcl;rtl" for the run-time packages to use 5. Go to each projects DPR-Source file and add "ShareMem" as first unit to the uses clause 6. To the Main Form of AH01.DPR add two buttons. 7. In the OnClick Event-Handler of the first button write LoadLibrary('AH02.DLL'); LoadLibrary('AH03.DLL'); 8. In the OnClick Event-Handler of the second button write Close; 9. Compile all projects and run the EXE 10. Click Button 1 - both DLLs are loaded 11. Click Button 2 - application (seems to) terminate
12. Run the Windows Task Manager (CTRL+SHIFT+ESC) and goto "Processes" page. Order processes by name and look for "AH01.EXE", this should not be there, but is.
Note: Example Project attached to report.
Note: Make sure you are NOT using the debug version of the memory manager, as doing so will mask this issue (do a "msbuild nodebugmem" from the tp\rtl directory if you're using the dev build)
|
| QC# |
Project |
Area |
|
Delphi |
Compiler\Delphi\String Resources |
| Description: |
Steps: |
Delphi compiler generates .drc files with bad identifiers. This prevents the .drc files from getting compiled with the resource compiler and consequently breaks the localized builds.
For example:
Highlander RTM: #define Borland_Vcl_Design_MnuConst_SInvalidNumber 65504
Current Highlander trunk: #define Borland.Vcl.Design.MnuConst_SInvalidNumber 65504
This causes the localized build to break with the following errors:
D:\dev\tp\tools\MSNET2.0\rc vclmenudesigner.tran.drc vclmenudesigner.tran.drc(10): error RC2008: '.' : unexpected in macro definition vclmenudesigner.tran.drc(11): error RC2008: '.' : unexpected in macro definition vclmenudesigner.tran.drc(11): warning RC4005: 'Borland' : redefinition . . . vclmenudesigner.tran.drc(38): error RC2008: '.' : unexpected in macro definition vclmenudesigner.tran.drc(38): warning RC4005: 'Borland' : redefinition D:\dev\tp\app\design\i18n\de\RCa02696(78): fatal error RC1116: RC terminating after preprocessor errors
|
|
51727
| QC# |
Project |
Area |
| 51727 |
Delphi |
RTL\Delphi\RTL Exceptions |
| Description: |
Steps: |
[QC Short Description] Halt in except block causes messagebox at program termination
[QC Description] If you call Halt in an except block, a message box pops up that shows the last exception. Even EAbort exceptions are shown. In a console application it shows the exception in ErrOut.
The _Halt0 function should release the ExceptObject before entering the FinalizeUnits loop. QC Entry 51727
|
1. Create a new VCL application
2. Add the following code to the OnCreate handler
try
Abort;
except
On E: Exception do
Halt(1);
end;
3. Start the application
Expected:
The application terminates
Actual:
The application shows "Exception EAbort in module Project4.exe at 00049F63. Operation aborted."
|
52905
| QC# |
Project |
Area |
| 52905 |
Delphi |
RTL\Delphi\File Management |
| Description: |
Steps: |
[QC Short Description] FileExists does not work for open files with share_exclusive
[QC Description] The FileExists function does not work for files that are opened in SHARE_EXCLUSIVE mode (like the pagefile.sys).
FileExists('C:\pagefile.sys') always return False instead of True. QC Entry 52905
|
1. Create a new VCL application 2. Write the following into the Form's OnCreate handler:
begin if FileExists('C:\pagefile.sys') then ShowMessage('OK') else ShowMessage('Failed'); end;
Expected: A "OK" dialog is displayed
Actual: A "Failed" dialog is displayed
Andreas included this workaround/new version for the RTL:
function FileExists(const Filename: string): Boolean;
function FailSafe(const Filename: string): Boolean; var FindData: TWin32FindData; h: THandle; begin { Either the file is locked/share_exclusive or we got an access denied } h := FindFirstFile(PChar(Filename), FindData); if h <> 0 then begin Windows.FindClose(h); Result := FindData.dwFileAttributes and FILE_ATTRIBUTE_DIRECTORY = 0; end else Result := False; end;
var Code: Integer; LastError: Cardinal; begin Code := Integer(GetFileAttributes(Pointer(FileName))); if Code <> -1 then Result := (FILE_ATTRIBUTE_DIRECTORY and Code = 0) else begin LastError := GetLastError(); Result := (LastError <> ERROR_FILE_NOT_FOUND) and (LastError <> ERROR_PATH_NOT_FOUND) and FailSafe(Filename); end; end; |
47452
| QC# |
Project |
Area |
| 47452 |
Delphi |
SOAP |
| Description: |
Steps: |
[QC Short Description] Incorrect SOAP parse of variant arrays
[QC Description] SOAP does not parse correctly variant arrays of two or more elements that contain variant arrays.
It can affect SOAP DataSnap servers that use variant arrays in OwnerData parameter to comunicate information between client and server. QC Entry 47452
(NOTE From Bruneau:
Have fix ready to go ) |
1. Compile the attached server and client soap apps with D2007 Upd1.
Its a standalone web server. It must be compile with Indy9.
2. Execute the server.
3. Execute the client, and press the button1.
The Client pass a variant array in the ownerdata parameter of cds.BeforeGetRecords method:
procedure TForm1.ClientDataSet1BeforeGetRecords(Sender: TObject; var OwnerData: OleVariant);
var
v1,
v2: variant;
begin
v1 := VarArrayCreate([0, 1], varVariant);
v1[0] := 1;
v1[1] := 'one';
v2 := VarArrayCreate([0, 1], varVariant);
v2[0] := 2;
v2[1] := 'two';
OwnerData := VarArrayCreate([0, 1], varVariant);
OwnerData[0] := v1;
OwnerData[1] := v2;
end;
The Server process the ownerdata parameter in the dsp.BeforeGetRecords method:
for i := 0 to VarArrayHighBound(OwnerData, 1) do
begin
int := OwnerData[i][0];
str := VarToStr(OwnerData[i][1]);
end;
OwnerData is well dimensioned, but the first element contains the second:
OwnerData[0][0] -> 2
OwnerData[0][1] -> 'two'
OwnerData[1][0] -> raises and exception EVariantInvalidArgError
|
47506
| QC# |
Project |
Area |
| 47506 |
Delphi |
SOAP\WSDL Importer |
| Description: |
Steps: |
[QC Short Description] Wsdl importer do not read files xsd
[QC Description] Hi,
when importin a wsdl, the next comment is add to .pas:
// ************************************************************************ // // The following types, referred to in the WSDL document are not being represented // in this file. They are either aliases[@] of other types represented or were referred // to but never[!] declared in the document. The types from the latter category // typically map to predefined/known XML or Borland types; however, they could also // indicate incorrect WSDL documents that failed to declare or import a schema type. // ************************************************************************ // // !:MessageHeader - "http://www.ebxml.org/namespaces/messageHeader" // !:Security - "http://schemas.xmlsoap.org/ws/2002/12/secext" // !:SessionCreateRQ - "http://www.opentravel.org/OTA/2002/11" // !:SessionCreateRS - "http://www.opentravel.org/OTA/2002/11"
and project has error when compiled. QC Entry 47506
|
See description
Attachment fails .......!!!!!!!!!!1
cdsAttachmentsHeader : missing datasetprovider ou datapacked !!!!
See files in borlan.public.attachments: XSD files for Sabre |
49636
| QC# |
Project |
Area |
| 49636 |
Delphi |
SOAP\Client Applications |
| Description: |
Steps: |
[QC Short Description] THTTPWebNode Timouts do not work
[QC Description] The timeouts on a THTTPWebNode do not work correctly. It is as if the timeouts are not altered.
Calling InternetSetOption with the hInternet parameter set to nil bypasses the problem.
The MSDN documentation for InternetSetOption on Windows CE indicates that for a synchronous connection the receive timeout can only be set for the default connection. i.e. the hInternet parameter must be NULL when INTERNET_OPTION_RECEIVE_TIMEOUT is set. This also appears to be the case on Win32 for the connect, send, and recieve timeouts. QC Entry 49636
|
1. Create a web service that takes longer than 30 seconds to respond.
2. Create client for the service using THTTPRIO object with the timeouts on the HTTPWebNode set to 60000.
3. Call the web service. It should timeout. |
| QC# |
Project |
Area |
|
Delphi |
Modeling |
| Description: |
Steps: |
Don't loose GetProperty and SetProperty declarations after Add Property action to the class with delegate
[Highlander Update] |
1. Add Class to the diagram 2. Add Delegate or Delegate as function to the class 3. Add Property to the class
Result: It can be noted that Property is not shown in diagram, and in sourse code we see only property Property1 : Integer read GetProperty1 write SetProperty1;
that is declarations of GetProperty1 and SetProperty1 were lost. As result code is not compilable. |
| QC# |
Project |
Area |
|
Delphi |
Modeling\SCI |
| Description: |
Steps: |
Delphi Win32: The problem: correctly create references to inner types if the target classifer is located within the unit after the source classifier. Probably target classifiers should be replaced to be before source one.
[SpUpdMF] |
|
| QC# |
Project |
Area |
|
Delphi |
Modeling\Class Diagram |
| Description: |
Steps: |
It should be possible to delete struct field from Class Diagram
[Highlander Update] |
1. Add Struct to diagram 2. Add Field to struct 3. Select struct field in diagram-> attempt to remove it ( press Del button or via context menu)
exp: Remove action is done act: Nothing is done |
| QC# |
Project |
Area |
|
Delphi |
Modeling\Audits |
| Description: |
Steps: |
Should be possible to run Audits and Metrics on project level
From newsgroups:
Warren Postma
I have never (in delphi 2007 field test builds, nor in the RTM 2007, nor 2007 update 1, nor latest F/T H2 build) been able to get Metrics to work for the whole project.
One form (.dfm/.pas) only, no problem.
But if I select the WHOLE PROJECT, audits fails in one of two ways:
1. No results ever. Frozen delphi (progress bar never moves, audit results never returned).
2. Fast processing (no progress bar, but the whole thing cancels out, fails silently), and we are returned to our audit-results window pane, which is empty and contains no results.
How on earth does one do metrics on a whole project? Can you only do metrics on a form by form basis?
NOTE: This means, go open a .dproj with 50 forms or so in it, not some trivial piece of demo code, and actually TEST the audits/metrics features on the whole projects. Does it work for you?
Warren
[Highlander Update]
|
Unzip attached project Start Delphi Open project GExpertsD9.dpr Switch on modeling Switch to Model View Launch popup menu on top node GExpertsD9 Launch QA Audits Select All Audits Start
//exp. Audits results are shown //act. Error message appears and Delphi is closed. See attached image.
The same situation with running metrics, Delphi is closed.
On some particular packages fast processing is observed. Audits or metrics result pane is empty in this case. It's possible to run Audits&metrics for single class and for some (small?) packages.
|
|
|
Connect with Us