China DOS Union

-- Unite DOS · Advance DOS · Grow DOS --

Union site: www.cn-dos.net Forum site: www.cn-dos.net/forum
DOS stands for freedom, openness and progress. Let us work hard, learn from the openness and GNU spirit of FreeDOS and Linux, and together build and grow a free GNU GPL world!

中国DOS联盟论坛
The time now is 2026-08-01 12:16
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » Methods for creating windowed interfaces under DOS? View 10,567 Replies 11
Original Poster Posted 2004-05-03 00:00 ·  中国 湖南 娄底 中移铁通
初级用户
Credits 118
Posts 3
Joined 2003-12-10 00:00
22-year member
UID 13961
Gender Male
Status Offline
Which elder brother can tell me how to compile an interface similar to the Windows window in TC under DOS?
Thanks
Floor 2 Posted 2004-05-11 00:00 ·  中国 辽宁 丹东 联通
中级用户
★★
Credits 316
Posts 74
Joined 2004-03-04 00:00
22-year member
UID 19167
Gender Male
Status Offline
Floor 3 Posted 2004-05-11 00:00 ·  中国 河南 郑州 联通
初级用户
Credits 103
Posts 1
Joined 2004-05-11 00:00
22-year member
UID 24077
Gender Male
Status Offline
What are some excellent Windows - like interfaces developed with?
Floor 4 Posted 2004-05-11 00:00 ·  中国 辽宁 朝阳 联通
铂金会员
★★★★
痴迷DOS者
Credits 5,798
Posts 1,924
Joined 2003-06-20 00:00
23-year member
UID 5583
Gender Male
From 金獅電腦軟體工作室
Status Offline
Go to http://dos.e-stone.cn/dosbbs/dispbbs.asp?BoardID=6&replyID=68239&id=10792&star=1&skin=0 and take a look.
熟能生巧,巧能生精,一艺不精,终生无成,精亦求精,始有所成,臻于完美,永无止境!
金狮電腦軟體工作室愿竭诚为您服务!
QQ群:8393170(定期清理不发言者)
个人网站:http://www.520269.cn
电子邮件:doujiehui@vip.qq.com
微信公众号: doujiehui
Floor 5 Posted 2004-05-11 00:00 ·  中国 辽宁 朝阳 联通
铂金会员
★★★★
痴迷DOS者
Credits 5,798
Posts 1,924
Joined 2003-06-20 00:00
23-year member
UID 5583
Gender Male
From 金獅電腦軟體工作室
Status Offline
There is also:
http://dos.e-stone.cn/dosbbs/dispbbs.asp?BoardID=17&replyID=68300&id=9858&star=1&skin=0
熟能生巧,巧能生精,一艺不精,终生无成,精亦求精,始有所成,臻于完美,永无止境!
金狮電腦軟體工作室愿竭诚为您服务!
QQ群:8393170(定期清理不发言者)
个人网站:http://www.520269.cn
电子邮件:doujiehui@vip.qq.com
微信公众号: doujiehui
Floor 6 Posted 2004-05-11 00:00 ·  中国 广东 佛山 三水区 电信
元老会员
★★★★
Credits 5,170
Posts 1,637
Joined 2002-10-16 00:00
23-year member
UID 8
Gender Male
From 广东佛山
Status Offline
VB for DOS is the easiest to use.
我的网志
http://hzmys.blog.163.com/
我的网盘
firststep.qjwm.com
fsmys.ys168.com
ssmys.ys168.com
www.brsbox.com/fsmys
www.brsbox.com/ssmys
www.brsbox.com/ccdos
Floor 7 Posted 2004-05-12 00:00 ·  中国 上海 鹏博士宽带
高级用户
★★
zhri
Credits 665
Posts 153
Joined 2004-02-23 00:00
22-year member
UID 18241
Gender Male
Status Offline
And then there is Foxpro 2.5
Floor 8 Posted 2004-05-12 00:00 ·  中国 浙江 台州 椒江区 电信
中级用户
★★
Credits 447
Posts 126
Joined 2004-02-10 00:00
22-year member
UID 17150
Gender Male
Status Offline
What's really useful is QBWIN, but unfortunately I don't know Basic.
从来不用别人的东西,要用,也先改成自己的再说!
Floor 9 Posted 2004-11-14 00:00 ·  中国 山东 济宁 电信
中级用户
★★★
痴迷DOS者
Credits 456
Posts 570
Joined 2004-10-09 00:00
21-year member
UID 32281
Gender Male
Status Offline
DOS不是万能的,没有DOS是万万不能的
自古系统谁无死?留取胆清照汗青!uploadImages/20035317345478982.png
Floor 10 Posted 2004-11-14 00:00 ·  中国 云南 红河哈尼族彝族自治州 开远市 电信
中级用户
★★
Credits 478
Posts 132
Joined 2003-07-02 00:00
23-year member
UID 6296
Gender Male
Status Offline
Actually, there's also VA, which was written by Lin Rui. I don't know if everyone is aware of it.
Floor 11 Posted 2004-11-15 00:00 ·  中国 湖北 宜昌 电信
高级用户
★★
Credits 677
Posts 194
Joined 2003-09-13 00:00
22-year member
UID 9778
Gender Male
Status Offline
This is the effect made under the QB7.1 version using the QBWin development package
Floor 12 Posted 2004-11-24 00:00 ·  中国 广东 深圳 宝安区 电信
中级用户
Credits 225
Posts 39
Joined 2004-10-06 00:00
21-year member
UID 32162
Gender Male
Status Offline
You can download the "WinSail" software for free at the website www.firstsail.b2b.com. It can convert dialog boxes made with VC into "source code" or "script folders" supported by the "WinSail" software. Currently, a "WinSail Industrial Control Development System" is widely used in the industry. Its launch truly enables designers not to spend too much time on hardware, low-level operations, interfaces, parameter settings, etc. when developing products for embedded PCs, and only need to focus on functional development. As long as you understand C++ For DOS or Visual C++, you can program under DOS to generate an application system comparable to Windows!

