<!doctype html public "-//W3C//DTD W3 HTML//EN">
<html><head><style type="text/css"><!--
blockquote, dl, ul, ol, li { padding-top: 0 ; padding-bottom: 0 }
 --></style><title>Unique computer id</title></head><body>
<div>Okay, here is the verdict.&nbsp; I created a stack with one
button, so that the person having the problem could run this with the
internet on, and off, and send me a report to compare the two. </div>
<div><br></div>
<div>With the internet on, Test Three produced several lines of info,
including the Physical Address.&nbsp; Test One produced the desired
info.</div>
<div><br></div>
<div>With the internet off, Test Three produced one line of text.&nbsp;
&quot;Windows IP Configuration&quot;.&nbsp; That was it.&nbsp; Test
One was empty, accordingly.</div>
<div><br></div>
<div>Test Two worked in both instances, producing the same info.&nbsp;
My conclusion is that Test Two is more stable.&nbsp; Although in
reading thru the archives, there seemed to be a question about the
stability of such info. </div>
<div><br></div>
<div>As the problem seems only to happen on Windows, I did not test
Mac with this test.&nbsp; Far as I know, the Mac OSX code is stable
(stable meaning it gets some unique computer info on pretty much any
OSX system, and does not return &quot;Nope&quot;.)&nbsp; I have no
code for Mac PPC.&nbsp; If anyone does, I'd love to have it. </div>
<div><br></div>
<div>### Mac OSX code ###</div>
<div><br></div>
<div>put shell(&quot;/sbin/ifconfig en0&quot;) into ifConfigs</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char 1 to 4 of ifConfigs =
&quot;zsh:&quot; then</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return
&quot;Nope&quot;</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; get
matchText(ifconfigs,&quot;(?s)ether (.*?) &quot;,getInfo) # These are
spaces on either side of (.*?)</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if it is false
then</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return
&quot;Nope&quot;</div>
<div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end if</div>
<div>### end Mac OSX code ###</div>
<div><br></div>
<div><br></div>
<div><br></div>
<div><br></div>
<div><br></div>
<div>### The code in the button of the test stack sent to the user:
###</div>
<div><br></div>
<div>on mouseUp<br>
&nbsp; global checklist<br>
&nbsp; put firstTest() into testOne<br>
&nbsp; put secondTest(&quot;C&quot;) into testTwo<br>
&nbsp; put thirdTest() into testThree<br>
&nbsp;<br>
&nbsp; put the short date &amp; return &amp; the abbreviated time &amp;
return &amp; return into checklist<br>
&nbsp; put &quot;Test One&quot; &amp; return &amp;
base64encode(testOne) &amp; return &amp; return after checklist<br>
&nbsp; put &quot;Test Two&quot; &amp; return &amp; return &amp;
base64encode(testTwo) after checklist<br>
&nbsp; put &quot;Test Three&quot; &amp; return&nbsp; &amp;
base64encode(testThree) after checklist<br>
&nbsp;<br>
&nbsp; put the effective filename of this stack into theFile<br>
&nbsp; set the itemDel to &quot;/&quot;<br>
&nbsp; put &quot;checklist.txt&quot; into the last item of theFile<br>
&nbsp; open file theFile for write<br>
&nbsp; write checklist to file theFile<br>
&nbsp; close file theFile<br>
&nbsp;<br>
&nbsp; answer &quot;Checklist file has been created.&quot;<br>
&nbsp;<br>
end mouseUp<br>
<br>
function firstTest<br>
&nbsp; local checkpointCharley<br>
&nbsp; put (there is a file (specialFolderPath(&quot;system&quot;) &amp;
&quot;/IPCONFIG.EXE&quot;)) into winExists<br>
&nbsp; put (there is a file (specialFolderPath(&quot;system&quot;) &amp;
&quot;/SYSTEM32/IPCONFIG.EXE&quot;)) into sys32Exists<br>
&nbsp; if winExists or sys32Exists then<br>
&nbsp;&nbsp;&nbsp; put &quot;EXISTS&quot; &amp; return after
checklist<br>
&nbsp;&nbsp;&nbsp; set the hideConsoleWindows to true<br>
&nbsp;&nbsp;&nbsp; put shell(&quot;ipconfig /all&quot;) into temp<br>
&nbsp;&nbsp;&nbsp; get matchText(temp,&quot;Physical Address[\. ]*:
([A-Z0-9-]*)&quot;,checkpointCharley)<br>
&nbsp; else<br>
&nbsp;&nbsp;&nbsp; put &quot;Default&quot; &amp; return after
checklist<br>
&nbsp;&nbsp;&nbsp; return &quot;Default&quot;<br>
&nbsp; end if<br>
&nbsp; return checkpointCharley<br>
end firstTest<br>
<br>
function secondTest driveCharley<br>
&nbsp; local checkpointJoe<br>
&nbsp; put char 1 of driveCharley &amp; &quot;:&quot; into pDisk<br>
&nbsp; set the hideConsoleWindows to true<br>
&nbsp; put shell(&quot;dir &quot; &amp; pDisk) into tDirData<br>
&nbsp; get matchText(tDirData,&quot;Volume Serial Number is
(.*)\n&quot;,checkpointJoe)<br>
&nbsp; if it is true then<br>
&nbsp;&nbsp;&nbsp; return checkpointJoe<br>
&nbsp; else if it is empty then<br>
&nbsp;&nbsp;&nbsp; return &quot;Empty&quot;<br>
&nbsp; else<br>
&nbsp;&nbsp;&nbsp; return &quot;Other&quot;<br>
&nbsp; end if<br>
end secondTest<br>
<br>
function thirdTest<br>
&nbsp; local checkpointMajor<br>
&nbsp; put (there is a file (specialFolderPath(&quot;system&quot;) &amp;
&quot;/IPCONFIG.EXE&quot;)) into winExists<br>
&nbsp; put (there is a file (specialFolderPath(&quot;system&quot;) &amp;
&quot;/SYSTEM32/IPCONFIG.EXE&quot;)) into sys32Exists<br>
&nbsp; if winExists or sys32Exists then<br>
&nbsp;&nbsp;&nbsp; set the hideConsoleWindows to true<br>
&nbsp;&nbsp;&nbsp; put shell(&quot;ipconfig /all&quot;) into
checkpointMajor<br>
&nbsp; end if<br>
&nbsp; return checkpointMajor<br>
end thirdTest</div>
<div><br></div>
<div>### end test code ###</div>
<x-sigsep><pre>-- 
</pre></x-sigsep>
<div>Mac and Windows shareware games<br>
http://www.gypsyware.com</div>
</body>
</html>