AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi GetFileVersionInfoSize und Netzwerk
Thema durchsuchen
Ansicht
Themen-Optionen

GetFileVersionInfoSize und Netzwerk

Ein Thema von haentschman · begonnen am 22. Jan 2014 · letzter Beitrag vom 22. Jan 2014
Antwort Antwort
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#1

GetFileVersionInfoSize und Netzwerk

  Alt 22. Jan 2014, 13:01
Hallo alle miteinander...

Kostellation:
EXE wird vom Client vom Netzlaufwerk gestartet. Pfad ist UNC Name. Rechte vorhanden.

Problem:
GetFileVersionInfoSize liefert 0 zurück obwohl Versionsinformationen in der EXE vorhanden sind.

Tests haben ergeben, daß GetFileVersionInfoSize hier in der Testumgebung bis ca. 3 Sek. (und das ziemlich gleichmäßig) nach dem Start der EXE benötigt um das richtige Result zu liefern. Dabei reichte schon das Programm vor den Aufruf mit einem Breakpoint für diese Zeit anzuhalten.
Auch konnte das nicht auf allen Netzlaufwerken reproduziert werden. Bei manchen ging alles wie gehabt.

Gelöst habe ich das erstmal mit einer Schleife über GetFileVersionInfoSize bis zu einem Ergebnis. Die Schleifendurchläufe habe ich mal mitgezählt. Bei Sleep(10) hatte ich immer zwischen 280 - 295 Durchläufen.

Mich würde aber mal die Ursache interessieren.
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.682 Beiträge
 
Delphi 5 Professional
 
#2

AW: GetFileVersionInfoSize und Netzwerk

  Alt 22. Jan 2014, 13:31
Virenscanner?

MfG Dalai
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#3

AW: GetFileVersionInfoSize und Netzwerk

  Alt 22. Jan 2014, 13:50
Man könnte mal versuchen zu debuggen, wie diese API auf die Datei zugreift.
Und es kann auch sein, daß diese API Funktionen verwendet, welche nicht mit allen Möglichkeiten/Protokollen des UNC klar kommt.

Alternativ, könnte man die Datei auch lokal ins Tempverzeichnis kopieren und dort auslesen?

[edit]
Ordentliche Virenscanner sollten die Zugriffe entsprechend verzögern/anhalten, solange sie Diese noch abarbeiten,
und nicht "leere" Dateienzurückgeben-
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#4

AW: GetFileVersionInfoSize und Netzwerk

  Alt 22. Jan 2014, 14:19
Danke für deine Antwort.

Eher nicht. Es war schon schwierig genug das Kundenproblem nachzuvollziehen. Wir konnten nur einen internen Computer finden auf dem das reproduzierbar war. Überall laufen die gleichen Scanner.

Bsp Name: \\ws100\testordner ... von Client1 Fehler, von Client2 gut
Auf einem anderen Computer z.B. \\ws200\testordner von allen Clienten gut.

Zitat:
Alternativ, könnte man die Datei auch lokal ins Tempverzeichnis kopieren und dort auslesen?
... die gestartete EXE soll ihre eigene Version lesen.

Geändert von haentschman (22. Jan 2014 um 14:39 Uhr)
  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 02:48 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz