Hiba történt! Nem működik a JavaScript!
A böngésződben le van tiltva a JavaScript futtatása, vagy nem támogatja a JavaScript használatát. Az oldal megfelelő használatához kérjük engedélyezd a JavaScript futtatását böngésződben,
vagy frissítsd egy újabb verzióra, amely támogatja a JavaScript-et:
Firefox, Safari, Opera, Chrome, vagy az Microsoft Edge legújabb verziója.

Parancsfájlban elérési út hiba

Tisztelt fórumtársak!
Magyar ékezetes betűkkel gyűlt meg a bajom.
Telepítettem egy programot, mely a fájlokat Add-Ons mappanévre teszi alapértelmezetten, mivel INT verzió.
Hogy a főprogram kezelni tudja a kiegészítőt , át kell helyeznem egy Kiegészítők nevű mappába.
Mivel nincs a programnak eltávolítója, létrehoztam egy parancssororos leírást.
Ami szépen teszi is a dolgát, míg el nem ér az ékezetes mappanévhez.

Kód

@Echo off
chcp 1250
cd /d %~dp0
cmd /c rmdir /Q /S "C:\Program Files\Graphisoft\Archicad 28\Kiegészítők\BIMmTool\"

Mit rontottam el, hogy nem találja a mappanevet?
Hálás köszönetem minden segítségért!
#1
szuper · 14 napja
A cmd alapértelmezetten a 437-es kódlapot (code page) használja, amely nem támogatja a magyar ékezetes karaktereket megfelelően.
Te ugyan beállítottad a chcp 1250 kódlapot, ami jó irány, de ez önmagában nem mindig elég, mert:
- a fájlrendszer elérési útvonalát még így sem biztos, hogy helyesen értelmezi a cmd.
- a fájlnevek és mappanevek kódolása és a cmd belső kezelése nem mindig kompatibilis.

A PowerShell v7.x jobban kezeli az ékezetes karaktereket.
Így írhatod át a parancsodat PowerShell v7.x formátumba:

PowerShell szkript (mentsd {valami}.ps1 fájlba):

Kód
# Mappa törlése PowerShell-lel
$path = "C:\Program Files\Graphisoft\Archicad 28\Kiegészítők\BIMmTool"
Remove-Item -Path $path -Recurse -Force


Másik megoldás: CMD-hez Unicode támogatás
Ha mégis ragaszkodsz a .bat fájlhoz és CMD-hez, ezt próbáld ki:

1. Állítsd át a kódlapot UTF-8-ra
Kód
@Echo off
chcp 65001
cd /d %~dp0
rmdir /Q /S "C:\Program Files\Graphisoft\Archicad 28\Kiegészítők\BIMmTool"

2. Mentés UTF-8 kódolással
A .bat fájlt mentsd el UTF-8 (BOM nélkül) formátumban, ezt a Notepad++: Kódolás → Kódolás UTF-8-ként (BOM nélkül) tudod elérni

A CMD még UTF-8 kódlappal is hajlamos félreérteni az ékezetes karaktereket, főleg, ha a betűtípus nem támogatja őket. Emiatt a PowerShell jobb és biztosabb megoldás.
#2
Impi2005 · 14 napja
Szuper 65001 kódja megoldotta a problémát.
Megint tanultam valamit Smile
A 852-es kóddal a probléma továbbra is fenn állt.
Hálásan köszönöm a gyors segítséget!

Hirdetés

Adatvédelmi irányelveink megváltoztak. Erről és a sütik használatáról itt olvashat

Online tagok: 0

Jelenleg nincs aktív tag.
  • 11 Vendég
  • 2 Tagok ma
  • 3 Szülinapos
  • 8,961 Összes tag

MegaDance

A hirdetés blokkolva lett. Kérjük amennyiben teheted, támogass minket legalább annyival, hogy oldalunkon feloldod a reklámszűrőt. Mindez neked nem kerül semmibe, az oldal fennmaradásában viszont sokat segíthet. Köszönjük szépen!