Now that it's pretty widely known that we're doing a
Delphi 2005 Update 2 patch I think it's safe to mention that the bug discussed
here has been fixed and will be included in the update.
In
Delphi 2005 there is a
bug which causes the runat="server" attribute to be removed from the ASPX file.
The problem occurs as a result of the underlying
MSHTML
control removing the attribute, one of the many nuances about using this
control. In fact, VS.NET 2003 has the very same problem and as such people had
come up with numerous ways to work around the issue.
Here is a
link with a few pages which mention ways to work around this problem. The
basic idea is to simply avoid using the runat="server" attribute on the the
title tag and use either a user control or an asp:literal control for the
contents of the title tag.
I suppose the next question is that if we knew what the issue was then why
didn't we fix it for Update 1? Well, we did fix it for update one but the fix
involved a package change that would have broken resource string compatibility
causing us to further delay the update. So, for now we'll have to live with the
workarounds.
If you would like to change the list of RSS feeds available from
the Headlines downdown on the Welcome page all you need to do is edit an XML
file. Here's what to do:
- From Windows Explorer locate the Welcome page folder under your Delphi 2005 installaction folder.
- Select the Welcome page folder and then select the sub-folder called “xml“
- Edit the file called defaultProviders.xml
I think the above XML is pretty straightforward but if you have any problems
figuring out how to correctly modify the file please post a comment and I will
be sure to clear things up.
[UPDATED Dec 17, 2004] I forgot to mention that the headlines
on the Welcome page are standard
RSS feeds so it's easy to
add your favorites feeds to the list.
Jeremy North has written what looks like (I haven't actually tried it) a
neat little tool to allow
Delphi 2005 users to configure the IDE. Basically, the tool allows the user to control which packages and therefore which features will load when the IDE is launched. R&D has talked about doing something like this for awhile now but haven't gotten the chance (yet). Using this tool it's possible to reduce the load time of the IDE and in some cases significantly.
Check it out, I think a lot of Delphi customers could find it useful.
NOTE: This information falls under the use at your own risk category. During
the Internet Team chat session we recorded the other day the issue of being able
to modify the code that the IDE generates when you create new WebForms came up
and I mentioned that I would blog about it. Well, here is that blog entry. If
you want to change the code that is generated for many of the different file
types that the IDE creates you should look in your Delphi 2005 folder for a subfolder
named ObjRepos which contains all of the template files that the IDE uses to
generate File|New items.
For example, let's say you have a stylesheet that you always use for your
HTML pages. You could change the template for HTML files to always link to your
stylesheet so that you don't have to manually add it each time. Here are the
steps you would follow to make this change:
- Open the Delphi 2005\ObjRepos\Markup folder
- Find the file HTMLPageTemplage.htm and edit open using your favorite editor
- Add a LINK tag to
the HEAD section of the page template file
- Save the changes
That's it! You've now modified the default page template for HTML files to
always include your own stylesheet. Pretty sweet huh? You can do the exact
same thing for many other file types used by the IDE. Another example is if you
didn't want the ASP.NET debug settings in your machine.config file you could
change the web.config file under .\objrepos\DelphiDotNet to include the same
debug settings so that every ASP.NET application you create in Delphi will
automatically have those settings (not necessarily a great idea because of
deployment issues). For more information refer to this
post.
I don't have a table which maps all of the files to there specific file types
so you might have to do a bit of digging before you find the one you want.
Also, changing these files isn't supported so if you mess them up and your IDE
no longer functions correctly either restore the files from the installation CD
or reinstall the product. Whatever you do don't come looking for me to fix the
problem! :)
When you install Delphi
2005 with the intention of developing ASP.NET applications on IIS you are given
the opportunity to allow the install to change your machine.config file in order
to support ASP.NET
debugging. Well, during our internet chat session the other day someone asked
“What are those settings?”
Well, for Delphi 2005 here is the answer:
Open %systemroot%\Microsoft.net\Framework\v1.1.4322\CONFIG\machine.config
using Notepad.
- Under the element <compilation...> there is a subelement <assemblies> to which you need to add the following:
<add assembly="Borland.dbkasp, Version=9.0.0.1, Culture=neutral, PublicKeyToken=b0524c541232aae7" />
- Then, search for <httpmodules> element and add:
<add name="DbgConnect" type="Borland.DbkAsp.DbkConnModule, Borland.dbkasp, Version=9.0.0.1, Culture=neutral, PublicKeyToken=b0524c541232aae7" />>
That's it. Adding those elements will ensure that you can debug ASP.NET
applications using Delphi 2005 on IIS. These settings are only required if you
are debugging ASP.NET applications running on IIS they are not
required for Cassini or any other web server.
Without these settings you will likely see the error message “Unable to
attach to ASP.NET worker process (typically aspnet_wp.exe or w3wp.exe)” or
something close to it.
We recommend that you either use these settings in machine.config OR in each
ASP.NET web application's web.config file but not both. Additionally, you do not
want to deploy a web.config file that includes these changes.
[UPDATE: Dec 15 2004] Fixed path to machine.config
Blake Watson has written a
review of Delphi 2005 available from
DevSource.