返回列表 发帖

[其他] [Visual Basic 6.0] Colour.Exe 让命令行更多彩

命令帮助:
Hope Colour [Version 1.0.0000]
(C) Copyright 2016-2021 Hope Corp.
本程序用于让命令行实现彩色显示
Colour /H                   - 查询帮助
Colour /?                   - 查询帮助
Colour ColourCode           - 从下一行命令开始,进行与ColourCode关联的颜色
                            - ColourCode是颜色代码,可以是任意一个0~255的正整数
                            - 下面是ColourCode的色卡
0       1       2       3       4       5       6       7       8       9       10      11      12      13      14      15      16      17      18      19      20      21      22      23      24      25      26      27      28      29      30      31      32      33      34      35      36      37      38      39      40      41      42      43      44      45      46      47      48      49      50      51      52      53      54      55      56      57      58      59      60      61      62      63      64      65      66      67      68      69      70      71      72      73      74      75      76      77      78      79      80      81      82      83      84      85      86      87      88      89      90      91      92      93      94      95      96      97      98      99      100     101     102     103     104     105     106     107     108     109     110     111     112     113     114     115     116     117     118     119     120     121     122     123     124     125     126     127     128     129     130     131     132     133     134     135     136     137     138     139     140     141     142     143     144     145     146     147     148     149     150     151     152     153     154     155     156     157     158     159     160     161     162     163     164     165     166     167     168     169     170     171     172     173     174     175     176     177     178     179     180     181     182     183     184     185     186     187     188     189     190     191     192     193     194     195     196     197     198     199     200     201     202     203     204     205     206     207     208     209     210     211     212     213     214     215     216     217     218     219     220     221     222     223     224     225     226     227     228     229     230     231     232     233     234     235     236     237     238     239     240     241     242     243     244     245     246     247     248     249     250     251     252     253     254     255COPY
下载链接:文件区\Colour.exe
Why join the navy, if you can be a pirate? - Steve Jobs

本帖最后由 HOPE2021 于 2021-10-5 12:46 编辑

回复 1# HOPE2021
使用Colour.Exe制作的彩虹:
@Echo off
Mode Con: Cols=80 Lines=25
Title Colour Test
Set "Line="
For /l %%i in (1,1,80) do (
Call :Line
)
For /l %%i in (0,1,255) do (
Colour %%i
Set /p Str=%Line%<nul
)
@Pause > nul
@Exit /b
:Line
Set "Line=%Line%#"
@Goto :eofCOPY
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

回复 2# HOPE2021
FindStr做不到的事:彩色显示重定向符:
@Echo off
Mode Con: Cols=80 Lines=25
Title Colour Test
Set "Line="
Set "Line2="
For /l %%i in (1,1,80) do (
Call :Line
Call :Line2
)
For /l %%i in (0,1,255) do (
Colour %%i
Call :Echo2
)
@Pause > nul
@Exit /b
:Line
Set "Line=%Line%^<"
@Goto :eof
:Line2
Set "Line2=%Line2%^>"
@Goto :eof
:Echo2
Set /a Rand=%Random%%%2
If %Rand% Equ 0 (
Set /p Str=%Line%<nul
)
If %Rand% Equ 1 (
Set /p Str=%Line2%<nul
)
@Goto :eofCOPY
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

回复 3# HOPE2021
源码:
Option Explicit
Public Declare Function FreeConsole Lib "kernel32" () As Long
Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Public Declare Function GetStdHandle Lib "kernel32" (ByVal nStdHandle As Long) As Long
Public Declare Function LstrLen Lib "kernel32" Alias "lstrlenA" (ByVal lpString As String) As Long
Private Declare Function SetConsoleTextAttribute Lib "kernel32" (ByVal hConsoleOutput As Long, ByVal wAttributes As Long) As Long
Public Declare Function WriteConsole Lib "kernel32" Alias "WriteConsoleA" (ByVal hConsoleOutput As Long, ByVal lpBuffer As Any, ByVal nNumberOfCharsToWrite As Long, lpNumberOfCharsWritten As Long, lpReserved As Any) As Long
Public Const STD_OUTPUT_HANDLE = -11&
Public hConsoleOut As Long
Public Sub Initialize()
    hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE)
End Sub
Public Sub Terminate()
    Call FreeConsole
    Call CloseHandle(hConsoleOut)
