|
궁금한게 많아서여;;; 오늘도 질문좀 하려고 합니다.
동작하는데는 크게 문제가 없는데 왠지 타이머를 많이 쓰면 안될거 같아서요
아래처럼 cmd를 실행하려고 하는데 cmd모드를 너무 빨리 실행시켜서인지는 잘 모르겠지만
가끔 route.exe 응용프로그램 오류가 뜹니다.
그래서 timer로 두개를 나누었더니 해결이 되더군여 그런데 문제는 밑에 if문이 한두개가
아니라 여러개가 있어서요.. timer 갯수만 늘려서 해결하려니 해결하는 방법이 어려운게 아니라
왠지 쫌 꺼림찍하더라구여...
그래서 질문드립니다. 위쪽 if문이랑 아래쪽 if문이랑 다른 타이머나 통신포트쪽에 지장주지 않고
0.1초의 시간을 줄수 있는 방법이 없을까여? 물론 timer 여러개로 사용하는거 빼구여
좋은 방법좀 알려주셨으면 합니다.
그럼 이만..
if(Label10->Caption!="0.0.0.0")
{
sprintf(cmd_0,"route add 0.0.0.0 mask 0.0.0.0 %s metric 4",Label10->Caption);
STARTUPINFO si3;
PROCESS_INFORMATION pi3;
ZeroMemory( &si3, sizeof(si3) );
si3.cb = sizeof(si3);
CreateProcess( NULL, cmd_0, NULL, NULL, FALSE, DETACHED_PROCESS, NULL, NULL, &si3, &pi3 );
}
if(Label11->Caption!="0.0.0.0")
{
char *addr1 = Label11->Caption.c_str();
long addrVal = inet_addr(addr1);
IN_ADDR temp;
temp.s_addr = (addrVal & maskVal) | addVal;
sprintf(cmd_1,"route add 0.0.0.0 mask 0.0.0.0 %s metric 3",inet_ntoa(temp));
STARTUPINFO si4;
PROCESS_INFORMATION pi4;
ZeroMemory( &si4, sizeof(si4) );
si4.cb = sizeof(si4);
CreateProcess( NULL, cmd_1, NULL, NULL, FALSE, DETACHED_PROCESS, NULL, NULL, &si4, &pi4 );
}
|