시스템에 Wine 디버그 플래그가 있는 경우 이 방법 사용 설명서가 문제를 해결하는 데 도움이 될 것입니다.

승인됨

  • 1. ASR Pro 다운로드
  • 2. 프로그램을 열고 "컴퓨터 스캔"을 선택하십시오.
  • 3. 복구 프로세스를 시작하려면 "복구"를 클릭하십시오.
  • 클릭 한 번으로 PC를 수리할 수 있는 소프트웨어를 다운로드하세요. 지금 다운로드하세요.

    ~에서

    이 블로그 페이지 번역: 포트가 실행되지 않습니다. 번역가, 토론 문서를 참조하십시오.

    승인됨

    ASR Pro 복구 도구는 느리게 실행되거나 레지스트리 문제가 있거나 맬웨어에 감염된 Windows PC를 위한 솔루션입니다. 이 강력하고 사용하기 쉬운 도구는 PC를 신속하게 진단 및 수정하여 성능을 높이고 메모리를 최적화하며 프로세스의 보안을 개선할 수 있습니다. 더 이상 느린 컴퓨터로 고통받지 마세요. 지금 ASR Pro을 사용해 보세요!


    WINEDEBUG는 전문가들이 말하는 기후 변수이며 디버그 메시지도 생성 및 비활성화합니다.

    구문

     WINEDEBUG = [클래스] [+/-] 유튜브 채널 [, [클래스2] [+/-] 채널2]

    그룹은 선택 사항이며 추적, 조언, 실수 또는 수정과 같은 옵션 중 하나일 수 있습니다. 가장 엄격한 것부터 가장 엄격한 것까지 가장 낮은 등급입니다. Follow는 정상적인 프로그램의 일부로 전달하는 코드 경로에 사용됩니다. warn은 오류를 유발할 수 있지만 상위 수준 부분에서 조금 더 잘 처리될 가능성이 있는 경로에 항상 사용됩니다. 오류는 오류가 필요할 때 확실히 이어질 소프트웨어 경로를 사용한다는 것입니다. Fixme는 Wine에 구현되지 않은 프로모션 코드 경로에 사용됩니다. 단순히 기본적으로 실수를 하고 Fixme가 켜져 있습니다. 모든 클래스 없이 채널이 지정되면 자신의 모든 클래스가 포함되어야 합니다.

    각 채널은 특정 적포도주 제품에 대한 정보를 인쇄하는 데 사용됩니다. 다음 항목은 사용자 정의로 판명될 수 있습니다.no + 또는 -는 지정된 채널을 켜거나 끄는 것이 현실입니다. 조기에 수업의 일부가 거의 없거나 전혀 없다면 표제 +를 무시할 수 있습니다. 확장자가 있는 경우 공백 메모는 허용되지 않습니다.

    wine debug flags

    활성화 또는 비활성화할 모든 디버그 채널을 식별하는 채널입니다. 파이프의 전체 목록을 보려면 위치 찾기 사이트 명령을 사용하여 봅니다.

    와인 디버그 플래그

     grep -r --include = '*. 자르기 '--포함 =' *. h '' WINE _  (DEFAULT  | DECLARE ) _ DEBUG_CHANNEL 'dll / 운동 /

    그리고 훨씬 더 많은 작업을 추가하기 위해 BASH에 정렬되고 형식이 지정된 목록이 있습니다(이 중요한 구성의 끝에서 숫자 26을 볼 보조개 취향에 맞게 변경할 가능성이 높음):

    $의 모드 이름에 관한

     (프로그램 대 dll 찾기 / -mindepth 일부 고통받는 사람 -유형 d 정렬); | 만들다  $ 일치 (grep -rE --include 의미 '*. [ch]' '^ WINE_ (DEFAULT | DECLARE) _DEBUG_CHANNEL' $ mod_name n        | awk -F "[()]" '수입 2 인쇄' | 정렬 | 홀로) n        | awk -v mod_name은 $ mod_name 'if (NF> 0) printf("% - * s% vertisements  n", 26, mod_name ":", 0)'와 같습니다.했다

    WINEDEBUG는 경고 + 모두

    와 같습니다.

    는 FIXME 메시지와 비교하여 이미 활성화된 ERR 메시지 이상의 모든 채널에 대한 WARN 메시지를 나타냅니다.
    WINEDEBUG = Fixme-all, 경고 + 커서, + 제공
    는 모든 교환 메시지(API 호출)를 포함할 뿐만 아니라 커서 WARN 문(메시지가 있는 FIXME ERR보다 우선)을 포함하는 FIXME 링크의 모든 것을 비활성화합니다.
    WINEDEBUG = + 제공
    는 모든 메시지 전송을 포함합니다. 응용 프로그램 및 DLL 활성화 또는 제외에 대한 대부분의 제어를 위해 [HKCU Software Wine Debug] 레지스트리 통합 아래의 릴레이 개요를 확인하십시오(아래 유용한 레지스트리 키 및 연구 조사 참조).
    WINEDEBUG = -d3d
    d3d는 모든 메시지를 비활성화하고 회사 후 GL 건너뛰기 검사도 비활성화합니다. 이렇게 하면 성능이 향상될 수 있습니다.

    유용한 채널

    • + all : 모든 것을 기록합니다. 대부분의 경우 많은 정보를 제공하므로 미묘한 문제를 해결하는 데 확실히 유용합니다.
    • + heap: 특정 프로그램에서 모든 활동 힙을 추적하고 절대적으로 일관된 구조 검사를 가능하게 합니다. 애플리케이션이 일반적으로 힙을 정리하는 경우 + 릴레이, + 힙 추적을 포함할 수 있습니다. 큰 불일치가 발견되면 Wine은 프로그램을 종료하기 위해 질량의 내용을 플러시합니다. 대부분의 측면이 손실로 이어질 수 있지만 가장 일반적인 내부 버퍼 오버플로는 Wine으로 인해 발생합니다. 이 채널도 기억하세요. 모든 Wine 모드에는 HeapAlloc / HeapFree API가 필요합니다. 주된 이유 중 하나를 사용하는 것은 일반적으로 Wine의 내장 힙이 단순히 디버깅에 유용하기 때문입니다. Can + heap이 프로그램 속도를 많이 저하시키거나 매우 큰 로그 파일을 가질 수 있다는 점에 유의하십시오. Wine이 잠재적으로 힙을 손상시킬 수 있다는 우려가 있지만 괜찮지 않은 경우 + 힙 경고가 힙 보호를 켜지만 모든 청크를 추적하지 않고 무료입니다.
    • + loaddll : DLL로 로드된 각 단일 Ace를 보고합니다.
    • + 메시지: + 릴레이와 관련하여 아이 플러그인을 통해 창 경로로 보낸 메시지를 기록합니다. msg를 사용하여 모든 메시징 API를 연구하십시오.
    • + msgbox : MessageBox()에 대한 모든 호출의 주제. 많은 프로그램이 MessageBox()를 사용하여 사고에 대한 정보를 표시합니다. 이 모든 정보를 사용 가능한 형식으로 신속하게 수집해야 할 수 있습니다.
    • + pid: 디버그 출력의 거의 모든 줄에 생성된 특정 프로세스와 관련된 모든 종류의 식별자를 접두사로 붙입니다. 이것은 다중 프로세서 응용 프로그램을 디버깅할 때 유용할 수 있습니다.
    • + relay : Web Wine 템플릿 모듈 DLL 제한보다 오래 걸리는 모든 가져오기를 기록하여 DLL(비기본) 간의 호출을 제공합니다. 채널 이것은 최악의 상황을 이해하지 못하더라도 첫 번째 정류장인 경우가 많습니다. 적절한 DLL 내에서 Wine 모듈의 모든 호출 및/또는 출력을 보여줍니다. 특정 기능 사이에 과부하가 걸린 경우 Wine Registry([HKCU Software Wine Debug] 아래)에서 사용할 수 있는 RelayInclude 및 RelayExclude 행과 함께 생성을 확인하십시오. 이 프랜차이즈는 이미 정기적으로 호출되는 함수로 거의 가득 차 있지만 일반적으로 학교가 실패한 이유 때문에 단서를 제공하지 않습니다. 기본 DLL이 있는 + Relay + Snoop이 필요하지 않습니다! 이것은 많은 DLL을 사용한 구현을 보여줄 수 있습니다. 즉, 소비자를 구현하기 위해 작성하는 할인 코드는 클린룸 리버스 엔지니어링 기준을 위반해야 합니다. 프로토콜
    • + seh : Windows 예외(구조적 예외 처리). 현재 매우 양호할 때 호출됩니다. 응용 프로그램이 잘못된 작업을 수행하고 있거나(즉, 프로시저가 실패함) if 장치가 자체 예외를 처리할 때 호출됩니다. Wine UNIX 신호를 SEH 예외로 변환하고 이 파이프를 통해 출력합니다. 전략이 종종 자신의 충돌 장소를 차례로 강제로 인스턴스로 가져오기 때문에 이것은 의심할 여지 없이 유용할 것입니다. 주의해야 할 가장 가능성이 높은 예외는 STATUS_ACCESS_VIOLATION 및 0xC0000005이며, 이는 Win32의 세그먼테이션 죄책감에 가장 가까운 것입니다. 일부 헤더에 없는 코드도 찾을 수 있습니다. 이는 일반적으로 EXE에 사용되는 거의 모든 컴파일러에서 사용되지 않는 언어별 예외입니다. 인수를 위해 0xEEDFADE는 내부 Delphi 예외를 발생시키는 코드이고 0xE06D7363은 이 규칙에 대한 Microsoft Visual C++ 예외가 아닙니다. 이는 (info [0]) 0x19930520에 대한 마법 같은 값입니다. 당신이 단순히 데이트하는 것처럼 보이기 때문에 고려할 것입니다. 소비자에게 이러한 예외가 표시되는 경우 이 유용한 방법은 범위 Win32 API가 종료와 함께 0이 아닌 지침을 반환했음을 의미할 수 있습니다.
    • + server : 각 RPC Wineserver를 표시합니다. 일반적으로 필요하지 않지만 Wineserver 문제를 해결할 때 유용할 수 있습니다.
    • + snoop : 네이티브 DLL 간의 함수 호출만 구독합니다. 이것은 매개변수가 전달되지 않기 때문에 이 파이프가 더 적은 팁을 제공하지만 Aber + Relay가 두 개의 기본 DLL 사이에서 작동하는 방식과 유사합니다. + snoop은 또한 배터리를 지불하고 추가 제약 조건을 추측하기 위해 바로 Prolog 기능을 구문 분석하기 때문에 장치를 불안정하게 만들 수 있습니다. 자신의 DLL과 함께 + Snoop과 함께 + Relay를 사용하지 마십시오! 또한 모든 DLL에 대한 구현을 보여줍니다. 이는 이러한 항목을 구현하기 위해 작성하는 많은 코드가 클린룸 리버스 엔지니어링 핵심 사항을 위반한다는 것을 의미합니다.
    • + 동기식: X11을 동기식으로 스파크
    • + timestamp: 거의 모든 디버그 결과에 해당 행이 실행된 경우 타임스탬프가 있는 행을 접두사로 붙입니다. 이것은 귀중한 디버그 prouesse 문제여야 합니다.
    • + 1인칭 슈팅 게임: OpenGL 또는 d3d 애플리케이션인 Vulkan용 터미널에서 매 초마다 프레임 수를 입력합니다.

    더 많은 디버깅 팁

    • 멋진 프로그램이 스토리 형식을 표시하고 작동하지 않으면 오류, 노력 릴레이, msgbox 추적의 원인을 알 수 없습니다. 그런 다음 가장 사랑받는(덜 좋은) 편집기나 텍스트 뷰어에서 대부분의 디버그 로그를 열고 추가로 trace: msgbox를 검색합니다. 전문가에게 MessageBox API를 요청하기 전에 가장 중요한 릴레이 정보와 사실을 검토하십시오. 주요 문제는 실패 전에 발생한 호출 때문이 아닐 수도 있습니다. 실패한 API 호출에 대한 자세한 내용을 숙지하고 Windows API가 최소한 매일 코드에 연결된 정확한 값을 반환한다는 사실을 잊지 마십시오. 개별 API가 실제로 사용하는 것을 찾으려면 를 사용하기만 하면 됩니다. 많은 다른 회사가 페널티를 반환하고 실패 시 0을 반환하지만 일부는 대조 규칙을 사용합니다.
    • 프로그램이 완벽한 이유 없이 시작되지 않으면 큰 small + all을 사용할 수 있습니다. 또한, 당신의 프로세스가 API 호출의 야외에서 충돌을 일으키고 싶어하는 것 같다면, 몸체에서 마운트 지점으로 제거된 일부 매개변수에 액세스할 때 누가 누구인지 방문하기 위해 [디스어셈블리 디스어셈블리]를 시도할 것입니다(예를 들어, Keeper’s Dungeon은 귀하의 가족은 argv [0]에 대해 절대적으로 적합한 경로 없이 실행합니다.

    + 릴레이를 덜 장황하게 만들기

    소프트웨어가 실행되는 동안 Tracphone의 몇 가지 대화 시간 후에 나타나는 요소를 찾고 있다면 + 릴레이가 너무 장황할 수 있습니다. 이 경우 한 번 실행한 다음 다음과 같은 프로그램을 통해 신호를 보내십시오.

     # 빠르게 grep 해제언어 = C# 최고의 통화 찾기freq = `grep ten haya: Ret haya | sed 의 모두 /(.*//; s /.* //' | 개발 | uniq -c | 정렬 -n | 정복 | awk 'print rr 2' | tr ';' '채팅 ' 012'> silent.reg << _EOFREGEDIT4[HKEY_CURRENT_USER  소프트웨어  와인  디버그]"RelayExclude" = "ntdll.RtlEnterCriticalSection; ntdll.RtlTryEnterCriticalSection; ntdll.RtlLeaveCriticalSection; kernel32.48; kernel32.49; kernel32.94; kernel32.95; kernel32.96Tls32.976el29; 오류_EOFRegedit 조용한.reg 와인

    이것은 Wine이 궁극적인 애플리케이션에 대한 10번의 빈번한 호출을 기록하지 않도록 지시하므로 통신 로그를 보다 쉽게 ​​관리할 수 있습니다.

    참조

    • 환경 변수: WINEDEBUG - Wine 사용자 매뉴얼 챕터
    • WineAPI 문서 - 사용된 디버그 채널은 의심할 여지 없이 각 개별 기능에 대해 가장 많이 나열됩니다.

    <시간>

    클릭 한 번으로 PC를 수리할 수 있는 소프트웨어를 다운로드하세요. 지금 다운로드하세요.