End Sub
Public Sub Echo(ByVal szOut As String)
    WriteConsole hConsoleOut, szOut, LstrLen(szOut), vbNull, vbNull
End Sub
Sub Main()
    On Error Resume Next
    Dim Cmd
    Dim i
    Dim j
    Call Initialize
    Dim Color___ As Long
    If Command = "" Then
        Call Echo(vbCrLf & "没有命令参数,操作失败" & vbCrLf)
        Call Help_
    End If
    If Left(UCase(Command), 2) = "/H" Then
        Call Help_
        Call Terminate
        Exit Sub
    End If
    If Left(UCase(Command), 2) = "/?" Then
        Call Help_
        Call Terminate
        Exit Sub
    End If
    Color___ = Command
    If Not Left(UCase(Command), 2) = "/H" Then
        Dim Handle
        Handle = GetStdHandle(STD_OUTPUT_HANDLE)
        If IsNumeric(Color___) = True Then
            Call SetConsoleTextAttribute(Handle, Color___)
            Call Terminate
            End
        End If
    Call Echo("命令参数不正确" & vbCrLf)
    Call Terminate
    End If
End Sub
Function Help_()
    Call Echo(vbCrLf & "Hope Colour [Version 1.0.0000]" & vbCrLf)
    Call Echo("(C) Copyright 2016-2021 Hope Corp." & vbCrLf & vbCrLf)
    Call Echo("本程序用于让命令行实现彩色显示" & vbCrLf & vbCrLf)
    Call Echo("Colour /H                   - 查询帮助" & vbCrLf & vbCrLf)
    Call Echo("Colour /?                   - 查询帮助" & vbCrLf & vbCrLf)
    Call Echo("Colour ColourCode           - 从下一行命令开始,进行与ColourCode关联的颜色" & vbCrLf)
    Call Echo("                            - ColourCode是颜色代码,可以是任意一个0~255的正整数" & vbCrLf)
    Call Echo("                            - 下面是ColourCode的色卡" & vbCrLf & vbCrLf)
    Dim i
    For i = 0 To 255
        Dim Handle
        Handle = GetStdHandle(STD_OUTPUT_HANDLE)
        Call SetConsoleTextAttribute(Handle, i)
        Call Echo(" " & i & " ")
        Call SetConsoleTextAttribute(Handle, 0)
        Call Echo(Chr(9))
    Next
    Call Echo(vbCrLf)
    Call SetConsoleTextAttribute(Handle, 7)
    Call Terminate
    End
End FunctionCOPY
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

回复 4# HOPE2021


    我可否把他改成16BT颜色?
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 4# HOPE2021


    声明 部分的代码一直报错误,谁能给我一个正版VB6.0????
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 5# cmd1152
当然可以
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

回复 4# HOPE2021


   
Microsoft Visual Basic                                                      [X]
----------------------------------------------------------------------

   [警告]     编译错误:

常数、固定长度字符串、数组、用户定义类型以及 Declare 语句不允许
作为对象模块的 Public 成员
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
                                                                    [确定]      [帮助]
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 8# cmd1152
没有问题啊?
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

回复 9# HOPE2021


    他就是这样报,可能是我的VB有问题...
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 9# HOPE2021


    能不能给我一个正版的vb6.0(可以通过其他网盘发给我...)
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 11# cmd1152
那我先把我的网盘解冻...
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

本帖最后由 cmd1152 于 2021-10-7 11:34 编辑

回复 12# HOPE2021


    以下是聊天信息
   
2021-10-5

cmd1152 2021-10-5 11:27

对了


cmd1152 2021-10-5 11:27

你发我的VB精简版缺少好多文件


路过 2021-10-5 19:18

所以,才叫精简版啊


cmd1152 2021-10-5 19:36

..................

2021-10-7

cmd1152 2021-10-7 11:31  NEW

能不能发我一个正版vb6.0

2021-10-7

cmd1152 2021-10-7 11:31  NEW

编译正确的代码会出错?
http://www.bathome.net/viewthrea ... mp;extra=#pid246357
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 12# HOPE2021


     可是你的网盘需要登录
     没事,注册一下就好了!
     不对,网盘需要电话号码,你难道有电话号码?
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 14# cmd1152
下载链接:https://share.weiyun.com/Gecoi2nm
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

返回列表