Very good! This displayed debugging information is very useful, and it should also be kept in the official version. Because this debugging information only appears when the command line is not recognized. It will not appear when things are correct. This information is far too useful in helping us determine the root cause of an error.
The root cause of this error this time is:
2F 79 20 0D
The /y parameter does not begin with a space, but with a slash. Rather wordy. This is obviously a Microsoft BUG: the space should be placed before the slash, but it placed it after the slash and y instead.
> My suggestion is that when GRUB.EXE runs, it should automatically check
> whether the first two characters of the command-line parameters are "--".
> If they are, but what follows is not a valid parameter it can accept (such as
> the current legal parameter config-file),
> then it should display GRUB's command-line usage; if the first two characters
> of the command-line parameters are not "--",
> then it should just run GRUB directly. How about that?
If the command line is like this:
--config-file=(hd0,0)/boot/grub/menu.lst/y /p /d /k AUTOEXEC
then it becomes bad. Note: (hd0,0)/boot/grub/menu.lst/y will be treated as a path, and this is a failing path.
So, the slash in "/y" must be changed into a carriage return. But how can the program know that this slash is not a path separator?
So now it's troublesome.
Previously, in " /d /k AUTOEXEC", the first character was a space, which was easy to judge; now there is no space before /y, which adds quite a bit of confusion.
因为我们亲手创建,这个世界更加美丽。