<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2900.2912" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY>
<DIV><FONT face=Arial size=2>Hi Frank,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>I suspect you're right.&nbsp; Try something like 
the following:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-language: EN-AU"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN 
style="COLOR: blue">Structure</SPAN> Person<?xml:namespace prefix = o ns = 
"urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-language: EN-AU"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN><SPAN style="COLOR: blue">Public</SPAN> ID <SPAN 
style="COLOR: blue">As</SPAN> <SPAN 
style="COLOR: blue">Integer<o:p></o:p></SPAN></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-language: EN-AU"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN><SPAN style="COLOR: blue">Public</SPAN> MonthlySalary <SPAN 
style="COLOR: blue">As</SPAN> <SPAN 
style="COLOR: blue">Decimal<o:p></o:p></SPAN></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-language: EN-AU"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN><SPAN style="COLOR: blue">Public</SPAN> LastReviewDate <SPAN 
style="COLOR: blue">As</SPAN> <SPAN 
style="COLOR: blue">Date<o:p></o:p></SPAN></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-language: EN-AU"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN>&lt;VBFixedString(15)&gt; <SPAN style="COLOR: blue">Public</SPAN> 
FirstName <SPAN style="COLOR: blue">As</SPAN> <SPAN 
style="COLOR: blue">String<o:p></o:p></SPAN></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-language: EN-AU"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN>&lt;VBFixedString(15)&gt; <SPAN style="COLOR: blue">Public</SPAN> 
LastName <SPAN style="COLOR: blue">As</SPAN> <SPAN 
style="COLOR: blue">String<o:p></o:p></SPAN></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-language: EN-AU"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN>&lt;VBFixedString(15)&gt; <SPAN style="COLOR: blue">Public</SPAN> Title 
<SPAN style="COLOR: blue">As</SPAN> <SPAN 
style="COLOR: blue">String<o:p></o:p></SPAN></SPAN></P>
<P class=MsoNormal 
style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-language: EN-AU"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN>&lt;VBFixedString(150)&gt; <SPAN style="COLOR: blue">Public</SPAN> 
ReviewComments <SPAN style="COLOR: blue">As</SPAN> <SPAN 
style="COLOR: blue">String<o:p></o:p></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-language: EN-AU"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN 
style="COLOR: blue">End</SPAN> <SPAN 
style="COLOR: blue">Structure</SPAN></SPAN><SPAN 
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p></o:p></SPAN></P>
<P>The key element is the &lt;VBFixedString(x)&gt; (not the Public).&nbsp; I 
have a working example if that would help.</P>
<P>-Alex Hopkins, Bayside Christian College</FONT></P>
<P><FONT face=Arial size=2></FONT>&nbsp;</P></DIV>
<DIV><FONT face=Arial size=2>----- Original Message ----- </FONT>
<DIV><FONT face=Arial size=2>From: "Frank Van Den Boom" &lt;</FONT><A 
href="mailto:vandenboomfj@aquinas.vic.edu.au"><FONT face=Arial 
size=2>vandenboomfj@aquinas.vic.edu.au</FONT></A><FONT face=Arial 
size=2>&gt;</FONT></DIV>
<DIV><FONT face=Arial size=2>To: &lt;</FONT><A 
href="mailto:is@edulists.com.au"><FONT face=Arial 
size=2>is@edulists.com.au</FONT></A><FONT face=Arial size=2>&gt;</FONT></DIV>
<DIV><FONT face=Arial size=2>Sent: Monday, July 24, 2006 4:05 PM</FONT></DIV>
<DIV><FONT face=Arial size=2>Subject: [Year 12 Its] VB.NET record 
structure/random access file question</FONT></DIV></DIV>
<DIV><FONT face=Arial><BR><FONT size=2></FONT></FONT></DIV><FONT face=Arial 
size=2>&gt; In my conversion from VB6 to VB.NET, I have hit a snag in the area 
of<BR>&gt; random access file processing.<BR>&gt;&nbsp;<BR>&gt; Here is what I 
am trying to do:<BR>&gt; - create a record structure which has a mixture of 
field data types eg<BR>&gt; Structure CDType<BR>&gt; Dim ID As Short<BR>&gt; Dim 
Title As String<BR>&gt; Dim Artist As String<BR>&gt; Dim price As 
Decimal<BR>&gt; End Structure<BR>&gt; - Assuming variable 'CD' is of type 
'CDType, then open the file for<BR>&gt; random access.<BR>&gt; FileOpen(1, 
filename, OpenMode.Random, , , Len(onecd))<BR>&gt; - The program crashes ('bad 
record length') when I write new records to<BR>&gt; the (using Fileput), where 
the string fields are longer than one<BR>&gt; character.<BR>&gt; <BR>&gt; What 
is really weird about this, is that it does not happen for all<BR>&gt; users, 
which made me think it was security related. But PC's are all<BR>&gt; ghosted 
with same setup, so I have put that possible cause on the<BR>&gt; sideline for 
now.<BR>&gt; <BR>&gt; I think the problem arises because of the way the String 
fields are<BR>&gt; declared in the record structure.<BR>&gt; <BR>&gt; In VB6, 
'bad record length' also arose in this situation and it was<BR>&gt; essential 
that String variables be followed by the number of characters<BR>&gt; to 
allocate to that field. Eg.<BR>&gt; Structure CDType<BR>&gt; Dim ID As 
Short<BR>&gt; Dim Title As String * 15<BR>&gt; Dim Artist As String * 10<BR>&gt; 
Dim price As Decimal<BR>&gt; End Structure<BR>&gt;&nbsp;<BR>&gt; And given the 
nature of random file processing, that made plenty of<BR>&gt; sense to me. 
Unless it assumed that everyone string was 255 characters,<BR>&gt; how else 
could it determine record length. However that VB6 syntax is<BR>&gt; not 
accepted in VB.NET, and I have searched high and low for its<BR>&gt; successor 
without success.<BR>&gt; <BR>&gt; Any ideas out there?<BR>&gt; Frank<BR>&gt; 
<BR>&gt; _______________________________________________<BR>&gt; </FONT><A 
href="http://www.edulists.com.au"><FONT face=Arial 
size=2>http://www.edulists.com.au</FONT></A><BR><FONT face=Arial size=2>&gt; IT 
Systems Mailing List kindly supported by<BR>&gt; </FONT><A 
href="http://www.vcaa.vic.edu.au"><FONT face=Arial 
size=2>http://www.vcaa.vic.edu.au</FONT></A><FONT face=Arial size=2> - Victorian 
Curriculum and Assessment Authority and<BR>&gt; </FONT><A 
href="http://www.vitta.org.au"><FONT face=Arial 
size=2>http://www.vitta.org.au</FONT></A><FONT face=Arial size=2>&nbsp; - VITTA 
Victorian Information Technology Teachers Association Inc</FONT></BODY></HTML>