[MEGOLDVA]Windows 7 command.com honnét szedi a path-ot?

Sziasztok!
Mindenki elnézését kérem, nem nosztalgia miatt foglalkozom a témával.
Windows 7 alatt sikerült megoldanom dokk program problémát: http://hup.hu/node/126986
Átkerült egy másik gépre a program, ahol meg egy szintén hasonló programmal kellett kavarnom.
A lényeg az, hogy 3 gépen, ami egy munkacsoportban van, 2-n elindul a dokk nevű, clipperes program, ami amúgy command.com-ban futtatja a progit. Viszont a 3-on amin a másik clipperes progit futtattam a dokk.bat fájl alól elindul egy command.com alkalmazás, ami nem tudom honnét, de set PATH=xxxx dolgokat olvas be valahonét és ki is írja az outputra. Nem tudom, a command.com honnét szerzi ezeket. C:\window\system32\autoexec.nt-ben nincs ilyen. System és User Enviroment valuable alatt sincs ilyen útvonal.
Van valami speciális fájl, ahonnét a command.com elindít valamit?

Hozzászólások

Szerintem ha set path, akkor az nem beolvas, hanem beállít, és azt, ami a bat file-ban van. És azért írja ki, mert nincs az elején @echo off.

Amúgy meg szerintem nem valuables, hanem variables.

Amúgy nem igazán értem hogy mi a problémád, de remélem ez segített valamit.

Tehát pontosítok:
Z: hálózati meghajtóként van felcsatolva egy dokk nevű könyvtár, annak a dokk.bat-ját futtatom az asztalról ikonról (mivel csak ott lehet beállítani a betűméretet úgy, hogy majdnem teljes képernyőről menjen). Amelyik gépen van ez a dokk könyvtár, illetve még két gépen Z:-ként felcsatolva, minden további nélkül működik ez a program.
Egy gépen viszont -ahol használok egy c:\menza6 könyvtár alatti szintén parancssoros programot- ha indítom a dokk.bat-ot az asztalról, akkor set path = menza6; menza6; menza6 .... üzenetekkel indul, valószínűleg emiatt átáll a kódlap és nem ír ékezetes betűket a dokk nevű program (pedig kéne)

Miféle command.com? Meg miféle autoexec.nt? Nem MS-DOS ez már plz. :)

C:\Users\saxus>command.com
'command.com' is not recognized as an internal or external command,
operable program or batch file.

Egyébként sajátgép tulajdonságai, advanced system settigns, environment variables és TADA.WAV.

----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™

Közben amúgy megnéztem, a 32 bitesben valóban van, ami ügye szükséges, ha az ember DOS-os programokat akar futtatni, lévén, hogy a W7x64-nél kukázták a 16 bites alrendszert. Jelentősége mondjuk nem sok, a háttérben gondolom ugyanúgy a cmd.exe fut.

----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™

Ennel azert árnyaltabb a kep. Notimban alapbol 4G ram volt, az OSX meg memoriaigenyes allat, igy 32 bitest W7-et raktam fel a Parallelsbe, mert az valamivel kevesebb rammal is beéri. Persze, most mar, hogy beletoltam 16G-t, inkabb hatrany, de lusta vagyok ujrahuzni, a legtobb dologhoz, amire kell meg eleg a 4G/2G userspace.

Masik dolog meg, hogy nem csak DOS van a vilagon, par eve kerestem valami egyszerű aramkorrajzolo programot, ami tud timing diagrammot is rajzolni. Vege az lett, hogy ra kellett jönnöm, hogy az egyetemen kokorszakinak tartott Xilinx nem is annyit rossz es annal maradtam. Maga a rogram talan 32 bites (javarészt), de mar pl. a telepítő sem indult el, mert az meg Win3.x-re lett irva. Vege az XP mód lett.

Szóval itt nem csak a DOS-ról van szó. Persze, ahol ilyen programok production környezetben futnak, ott nyilvan nincs OS upgrade, nekem ez csak hobbiból kellett.

----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™

Semmi gond. DOSBOX nálam is felmerült, csak a nyomtatás meg a net use-os lpt1-re felcsatolt megosztott usb nyomtatóval megy, nem tudom azt hogy lehetett volna megoldani.
De mindegy, jövőre már kukázzuk a programot -ha jól tudom az államkincstár is- csak még ez az egy-két hónap kellene az év végi könyveléshez.

