home *** CD-ROM | disk | FTP | other *** search
/ HTML - Publishing on the Internet / html_cdrom.iso / system / w95perl / ntlan.bat < prev    next >
Encoding:
DOS Batch File  |  1995-11-19  |  4.7 KB  |  178 lines

  1. @rem = '
  2. @echo off
  3. perl %0.bat %1 %2 %3 %4 %5 %6 %7 %8 %9
  4. goto endofperl
  5. ';
  6.  
  7. # ntlan.cmd - Setup Win95 Perl 5.0 config script for a Windows NT LAN
  8. # This PERL script was developed by Steve Scoggins 
  9. # Comments can be sent to me at Compuserve 74431,1332 
  10. # or via Internet at sscoggin@enet.net
  11. #
  12.  
  13. # Configuration stuff
  14. $HostName = "yourpc_hostname";
  15. $DefaultGateway = "NNN.NNN.NNN.NNN";
  16. $IPAddress = "NNN.NNN.NNN.NNN";
  17. $IPMask = "255.255.255.0";                      #Your LAN Subnet Mask
  18. $IPDomain = "company.com";
  19. $SearchList = "company.com";
  20. $NameServer = "NNN.NNN.NNN.NNN,NNN.NNN.NNN.NNN";
  21. $WINSServer1 = "NNN.NNN.NNN.NNN";
  22. $WINSServer2 = "NNN.NNN.NNN.NNN";
  23. $ScopeID = "";
  24. $NodeType = "8";                                # H-node
  25.  
  26. print "PERL 5.0 Script for a Windows NT LAN\n";
  27.  
  28. require "nt.ph";
  29.  
  30. if ($HostName eq "") {
  31.     $HostName = NTNodeName;
  32. }
  33.  
  34. # Open TCP/IP key
  35.  
  36. $subkey_string = "System\\CurrentControlSet\\Services\\VxD\\MSTCP";
  37.  
  38. NTRegOpenKey(&HKEY_LOCAL_MACHINE, $subkey_string, $key) ||
  39.     die "MSTCP Key Open Failed\n";
  40.  
  41. NTRegSetValueEx($key, "HostName", 0, ®_SZ, $HostName) ||
  42.     print "Error setting HostName\n";
  43.  
  44. if (NTRegQueryValueEx($key, "HostName", $reserved, $type, $val)) {
  45.     print "HostName: $val\n";
  46. } else {
  47.     print "Unable to get HostName\n";
  48. }
  49.  
  50. NTRegSetValueEx($key, "Domain", 0, ®_SZ, $IPDomain) ||
  51.     print "Error setting Domain\n";
  52.  
  53. if (NTRegQueryValueEx($key, "Domain", $reserved, $type, $val)) {
  54.     print "Domain: $val\n";
  55. } else {
  56.     print "Unable to get Domain\n";
  57. }
  58.  
  59. NTRegSetValueEx($key, "NameServer", 0, ®_SZ, $NameServer) ||
  60.     print "Error setting NameServer\n";
  61.  
  62. if (NTRegQueryValueEx($key, "NameServer", $reserved, $type, $val)) {
  63.     print "NameServer: $val\n";
  64. } else {
  65.     print "Unable to get NameServer\n";
  66. }
  67.  
  68. NTRegSetValueEx($key, "NameServer1", 0, ®_SZ, $WINSServer1) ||
  69.     print "Error setting NameServer1\n";
  70.  
  71. if (NTRegQueryValueEx($key, "NameServer1", $reserved, $type, $val)) {
  72.     print "NameServer1: $val\n";
  73. } else {
  74.     print "Unable to get NameServer1\n";
  75. }
  76.  
  77. NTRegSetValueEx($key, "NameServer2", 0, ®_SZ, $WINSServer2) ||
  78.     print "Error setting NameServer2\n";
  79.  
  80. if (NTRegQueryValueEx($key, "NameServer2", $reserved, $type, $val)) {
  81.     print "NameServer2: $val\n";
  82. } else {
  83.     print "Unable to get NameServer2\n";
  84. }
  85.  
  86. NTRegSetValueEx($key, "ScopeID", 0, ®_SZ, $ScopeID) ||
  87.     print "Error setting ScopeID\n";
  88.  
  89. if (NTRegQueryValueEx($key, "ScopeID", $reserved, $type, $val)) {
  90.     print "ScopeID: $val\n";
  91. } else {
  92.     print "Unable to get ScopeID\n";
  93. }
  94.  
  95. NTRegSetValueEx($key, "NodeType", 0, ®_SZ, $NodeType) ||
  96.     print "Error setting NodeType\n";
  97.  
  98. if (NTRegQueryValueEx($key, "NodeType", $reserved, $type, $val)) {
  99.     print "NodeType: $val\n";
  100. } else {
  101.     print "Unable to get NodeType\n";
  102. }
  103.  
  104. NTRegSetValueEx($key, "SearchList", 0, ®_SZ, $SearchList) ||
  105.     print "Error setting SearchList\n";
  106.  
  107. if (NTRegQueryValueEx($key, "SearchList", $reserved, $type, $val)) {
  108.     print "SearchList: $val\n";
  109. } else {
  110.     print "Unable to get SearchList\n";
  111. }
  112.  
  113. NTRegCloseKey($key);
  114.  
  115. # Open NetTrans key
  116.  
  117. $subkey_string = "System\\CurrentControlSet\\Services\\Class\\NetTrans\\0003";
  118.  
  119. NTRegOpenKey(&HKEY_LOCAL_MACHINE, $subkey_string, $key) ||
  120.     die "NetTrans Key Open Failed\n";
  121.  
  122. NTRegSetValueEx($key, "DefaultGateway", 0, ®_SZ, $DefaultGateway) ||
  123.     print "Error setting DefaultGateway\n";
  124.  
  125. if (NTRegQueryValueEx($key, "DefaultGateway", $reserved, $type, $val)) {
  126.     print "DefaultGateway: $val\n";
  127. } else {
  128.     print "Unable to get DefaultGateway\n";
  129. }
  130.  
  131. NTRegSetValueEx($key, "IPAddress", 0, ®_SZ, $IPAddress) ||
  132.     print "Error setting IPAddress\n";
  133.  
  134. if (NTRegQueryValueEx($key, "IPAddress", $reserved, $type, $val)) {
  135.     print "IPAddress: $val\n";
  136. } else {
  137.     print "Unable to get IPAddress\n";
  138. }
  139.  
  140. NTRegSetValueEx($key, "IPMask", 0, ®_SZ, $IPMask) ||
  141.     print "Error setting IPMask\n";
  142.  
  143. if (NTRegQueryValueEx($key, "IPMask", $reserved, $type, $val)) {
  144.     print "IPMask: $val\n";
  145. } else {
  146.     print "Unable to get IPMask\n";
  147. }
  148.  
  149. NTRegCloseKey($key);
  150.  
  151. # Open Logon key
  152.  
  153. $subkey_string = "Network\\Logon";
  154.  
  155. NTRegOpenKey(&HKEY_LOCAL_MACHINE, $subkey_string, $key) ||
  156.     die "Network Logon Key Open Failed\n";
  157.  
  158. if (NTRegQueryValueEx($key, "LMLogon", $reserved, $type, $binval)) {
  159.     # We need to force LMLogon on; it's bit 0 of the 32 bit value
  160.     @x = unpack(L, $binval);
  161.     $y = $x[0] | 0x00000001;
  162. } else {
  163.     print "Unable to get LMLogon\n";
  164.     $y = 0;
  165. }
  166. print "LMLogon: $y\n";
  167. $binval = pack(L, $y);
  168.  
  169. NTRegSetValueEx($key, "LMLogon", 0, ®_BINARY, $binval) ||
  170.     print "Error setting LMLogon\n";
  171.  
  172. NTRegCloseKey($key);
  173.  
  174. exit;
  175.  
  176. __END__
  177. :endofperl
  178.