Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
faq:win [2010/05/04 22:59] digitalmanfaq:win [2023/11/20 18:21] (current) – [Win64] New link to ntvdmx64 page digital man
Line 3: Line 3:
 Answers to Frequently Asked Questions regarding Synchronet and Microsoft Windows operating systems. Answers to Frequently Asked Questions regarding Synchronet and Microsoft Windows operating systems.
  
-  * [[#sbbsexec.dll|Why don't DOS programs run on my Windows Vista or Windows 7 system]]?+  * [[#sbbsexec.dll|Why don't DOS programs run on my Windows VistaWindows 7 or Windows 8 system]]?
   * [[#win64|Why don't DOS programs run on my 64-bit Windows system]]?    * [[#win64|Why don't DOS programs run on my 64-bit Windows system]]? 
   * [[#external_popup|How do I keep external programs from popping up windows and   * [[#external_popup|How do I keep external programs from popping up windows and
Line 9: Line 9:
   * [[#socket_io|Why do external programs that use socket I/O not work on my BBS]]?   * [[#socket_io|Why do external programs that use socket I/O not work on my BBS]]?
   * [[#dial-up|How do I setup my BBS to support dial-up modems/users]]?   * [[#dial-up|How do I setup my BBS to support dial-up modems/users]]?
 +  * [[#ansi.sys|Why is the console output of some DOS programs not sent to the remote terminal]]?
 +  * [[#ipv6|Why do I get !ERROR 11001 calling getaddrinfo() on :: on Windows XP]]?
  
 ===== SBBSEXEC.DLL ===== ===== SBBSEXEC.DLL =====
 :?: **Question:**\\ :?: **Question:**\\
-Why don't DOS programs (e.g. editors, door games) run on my //Windows Vista// or //Windows 7 32-bit// system?+Why don't DOS programs (e.g. editors, door games) run on my //Windows Vista////Windows 7//, //Windows 8// or //Windows 10// 32-bit (x86) operating system?
  
 :!: **Answer:**\\ :!: **Answer:**\\
-There are 2 new requirements for 16-bit DOS programs to work under Synchronet-Win32 on //Windows Vista// and //Windows 7// (32-bit):+There are 2 new requirements for 16-bit DOS programs to work under Synchronet-Win32 on //Windows Vista+// 32-bit (x86operating systems:
   - You must have ''SBBSEXEC.DLL'' rev 38 or later (this is included in SBBS v3.14a).   - You must have ''SBBSEXEC.DLL'' rev 38 or later (this is included in SBBS v3.14a).
-  - You must copy ''SBBSEXEC.DLL'' to your Windows ''System32'' folder.+  - You must have a copy of ''SBBSEXEC.DLL'' (from your Synchronet ''[[dir:exec]]'' directory) in your Windows ''System32'' folder
 + 
 +Beginning with Windows 8, Microsoft disables support for 16-bit (DOS) programs by default. Search for "16-bit Application Support" in the Windows Control Panel and enable that setting. This setting only exists in 32-bit versions of Windows 8 and Windows 10. 
 + 
 +Stock 64-bit (x64, amd64) editions of Windows (without [[http://www.columbia.edu/~em36/ntvdmx64.html|NTVDMx64]] installed) cannot run 16-bit DOS programs from Synchronet. See the next FAQ item for the details.
  
 ===== Win64 ===== ===== Win64 =====
 :?: **Question:**\\ :?: **Question:**\\
 Why won't DOS programs run on my 64-bit computer running a 64-bit version of Windows? Why won't DOS programs run on my 64-bit computer running a 64-bit version of Windows?
 +
 +{{:faq:16bit_app_x64_error.png|No NTVDM support in 64-bit editions of Windows}}
  
 :!: **Answer:**\\ :!: **Answer:**\\
 Microsoft does not include Virtual DOS Machine (NTVDM) support in their Microsoft does not include Virtual DOS Machine (NTVDM) support in their
-64-bit operating systems. Synchronet for Windows relies on NTVDM for+64-bit operating systems, by default. Synchronet for Windows relies on NTVDM for
 16-bit DOS program support, so you need to either run a 32-bit Windows version 16-bit DOS program support, so you need to either run a 32-bit Windows version
-(e.g. re-install, use dual-boot, or run in a Virtual Machine) or forgo +(e.g. re-install, use dual-boot, or run in a Virtual Machine) or install [[https://mendelson.org/ntvdmx64.html|NTVDMx64]] to gain 16-bit DOS program support in your 64-bit Windows install. Yes, you can run 32-bit Windows versions of Synchronet on a 64-bit (x64) system. 
-DOS programs on your BBS. Yes, you can run 32-bit Windows versions on a 64-bit (x64) system. + 
-  +As of March 12, 2014, you can disable DOS program support in a single instance of Synchronet with the ''NO_DOS'' option in the ''Options'' value of the ''[BBS]'' section of your ''[[config:sbbs.ini]]'' file. Or uncheck the "DOS Program Support" checkbox in the "Terminal Server Configuration" dialog of the [[monitor:sbbsctrl|Synchronet Control panel]]: 
 + 
 +{{:faq:term_server_cfg.png|New option to disable DOS Program Support in the Terminal Server Configuration dialog of the Synchronet Control Panel}}  
 + 
 +**Note**: The Synchronet [[server:Terminal]] Server assumes external programs are 16-bit DOS programs by default. In order to indicate that a program is a native (e.g. 32-bit) program, you must either set the corresponding [[util:SCFG]] ''Native Executable'' option to ''Yes'' (for each instance the program is used in a command-line in [[util:SCFG]]) or add the program name (as used in the command-line) to the [[util:SCFG]]->External Programs->Native Program List: 
 + 
 +  ╔════════════════════════════╗ 
 +  ║     Native Program List    ║ 
 +  ╠════════════════════════════╣ 
 +  ║ │cmd.exe                   ║ 
 +  ║ │sh                        ║ 
 +  ║ │csh                       ║ 
 +  ║ │bash                      ║ 
 +  ║ │node                      ║ 
 +  ║ │smbutil                   ║ 
 +  ║ │zip                       ║ 
 +  ║ │unzip                     ║ 
 +  ║ │pkzip25                   ║ 
 +  ║ │mp3info                   ║ 
 +  ║ │                          ║ 
 +  ╚════════════════════════════╝ 
 ===== External Popup ===== ===== External Popup =====
 :?: **Question:**\\ :?: **Question:**\\
Line 45: Line 74:
 :!: **Answer:**\\ :!: **Answer:**\\
 Some "security" software (e.g. firewall and anti-virus programs) will interfere with the inheritance of socket descriptors between processes. One such program is the //ZoneAlarm Security Suite//. Another is //NOD32//. I don't know if this is an intentional security "feature" or a design flaw. If you have this (or similar) software installed, it may need to be disabled or completely un-installed for socket inheritance to work again.   Some "security" software (e.g. firewall and anti-virus programs) will interfere with the inheritance of socket descriptors between processes. One such program is the //ZoneAlarm Security Suite//. Another is //NOD32//. I don't know if this is an intentional security "feature" or a design flaw. If you have this (or similar) software installed, it may need to be disabled or completely un-installed for socket inheritance to work again.  
 +
 +Another potential cause of this Windows problem is malware (viruses, trojans, etc.) which disable the Windows Firewall Service. Even if/when the malware is successfully removed, the damage done to Windows (and specifically the registry) remains. One recent sighting of this problem was rectified with the following steps (found [[http://answers.microsoft.com/en-us/windows/forum/windows_7-security/cannot-start-windows-firewall-service-error/e5c277c7-df4d-4253-91ec-5b3314488dae|here]]):
 +
 +  - In Registry Editor, browse to the key ''HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess''
 +  - Right-click //SharedAccess//, and select //Permissions...//
 +  - Click //Add//.
 +  - In the “Enter the object names to select” field, type “NT SERVICE\mpssvc”. Then click //Check Names//. The name should change to ''MpsSvc''.
 +  - Click //OK//.
 +  - Check //Full Control// checkbox in the //Allow// column.
 +  - Click //OK//.
  
 ===== Dial-up ===== ===== Dial-up =====
Line 52: Line 91:
 :!: **Answer:**\\ :!: **Answer:**\\
 Use the [[util:SEXPOTS]] utility in combination with Synchronet for Windows. Use the [[util:SEXPOTS]] utility in combination with Synchronet for Windows.
 +
 +===== ANSI.SYS =====
 +:?: **Question:**\\
 +Why is the console output of some 16-bit DOS programs not intercepted/redirected and sent to the remote user's terminal?
 +
 +:!: **Answer:**\\
 +Check that your ''C:\WINDOWS\SYSTEM32\CONFIG.NT'' file does NOT include Microsoft's ''ANSI.SYS'' console driver. Use of this ''ANSI.SYS'' driver defeats the interception of console output from some 16-bit console I/O programs.
 +
 +===== IPv6 =====
 +:?: **Question:**\\
 +Why do I get the error message ''!ERROR 11001 calling getaddrinfo() on ::'' when running Synchronet v3.17 on Windows XP?
 +
 +:!: ** Answer:**\\
 +Synchronet v3.17 defaults to assuming that your operating system supports IPv6. Windows XP does not support IPv6 by default (only IPv4). You can either install IPv6 services on Windows XP (e.g. using the command-line: ''[[https://support.microsoft.com/en-us/kb/2478747|netsh int ipv6 install]]'') or set the ''Interface'' key values in your ''[[config:sbbs.ini]]'' file to exclude the IPv6 //all-interfaces// address: ''::''.
  
 ===== See Also ===== ===== See Also =====
   * [[:faq:|FAQ Index]]   * [[:faq:|FAQ Index]]
  
faq/win.1273039190.txt · Last modified: 2010/05/04 22:59 by digitalman
Back to top
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0