A kérdésedre a válasz: a registryben a HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment alatt nézd meg.

--
Coding for fun. ;)

De komolyan, van erre UI... Ennyi idő alatt már hatvanezerszer ki lehetett volna keresni, hogy "environment variables windows 7" és rábökni az első találatra...

http://www.nextofwindows.com/how-to-addedit-environment-variables-in-wi…

----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™

És úgy egyébként itt tudnád a path-ot módosítani:

"Windows 7 esetében a következő leírást kövessük. Sajátgép ikonon kattintsunk a jobb egérrel, keressük meg a Tulajdonságok menüt. Itt keressük meg bal oldalt a Speciális rendszerbeállítások linket. Itt a Speciális fülre kattintva alul megtaláljuk a Környezeti változók gombját. A felbukkanó ablak alsó Rendszerváltozók keretében görgessünk le a Path sorig. Ekkor jelöljök ki és kattintsunk a Szerkeszt gombra. Itt a Változó értéke sor legvégére illesszünk be egy pontosvesszőt ( ; ) szóköz nélkül, majd másoljuk utána az adott mappának az elérését. Végül OK-ézzunk le minden ablakot."

Nos akkor:

itt egy kép, cmd alól kiíratva a path-ot.
Itt a command.com elindítás után Ez azért lényeges, mert a dokk-ot indítva asztalról szintén ezt írja ki indulásnál, utána elindul a program, de mint mondtam, ékezetes betűket nem ír. Magyarán ezért gondolom azt, hogy a command.com-ba fut a program.
Ez pedig a command.com-ból lekérdezve a path-ot.
Ez csak ezen a gépen látszik így, egyéb gépen ugyanaz a path változó cmd-ből vagy command-ból lekérdezve.
Ez pedig a Windows Vezérlőpult alatt a Path változó, kimásoltam a jegyzettömbbe, hogy lássátok mit tartalmaz, ugyanazt, mint a cmd.exe alól lekérdezve. Ugyanez van amúgy a registry-ben is.

Nem én használom. Asztalról indítom hálózati meghajtóról a Z:\dokk.bat-ot. Láttam, hogy valami felvillan a dos ablakban, mikor indítom, a képernyőről csináltam vlc-vel egy mentést az indításról, amit kikockázva láttam, hogy ugyanazok a sorok jelennek meg, mint mikor a command.com-ot elindítom a WIN+R ablakból. Ebből gondolom, hogy a command.com-ot használja a Windows. Azt meg egy internetes fórumon találtam, hogy ha valamit kihány egy program a command.com ablakba, akkor nem működnek az ékezetes betűk.
Registry-ben néztem ezen a gépen, a cmd.exe a parancsértelmező.

Na most Win7 (ill barmely NT alatt) az ntvdm nevű virtualis gep fog neked egy kb. 5.0-as MSDOS-nak megfelelő valamit, amihez jobban utánanézve valóban a command.com-ot futtatja, mint egy rendes virtuális gép megtuningolva néhány dologgal (pl. IO kivezetése Win32-be, stb.) Végeredményben tökmindegy, hogy mit csinálsz az ntvdm által futtatott virtuális gépet kapod.

Egyébként az is opció, hogy a fájl legelején megadod a PATH=xyz-vel, hogy mi legyen a PATH-ban és akkor adott ntvdm process futása erejéig felül fogja csapni a környezeti változót.

Viszont ha a dokk.bat végére beírsz egy "pause"-t, nem kel VLC-vel bohóckodni. Vagy ha cmd-ből indítod.

----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™

Nos, nagyon egyszerű, ugyanakkor bosszantó volt a hiba oka. Nem vettem észre, hogy a notepad++-al nem a c:\windows\system32 alatti autoexec.nt-t szerkesztettem, hanem egy autoexec.nt.txt-t. Mikor megnyitottam az editor-t, automatikusan ezt nyitotta meg. Most valamiért parancssorból nyitottam meg edit-el az autoexec.nt fájlt, akkor tűnt fel a dolog. Valamiért ennek az elején volt vagy 30 c:\menza path megadva, meg hiányzott a karakterkódolás, ország beállítás. Én hiába állítottam bármit az autoexec-emben, nem jó helyen állítottam. A program elinduláskor meg tényleg felülírta a system és user path-ot.