DOCUMENT:Q279409 28-JUN-2001 [vbwin] TITLE :BUG: WebClass ProcessTag Event Fails to Execute PRODUCT :Microsoft Visual Basic for Windows PROD/VER::6.0,6.0 SP4 OPER/SYS: KEYWORDS:kbtemplate kbCOMt kbVBp600bug kbVisID600bug kbWebClasses kbGrpDSASP kbDSupport kbEvent ====================================================================== ------------------------------------------------------------------------------- The information in this article applies to: - Microsoft Visual Basic Learning Edition for Windows, version 6.0 - Microsoft Visual Basic Professional Edition for Windows, version 6.0 - Microsoft Visual Basic Enterprise Edition for Windows, version 6.0 SP4 ------------------------------------------------------------------------------- SYMPTOMS ======== When you run a WebClass project from within Visual Basic 6.0 Service Pack 4, and there is more than one WebClass tag in a Web document, the WebClass ProcessTag events may fail to execute. This does not occur if you browse the Active Server Pages (ASP) page directly. CAUSE ===== This problem occurs if the previous execution of the ProcessTag event did not change the value of the TagContents variable. If your ProcessTag event never sets or modifies the value of the TagContents variable, every other tag is skipped. RESOLUTION ========== To resolve this problem, while you are developing the WebClass project from within Visual Basic, set or modify the value of the TagContents variable every time the ProcessTag event executes. To do this, add the following line at the beginning of your ProcessTag event: TagContents = TagContents This line can be commented out or removed when the Web project is put into production, but it must be put back next time you run the WebClass project from within Visual Basic. STATUS ====== Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. MORE INFORMATION ================ Steps to Reproduce Behavior --------------------------- 1. Use the following template to create a WebClass project: ProcessTag Event Test

ProcessTag Event Test

The following should show three lines: One, abc & Three
Instead, it shows these three lines: One, Two & Three
To fix this problem, uncomment the code: TagContents = TagContents
One
Two
Three
2. In the WebClass project, paste the following code: Private Sub TagTemplate_ProcessTag(ByVal TagName As String, _ TagContents As String, SendTags As Boolean) 'Uncomment the following line to correct the problem. 'TagContents = TagContents Select Case TagName Case "WC@ONE" 'Do some work Case "WC@TWO" 'Do some work TagContents = "abc" Case "WC@THREE" 'Do some work Case Else 'Do some work End Select End Sub Private Sub TagTemplate_Respond() TagTemplate.WriteTemplate End Sub Private Sub WebClass_Start() Set NextItem = TagTemplate End Sub 3. After you uncomment the following line of code: TagContents = TagContents you must refresh the page in the browser to see the change. For more detailed information on how to create a WebClass project in Visual Basic, see our sample projects at the following Microsoft Developer Network (MSDN) Web sites: WCDemo Sample Project http://msdn.microsoft.com/library/devprods/vs6/vbasic/vb98/vbsmpwebclassdemoapplication(wcdemovbp)professionalenterpriseedition.htm Support1 Sample Project http://msdn.microsoft.com/library/devprods/vs6/vbasic/vb98/vbsmpsupportapplicationprofessionalenterpriseeditions.htm Support1 WebClass Tutorial http://msdn.microsoft.com/library/devprods/vs6/vbasic/vbcon98/vbhowCreatingaWebclass.htm REFERENCES ========== For additional information, click the article numbers below to view the articles in the Microsoft Knowledge Base: Q192035 PRB: Do Not Use a WebClass ProcessTag Inside an HTML Tag Q234317 FIX: HTML Page Truncated with Visual Studio SP3 WebClass Run Time when Running in the VB IDE For more information on sample Visual Basic projects, see the following MSDN article: http://msdn.microsoft.com/library/devprods/vs6/vbasic/VBRef98/vbsamppage.htm Additional query words: web class ====================================================================== Keywords : kbtemplate kbCOMt kbVBp600bug kbVisID600bug kbWebClasses kbGrpDSASP kbDSupport kbEvent Technology : kbVBSearch kbAudDeveloper kbZNotKeyword6 kbZNotKeyword2 kbVB600Search kbVB600 kbVB600SP4 Version : :6.0,6.0 SP4 Issue type : kbbug Solution Type : kbpending ============================================================================= THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 2001.