2017-02-22 2 views
0

릴리스 애플리케이션에 문제가 있습니다. 익스플로러에서 exe로 시작하면 psql 드라이버가 표시되지 않습니다.Qt 릴리스 애플리케이션에 플러그인이 표시되지 않습니다.

unins000.dat 
msvcp140.dll 
qsqlpsql.dll 
Qt5Core.dll 
Qt5Gui.dll 
Qt5Network.dll 
Qt5Sql.dll 
vccorlib140.dll 
Server.exe 
unins000.exe 
config.json 

가 오류 :

QSqlDatabase: QPSQL driver not loaded 
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC ODBC3 QPSQL QPSQL7 

하지만 난 것으로 집계 하지만 난 비주얼 스튜디오에서 시작할 경우 완벽하게 작동합니다 ...

나는 EXE 근처 이러한 파일, 어떤 결과를 배치 플러그인 defore!

뭐가 잘못 될 수 있습니까?

+0

Dependency Walker에서 실행하여 DLL이 누락되었는지 확인하십시오. – MrEricSir

+0

@MrEricSir 아무 것도 중요하지 않습니다. – ExiD

+1

@ExiD, 종속성을 동적으로 감지하려면 [종속성 워커 응용 프로그램 프로파일 링] (http://www.dependencywalker.com/help/html/application_profiling.htm)을 사용해야합니다. 런타임에로드 됨). 대부분의 경우 libpq.dll, libintl.dll을 응용 프로그램의 디렉토리에 복사해야합니다. . . – Mike

답변

1

플러그인과 함께 qt 응용 프로그램을 전개하려면 응용 프로그램과 동일한 폴더에 플러그인을 추가해야합니다. How to deploy qt applications with plugins

qt를 사용할 수없는 컴퓨터에 응용 프로그램을 배포하려면 응용 프로그램 근처에 플랫폼 폴더를 추가해야합니다.

Here is an example of my application Linux에 있지만 Windows에서도 마찬가지입니다. plugld 폴더에만 sqldrivers를 추가 할 수 있습니다.

qt.conf file contaians: 

[Paths] 
Plugins=plugins 

또한 의존성 워커를 실행하여 모든 종속 라이브러리를 찾습니다.

관련 문제