작은 C# 응용 프로그램을 도우미 도구로 데이터베이스에 연결하기 위해 VBA를 사용하고 있습니다. ShellAndWait 유틸리티와 다른 페이지에서 stackoverflow 자체에서 몇 가지 다른 아이디어를 시도했다.VBA 셸 명령은 항상 "파일을 찾을 수 없음"을 반환합니다.
양식에 버튼이 있습니다. 나는 ShellAndWait 모듈 모두 원래의 쉘을 변경했다
Private Sub BtnImport_Click()
Dim file As String
Dim hProcess as Long
file = Environ("APPDATA") & "\program\component_import.exe"
'This is the standard version, which apparently does nothing at this time.
hProcess = Shell(file, vbNormalFocus)
'This is the RunApplication version I got from here earlier. It ends
'with "Successfully returned -532462766
import_funcs.RunApplication(file)
'This is the ShellAndWait version, which gives me a "File not Found" error
import_funcs.ShellAndWait(file, 0, vbNormalFocus, AbandonWait)
End Sub
:이 버튼을 클릭하면, 그것은 내가 현재
이 %APPDATA%/program/
에 저장하고 다른 응용 프로그램을 실행해야 할 것은 현재 활성화 된 코드입니다 다른 비슷한 모듈. 이러한 옵션 중 어느 것도 내 응용 프로그램이 시작되지 않는다고해서 다르게 작동하지 않습니다.
"파일"이 올바른지 다시 확인했습니다 (이 점은 C:\Users\Me\AppData\Roaming\program\component_import.exe
을 가리킴). 내 앱이 올바른 위치에 있는지 다시 확인했습니다.
파일 탐색기에서 두 번 클릭하면 정상적으로 실행됩니다. 내가 MS Access에서 실행하려고 할 때마다 Run-time error '53': File not found.
라고 표시됩니다.
제안 사항?
편집 : 제쳐두고, 경로 자체에는 공백이 없습니다.
편집 : 일부 추가 코드가 추가되었습니다. 첫째 페이스트 빈에 링크 : 초 페이스트 빈에 RunApplication pastebin 링크 : 쉘 명령을 사용할 때 ShellAndWait pastebin
똑같은 사본입니까? 귀하의 파일 이름은'''것으로 나타나고'''을 (를) 잃어 버렸습니다 . –
Notepad.exe로 코드를 시도했는데 VBA를 통해 APPDATA에서 실행 파일을 시작할 수 없습니다 (파일 탐색기를 통해서도 안됨) - Win7 64bit를 전체 관리자로 - – Steve
@Andrew Leach : 예, 필자가 테스트 한 내용에서 추가 주석이 있기 때문에 복사하지 않았습니다. 스티브 : 파일 탐색기에서 APPDATA를 실행하면 실제로 % APPDATA %로 실행해야합니다. 환경 변수입니다. –