AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

32 zu 64Bit DLL

Ein Thema von EWeiss · begonnen am 1. Aug 2017 · letzter Beitrag vom 2. Aug 2017
Antwort Antwort
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.052 Beiträge
 
Delphi 12 Athens
 
#1

AW: 32 zu 64Bit DLL

  Alt 2. Aug 2017, 05:29
Microsoft (R) Library Manager Version 6.00.8168
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.
Wenn ich mich recht entsinne, wurde 64-Bit Unterstützung erst mit VC++ 2005 eingeführt. VC++ 6.0, aus dem dieses Tool stammt, hatte sie jedenfalls definitiv nicht.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#2

AW: 32 zu 64Bit DLL

  Alt 2. Aug 2017, 11:03
Zitat:
Könnte höchstens daran liegen, dass deine VS Toolchain noch aus Vorkriegszeiten stammt
Ich habe VS2017 kann mir nicht denken das dass aus der Vorzeit stammt.

Ich kann jedoch nicht garantieren das die LIB.EXE die von VS2017 ist. (Eventuell wird die von VC (Aus Visual Studio 6 verwendet)
Seltsam ist ja schon das meine Exports gar nicht mit dem Flag lib /MACHINE:X64 akzeptiert wird.

Wirklich konfus.
Danke für den Upload.

Zitat:
VC++ 6.0, aus dem dieses Tool stammt, hatte sie jedenfalls definitiv nicht.
Arghh.. ja das hätte ich auch sehen müssen.
Muss mal sehen wie ich den Pfad zur LIB ändern kann.

EDIT:
Dein Archiv scheint beschädigt zu sein.

gruss

Geändert von EWeiss ( 2. Aug 2017 um 11:08 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.052 Beiträge
 
Delphi 12 Athens
 
#3

AW: 32 zu 64Bit DLL

  Alt 2. Aug 2017, 11:41
Ich kann jedoch nicht garantieren das die LIB.EXE die von VS2017 ist. (Eventuell wird die von VC (Aus Visual Studio 6 verwendet)
Das kann man in aktuellen Windowsversionen leicht prüfen. Einfach auf der Kommandozeile eingeben:
where lib.exe
Dann wird dir angezeigt wo die gefunden wird.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#4

AW: 32 zu 64Bit DLL

  Alt 2. Aug 2017, 11:45
Ich kann jedoch nicht garantieren das die LIB.EXE die von VS2017 ist. (Eventuell wird die von VC (Aus Visual Studio 6 verwendet)
Das kann man in aktuellen Windowsversionen leicht prüfen. Einfach auf der Kommandozeile eingeben:
where lib.exe
Dann wird dir angezeigt wo die gefunden wird.
Wie kann ich denn die Umgebungsvariable von 2017 einstellen ?

gruss
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: 32 zu 64Bit DLL

  Alt 2. Aug 2017, 11:58
Bei mir ist das:
"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat"

Code:
 KVideo_CloseFile name 'KVideo_CloseFile@0',
  KVideo_CreateOverlayBaseImage name 'KVideo_CreateOverlayBaseImage@24',
  KVideo_DisplayModeChanged name 'KVideo_DisplayModeChanged@0',
  KVideo_GetCapturedImage name 'KVideo_GetCapturedImage@4',
Wieso exportierts Du die function 2 mal? und weshalb mit den @.....??
Fritz Westermann
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#6

AW: 32 zu 64Bit DLL

  Alt 2. Aug 2017, 12:11
Bei mir ist das:
"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat"

Code:
 KVideo_CloseFile name 'KVideo_CloseFile@0',
  KVideo_CreateOverlayBaseImage name 'KVideo_CreateOverlayBaseImage@24',
  KVideo_DisplayModeChanged name 'KVideo_DisplayModeChanged@0',
  KVideo_GetCapturedImage name 'KVideo_GetCapturedImage@4',
Wieso exportierts Du die function 2 mal? und weshalb mit den @.....??
Habe das so gelernt und auch mit meiner Bass_Vis.dll gemacht irgendwo gab es da mal Fehler und das hat diese behoben.
Warum auch immer.
Das "@....." sind die Bytes der jeweiligen Datentypen die in der exportierten Funktion enthalten sind.
Bei 64Bit wie Zacherl sagt werden diese ignoriert.

Siehe die Funktionen im C-Header.
Wenn man das jedoch anders oder besser machen kann lerne ich gern dazu.

Habe die Bat ausgeführt wird aber weiterhin die 6 Version von LIB\DUMPBI verwendet

gruss

Geändert von EWeiss ( 2. Aug 2017 um 12:21 Uhr)
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: 32 zu 64Bit DLL

  Alt 2. Aug 2017, 12:20
als *.cmd speichern
Code:
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat"
del *.lib
del *.exp
lib.exe /DEF:KVideoPlayer.def /MACHINE:X64 /OUT:KVideoPlayer_x64.lib
lib.exe /DEF:KVideoPlayer.def /MACHINE:X86 /OUT:KVideoPlayer_x86.lib
pause
Und jetzt noch die def:
Code:
LIBRARY    KVideoPlayer.DLL

EXPORTS
  KVideo_CloseFile
  KVideo_CreateOverlayBaseImage
  KVideo_DisplayModeChanged
  KVideo_GetCapturedImage
  KVideo_GetLastError
  KVideo_GetMediaInfoText
  KVideo_GetMediaProperty
  KVideo_GetPlayerState
  KVideo_GetStreamInfo
  KVideo_GetStreamPosition
  KVideo_GetVersion
  KVideo_GetViewSize
  KVideo_GetWorkingVR
  KVideo_GetXySubFilter
  KVideo_HasOverlayImage
  KVideo_Initialize
  KVideo_KeepAspectRatio
  KVideo_MediaInfoServiceReady
  KVideo_OpenFile2
  KVideo_OpenFile
  KVideo_Pause
  KVideo_Play
  KVideo_PutOverlayImage
  KVideo_Release
  KVideo_Repaint
  KVideo_Resize
  KVideo_SelectAudioStream
  KVideo_SelectVideoStream
  KVideo_SetLAVFiltersFolder
  KVideo_SetPlaybackRate
  KVideo_SetSearchMode
  KVideo_SetStreamPosition
  KVideo_SetVideoRenderer
  KVideo_SetVolume
  KVideo_ShowMediaInfo
  KVideo_ShowXySubFilterPropertyPage
  KVideo_Stop
  KVideo_UpdateOverlayImage
  KVideo_XySubFilterState
Mit der erzeugten lib kompiliert VS problemlos

Deine zusätzlichen Exporte kannst Du aus der Dll rauswerfen. Die brauchst Du nicht.
Fritz Westermann
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz