Access에서 프로그램에 명령을 수신 할 수 없다고보고하는 이유는 무엇입니까?


9

방금 Windows 7로 업그레이드했으며 MS Office를 다시 설치하면 흥미로운 오류가 발생합니다. 데이터베이스를 클릭하면 "프로그램에 명령을 전송하는 데 문제가 있습니다"라는 팝업 메시지가 표시되지만 파일 응용 프로그램이 계속 시작되고 올바른 데이터베이스가 열립니다.

누구든지 이런 것을 본 적이 있습니까?

이 문제를 조사한 다음 해결하려면 어떻게해야합니까?

참고 : Zone-Alarm을 사용하지 않습니다. 이 문제에 대한 대부분의 온라인 검색은 Zone-Alarm을 사용하여 문제를 논의하는 다양한 사이트 및 MSKB 기사를 반환합니다.

해결 : Mihi 덕분에 --- 레지스트리 키를 ddexec에서 NOddeexec로 이름을 바꾼 후에도 문제가 사라졌습니다. DDE가 왜 깨 졌는지 확실하지 않지만 지금은 잘 작동합니다.


데이터베이스 파일 자체 또는 바로 가기를 클릭하고 있습니까?
JohnFx

데이터베이스 파일 자체를 클릭하고 있습니다.
노아

다른 방화벽을 사용하고 있습니까?
harrymc

표준 Win-7에만 방화벽이 포함되었습니다. 또한이 파일은 MyDocuments의 하위 디렉토리에있는 로컬 드라이브에 있습니다.
Noah

관리자로 로그인 했습니까? UAC를 완전히 끄려고 했습니까?
harrymc

답변:


2

이 문제가 있었지만 특정 사무용 제품에만 해당됩니다 (예 : Excel 및 Word는 작동하지만 Access는 메시지와 함께 실패 함).

다음은 Windows 7-64 비트에서 문제를 해결 한 방법입니다 (Vista에서도 작동 할 수 있음).

참고 : 이 솔루션에는 시스템 레지스트리 편집이 포함됩니다. 레지스트리를 잘못 편집하면 운영 체제가 손상 될 수 있으므로주의하십시오!

Windows 7 (Regedit)과 함께 제공된 레지스트리 편집기 사용

  • 현재 연관에 대한 레지스트리의 확장 키를 확인하십시오.
  • HKEY_CLASSES_ROOT\.mdb (Office 2007을 다루고 있었지만 관심있는 파일 확장자 항목을 찾으십시오) .
  • 검사 (Default)에서 다음 키를 찾아 값 항목을 HKEY_CLASSES_ROOT이에 의미 (내 경우에는이 Access.MDBFile입니다) .
  • 하위 키를 찾아서 shell삭제하십시오 (위의 경고 참조).
  • 돌아가서 열려고하는 파일을 찾으십시오. 이제 파일을 열 프로그램을 선택하라는 메시지가 표시됩니다. 이 시점에서 파일을 열기 위해 사용할 Office 프로그램과 완료 한 Office 프로그램을 찾으십시오.

이 작업을 수행 한 후 내 설정을 확인한 Access.MDBFile결과 레지스트리 의 키가 변경 되었음을 알았 으며 이제 CLSID파일 연결의 새 홈을 가리키는 키가 있습니다.

  • 서브 키 CLSID (내 경우는 HKEY_CLASSES_ROOT\Access.MDBFile\CLSID, (Default)값이었다 {73A4C9C1-D68D-11D0-98BF-00A0C90DC8D9}) .
  • find를 사용하여 CLSID (중괄호 제외) 검색을 수행하기 전에 Look at-> 아래를 확인하십시오 (필자의 경우 키 는 다르지만 내 예제는 32 비트 버전의 Office 2007을 처리하는 64 비트 시스템에 대한 것입니다) .KeysHKEY_CLASSES_ROOT\Wow6432Node\CLSID\{73A4C9C1-D68D-11D0-98BF-00A0C90DC8D9}
  • 이 참조는 In-process 서버를 사용하여 응용 프로그램을 시작하는 "Microsoft Office Access 응용 프로그램"에 대한 것으로,이 방법을 사용하여 Access 파일 연결을 수정했습니다.

6

기본적으로이 오류는 파일 형식이 파일을 열 때 DDE (동일한 컴퓨터에서 실행되는 응용 프로그램 간 이전 Windows-3.x 스타일 통신 프로토콜)를 사용하도록 설정된 경우에 나타납니다.

탐색기의 폴더 옵션에서 파일 형식으로 찾을 수 있습니다 (Windows 7의 다른 곳일 수도 있지만 관리자가 어떤 프로그램으로 열 파일을 설정할 수있는 곳이있을 수 있습니다).

"DDE 사용"옵션을 선택하면 Windows는 먼저 프로그램이 이미 실행 중인지 확인한 다음 (있는 경우) DDE 메시지를 보냅니다 (3 개의 텍스트, "응용 프로그램", "주제"및 "메시지"로 구성됨). ). 이렇게하면 이미 실행중인 경우에도 프로그램을 다시 열지 않아도됩니다. 프로그램이 실행되고 있지 않으면 정상적으로 시작됩니다. DDE 연결이 실패하면 언급 한 대화 상자가 나타나고 프로그램을 정상적으로 다시 시작합니다.

따라서 가장 쉬운 수정은 데이터베이스의 파일 확장자에 대해 "Use DDE"를 비활성화하는 것입니다 (.mdb). 이것의 유일한 단점 : 데이터베이스를 열고 Access가 이미 실행 중이면 Windows는 두 번째 Access 인스턴스를 열고, 첫 번째 인스턴스를 확인한 후 DDE 메시지를 보내고 종료합니다. 나. 한 번에 다시 닫을 수 있도록 Access를 불필요하게 시작하고 있습니다. 그러나 요즘 빠른 CPU와 하드 디스크를 사용하면 이것이 허용됩니다. :-)

더 복잡한 수정은 이러한 설정에서 잘못된 항목 (예 : 잘못된 주제 또는 잘못된 응용 프로그램)을 확인하고 수정하는 것입니다. 이렇게하면 DDE 구성을 비교할 수 있도록 파일을 여는 다른 가상 머신에 액세스 할 수 있어야합니다.

편집 : 이 웹 사이트 에 따르면 Vista에서 해당 탭이 삭제되었습니다. 레지스트리에서 항상 수동으로 수행 할 수 있습니다. HKEY_CLASSES_ROOT\.mdb기본값 (예 :)을 mdbfile찾은 다음 해당 기본값 ( HKEY_CLASSES_ROOT\mdbfile\shell\open\ddeexec)을 확인하십시오.


다른 작업중인 컴퓨터에 액세스 할 수 있습니다. DDE 구성을 어디에서 비교하려고합니까?
노아

@Noah : Windows 탐색기에서 도구-> 폴더 옵션으로 이동하십시오. 파일 형식 탭을 클릭하십시오. mdb 파일 유형을 찾으십시오. 고급을 선택하십시오. "열기"동작을 클릭하고 "편집 ..."을 선택하십시오. 이것을 다른 워크 스테이션과 비교하는 경우 다른 워크 스테이션이 DDE를 잘 사용하고있을 수 있지만 워크 스테이션이 제대로 작동하지 않으므로 워크 스테이션을 선택 해제하고 작동하는지 확인하십시오 (재부팅 후).
Andy

Windows 7에는 "폴더 옵션"탭이 없습니다.
Noah

mydigitallife.info/2008/06/20/… 에 따르면 해당 탭은 Vista에서 삭제되었습니다. 레지스트리에서 항상 수동으로 수행 할 수 있습니다. HKEY_CLASSES_ROOT \ .mdb에서 기본값 (예 : mdbfile)을 찾은 다음 해당 기본값 (HKEY_CLASSES_ROOT \ mdbfile \ shell \ open \ ddeexec)을 확인하십시오.
mihi

이 마지막 주석을 답변에 추가 할 수 있습니까?
노아

2

다음은 Access 2002에서 찾은 솔루션입니다. 다른 버전의 Access에서도 비슷합니다.

  1. 오픈 액세스
  2. 도구를 클릭하십시오
  3. 옵션을 클릭하십시오
  4. 고급 탭을 클릭하십시오
  5. "DDE 요청 무시"옆의 확인란을 선택 취소하십시오.
  6. 액세스 닫기

그것은 나를 위해 일했다! 더 이상 "프로그램으로 명령을 보내는 중에 문제가 발생했습니다." 오류.

다른 버전의 Access의 경우 "DDE 요청 무시"옵션이 약간 다르게 표시 될 수 있지만 적절한 것을 찾을 수 있어야합니다.

이것이 동일한 문제를 가진 다른 사람들에게 도움이되기를 바랍니다.