The "WinSail Industrial Control Development System" is a software development kit developed based on the DOS system using Borland C++ 3.1 language in Large mode. Although the complete software package is about 450K, the programs generated under DOS can have the same interface as WIN9x, with interface elements such as Group, Label, Edit, ComboBox, Button, Radio, Check, ListBox, Grid, ScrollBar, Desktop, ToolsBar, StatusBar, Menu, PopuMenu, Window, Dialog, ICON, Bitmap, oscilloscope, etc. It supports the mouse, and 99.9% of the control operations are compatible with Windows! It can load and run script dialog boxes; supports Socket socket programming; the smallest application with a complete window graphical interface is about 150K and can run in an electronic disk with only 1M; has a delay function with an accuracy of 0.5 microseconds. It can be said that DOS + WinSail >= Windows CE

I. File Description
1: File: WinSail Industrial Control Development System.doc ---- Brief instruction manual for the WinSail system
2: Directory: WinToDos --------------------- Conversion program
3: Directory: include2 --------------------- System "header files" and "library files"
4: Directory: Sail3000 --------------------- Application project examples
5: Directory: Application ------------------ VC++ program, with multiple dialog boxes

II. File Description in the include2 Directory
01: Barcode.h ----------- Header file for barcode display/printing, class interface
02: DownComm.h ---------- COMM port communication, class interface
03: Foxpro.h ------------ Foxpro 2.6 database, class interface
04: GageRR.h ------------ Report on measurement reliability and repeatability, class interface
05: Graph.h ------------- Oscilloscope and multi-ordinate oscilloscope, class interface
06: HglgPrit.h ---------- Display of text, BITMAP pictures, ICON icons, WAV sound playback, API interface
07: Kernal.h ------------ Multitasking, API interface
08: Listing.h ----------- Doubly linked list, class interface
09: Memroy.h ------------ XMS and EMS memory, class interface
10: Mouse.h ------------ Mouse, API interface
11: MyFrame.h ---------- Control and kernel initialization, class and API interface
12: NewMath.h ---------- Math library, API interface
13: Register.h --------- Reading and writing access to text INI files, class interface
14: Relay.h ------------ Object-oriented I/O access, API interface
15: Spc.h -------------- Process statistics control SPC, class interface
16: SVga_Dev.h --------- Graphics driver for 800*600*256, 1024*768*256 resolutions, API interface
17: Symbol.h ----------- Symbol definition
18: EgavgaF.Obj --------- BC31 far call driver program
19: Sail.Lib ----------- System library file

