Metin2 Hungarian Forum

Metin2 => Szerver készítés => Privát szerverek => Segítség => A témát indította: Xeron Dátum 2018-04-26, 19:48:29

Cím: [C++] Elérés tíltása.
Írta: Xeron Dátum 2018-04-26, 19:48:29
Sziasztok!

Egy gyors kérdésem lenne felétek.

Valakinek van e tipp arra hogy miért nem tíltja nekem a D://ymir work elérést ha meg írtam neki userinterfaceba a kódot.

Userinterface.cpp
Ez alá:
int Setup(LPSTR lpCmdLine); // Internal function forward

Ezt írtam:
bool IllegalAccesCheck()
{
const char* CheckFolder;
CheckFolder = "D:\\ymir work";
struct stat st;
if (stat(CheckFolder, &st) == 0)
{
LogBoxf("FATAL ERROR! Töröld ki a mappát vagy nevezd át! : 'D:\\ymir work'");
return true;
}
return false;
}


Elméletileg ennek tökéletesen kéne működnie. Azaz nem szabadna hogy meg nyíljon maga a kliens.

A válaszokat előre is köszönöm!
Cím: Re:[C++] Elérés tíltása.
Írta: Chookez Dátum 2018-04-26, 20:00:00
Próbáld így:

bool PackInitialize(const char * c_pszFolder)
{
NANOBEGIN
string block_folder;

block_folder == "D:\\ymir work";

struct stat st;
if( stat( "D:\\ymir work", & st ) == 0 )
{
LogBoxf("MESSAGE");
return true;
}
Cím: Re:[C++] Elérés tíltása.
Írta: Xeron Dátum 2018-04-26, 20:02:39
Idézetet írta: Chookez™ Dátum 2018-04-26, 20:00:00
Próbáld így:

bool PackInitialize(const char * c_pszFolder)
{
NANOBEGIN
string block_folder;

block_folder == "D:\\ymir work";

struct stat st;
if( stat( "D:\\ymir work", & st ) == 0 )
{
LogBoxf("MESSAGE");
return true;
}



Köszi próbálom!
Cím: Re:[C++] Elérés tíltása.
Írta: 5310pati Dátum 2018-04-26, 20:03:03
Több módja van h kivédd, a kód elv jó, kérdés h meg is hívtad-e a kellő helyen h blokkolja az indítást.
Esetleg megpróbálhatod ezzel is:
if (GetFileAttributesA("D:\\ymir work") & FILE_ATTRIBUTE_DIRECTORY)
Cím: Re:[C++] Elérés tíltása.
Írta: Xeron Dátum 2018-04-26, 20:03:31
Így sem jó :/

Üzenet összefésülés: 2018-04-26, 20:04:15

Idézetet írta: 5310pati Dátum 2018-04-26, 20:03:03
Több módja van h kivédd, a kód elv jó, kérdés h meg is hívtad-e a kellő helyen h blokkolja az indítást.
Esetleg megpróbálhatod ezzel is:
if (GetFileAttributesA("D:\\ymir work") & FILE_ATTRIBUTE_DIRECTORY)


Ezt is meg lesem hátha. :D
Cím: Re:[C++] Elérés tíltása.
Írta: 5310pati Dátum 2018-04-26, 20:05:08
Akkor vagy rossz helyre rakod vagy ha külön fv-ként rakod be akkor elfelejted meghívni vagy rossz helyre rakod és ezért nem jókor hívódik meg a fv.
Cím: Re:[C++] Elérés tíltása.
Írta: Xeron Dátum 2018-04-26, 20:11:54
Írtam már ilyet és eddig mindig jó volt. Most viszont bárhogy próbálom sehogy sem fogadja el. Nem akarja meghívni magát a fügvényt.

Üzenet összefésülés: 2018-04-26, 20:13:33

Van egy kép kliens indításakor. Megjelenik egy kép mi elött el indítom a klienst nem lehet hogy az be zavar?
Cím: Re:[C++] Elérés tíltása.
Írta: [MOD]Linos Dátum 2018-04-27, 22:39:15
Jó helyen van az a Setup() alatt. De valahol meg is kéne hívni!

Mondjuk a WINMAIN funckióba. (--hackshield-re keress rá, és fölé) IllegalAccesCheck();
Cím: Re:[C++] Elérés tíltása.
Írta: Xeron Dátum 2018-04-28, 09:56:06
Áh megvan értem már mi is a baj! Köszi Zárom:D

Üzenet összefésülés: 2018-04-28, 09:56:34

Megy a +
EhPortal 1.39 © 2025, WebDev