1

설치된 오피스 폴더에. excel / winword .exe를 마우스 오른쪽 버튼으로 클릭하고 속성을 선택하십시오. 호환성 탭을 선택하고 "이 프로그램을 호환 모드로 실행"이 선택 해제되어 있는지 확인하십시오.



1

다음은 Access 2007의 수정 사항입니다.

  • Access의 왼쪽 상단에서 사무실 "코인"을 클릭하십시오.
  • "액세스 옵션"을 선택하십시오
  • "고급"옵션을 선택하십시오
  • 하단으로 스크롤하여 "DDE 요청 무시"를 선택 취소하십시오.

레지스트리를 망칠 필요없이 잘 열어야합니다.


0

누구든지 이런 것을 본 적이 있습니까?

오류가이 MSKB 기사에 설명되어 있기 때문일 수 있습니다. ZoneAlarm과 관련하여 언급되었습니다.


MSKB 기사를 읽었지만 ZoneAlarm을 전혀 사용하지 않습니다. 그것은 바닐라 Win7 업그레이드입니다
Noah

나는 해결책이 없으며이 오류가 매우 흔하다는 것을 지적합니다. 그러나 그 대답은 모호합니다. 그 창문의 신비 중 하나 인 것 같습니다. :)

0

활동 로그 :

제어판을 사용하여 Office 2007 설치를 변경하고 Access를 제거했습니다. 그런 다음 제어판을 사용하여 Access를 다시 추가했습니다. 이것은 문제에 영향을 미치지 않았습니다.

제어판을 사용하여 Office 2007 설치를 복구 한 다음 다시 부팅했습니다. 이것은 문제에 영향을 미치지 않았습니다.

노트:

  • 파일을 두 번 클릭하면 문제가 발생합니다. 마우스 오른쪽 단추를 클릭하고 연결 프로그램을 선택한 후 액세스를 선택하면 문제가 발생하지 않습니다.
  • 이 문제는 Excel에서 발생하지 않습니다

0

나는 확실하지 않지만 액세스 할 때 DDE-Call에서 들리는이 옵션이 비활성화되어있을 수 있습니다. Word 에서이 옵션을 보았고 엑셀도 있지만 액세스를 기억하지 못합니다. 아마도 이것을 비활성화하는 보안 문제 일 수 있습니다 ...


0

Access를 사용하지 않지만 최근에는 시작 메뉴의 "최근"목록 (단어 바로 가기 메뉴 항목의 화살표 사용)에서 문서를 여는 동안 Win7에서 Excel 및 Word (2007)와 동일한 문제가 발생하기 시작했습니다. DDE 확인란 솔루션은 이미 선택 해제되어 있기 때문에 적용되지 않았습니다 (내가 아는 한 Word에는 존재하지 않음).

문제를 해결 한 것으로 보이는 해결책을 우연히 발견했습니다. 상황에 맞는 메뉴에서 문서 바로 가기의 속성 대화 상자를 열었을 때 (아래 스크린 샷 참조) "다음으로 연결"필드가 어떻게 바뀌 었는지 알았습니다. Microsoft Word 이외의 다른 응용 프로그램 "변경"버튼을 클릭하면이 파일을 "Microsoft Office Word"와 다시 연결할 수 있습니다 (레지스트리를 망칠 필요가 없습니다).

여기에 이미지 설명을 입력하십시오


0

Access ADP 파일과 함께 Windows 7에서 Office를 사용할 때이 오류가 표시되면 방화벽 때문일 수 있습니다.

Access 2007이 설치된 Windows XP는 SMB를 사용하여 MSSQL 서버와 통신합니다. Access 2007이 설치된 Windows 7은 TCP (표준 SQL 포트) 포트 1433을 사용하여 MSSQL Server에 연결을 시도합니다. Windows 방화벽 또는 하드웨어 방화벽 차단 포트 1433이있는 경우 연결을 3 번 시도하고 세 번째로 실패하면 SMB로 전환되어 정상적으로 작동합니다.

SQL Server를 실행하는 서버에서 TCP 포트 1433을 엽니 다.

XP와 같은 SMB 대신 Windows 7에서 TCP 포트 1433을 먼저 사용하는 이유를 알 수 없었으며 변경 방법을 찾지 못했습니다.


어쨌든 mysql 과이 단어 / Excel 앱의 관계는 무엇입니까? 무슨 말인지 모르겠어요 ... 미안
gumuruh
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.