III. File Description in the Sail3000 Directory
01: Config.Sys ----------- System driver configuration file
02: Display.Fon ---------- 8*16 English font and 16*16 Simplified Chinese font
02: DisplayF.Fon --------- 8*16 English font and 16*16 Traditional Chinese font
03: Dwpword.Exe ---------- File for viewing user and password (advanced application)
04: Pass.Bin ------------- User and password database, binary
05: Mouse.Com ------------ Mouse driver program
06: Sail2000.Cpp --------- Sample source file of user project
07: Sail2000.Prj --------- Sample project file of user project
08: Sail2000.Exe --------- Main program of user project
09: a.bat ---------------- Batch file of user project
10: Sys\Destop.Sys ------- Desktop configuration file of user project
11: Sys\Manager.Sys ------ Desktop configuration file of user project
12: Sys\Relay.Sys -------- I/O configuration file of user project
13: Bmp\Computer.Bmp----- A picture used by the kernel
14: Bmp\Desktop.Bmp------ A picture used by the kernel
15: Bmp\Winnt.BMp-------- A picture used by the password box
16: Bmp\Sail200.Ico------ Default title bar icon of the window
17: Bmp\BookS??.Ico------ Default icon of the menu
18: Bmp\MsgBox??.Ico----- Icon used by the information box
19: Bmp\Display.Ico------ A icon used by the kernel
20: Bmp\Net.Ico---------- A icon used by the kernel

IV. File Description in the WinToDos Directory
For the files in the VC project, only the "Project.rc" and "Resource.h" files are valuable
01: MakeDlg.Exe ---------- Convert the resource dialog box in VC into the dialog box source program of WinSail
02: RegisterDll.Dll ------ DLL file supporting MakeDlg.Exe to access the text INI registry

V. Configuration Instructions for DOS Boot File
Assume the directory name of Win is "c:\Windows" and the directory of BC31 is "C:\Bc31"
Configure C:\Config.Sys as follows
Device = C:\Windows\Himem.Sys/TestMem:Off
Device = C:\Windows\Emm386.Exe Ram HighScan
DOS = High,Umb
Stacks = 9,256
Files = 25
Configure C:\Autoexec.Bat as follows
path C:\Windows;C:\Windows\Command;C:\Bc31\Bin
Lh SmartDrv.Exe

VI. Requirements for the Main() Main Function
1: Need to include the header files "Symbol.h" and "MyFrame.h"
2: First call the BOOL InitSystem(int argc, char** argv) kernel initialization function
3: Write your own code in the middle
4: Finally call the BOOL CloseSystem() kernel exit function.
5: Example:
#include "Symbol.h"
#include "Myframe.h"
extern unsigned _strlen = 60u * 1024u;
void far TransrateKey(CObject* pCurObj)
{
return(0);
}
int main(int argc, char** argv)
{
// System kernel initialization
if (!InitSystem(argc, argv))
{
::CloseSystem() ;
::printf("\nInit System Error!" ;
return(0);
}
// User code starts
//……
// User code ends
// Exit system kernel
::CloseSystem();
return(1);
}

VII. How to Create the Sail2000 Project and Code
01: Install BC31 on the C drive, preferably the directory is C:\Bc31
02: The user creates an "Include2" directory in their own BC31 directory
03: Copy all files in include2\*.* to the "include2" directory of C:\bc31
04: In the BC31 integrated environment, set the "Include include" path to "c:\bc31\include2;c:\bc31\include"
05: In the BC31 integrated environment, set "Large" large mode; "Default for memory model" default memory mode
06: In the BC31 integrated environment, set Floating Point to "80287/387" and Instruction Set to "80386"
07: In the BC31 integrated environment, create a project, assume the project name is Sail2000.Prj
08: Add the C:\BC31\include2\Sail.Lib kernel library file to the project
09: Add the C;\BC31\include2\Egavgaf.Obj graphics library file to the project
10: In the project, need to write the default window virtual keyboard function void far TransrateKey(CObject* pCurObj), generally as follows
void far TransrateKey(CObject* pCurObj)
{
return(0);
}
VC project's resource file ------ --------------à VC project's resource header file-------------------à Which file does it need to be converted into-----------------------à Generated function type------------------------à VC project's all dialog box ID number list----------à
Forum Jump: