AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Das Programm wurde eventuell nicht richtig installiert.
Thema durchsuchen
Ansicht
Themen-Optionen

Das Programm wurde eventuell nicht richtig installiert.

Ein Thema von Bjoerk · begonnen am 4. Jun 2012 · letzter Beitrag vom 8. Jun 2012
Antwort Antwort
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Das Programm wurde eventuell nicht richtig installiert.

  Alt 5. Jun 2012, 08:19
Die Meldung kommt nur, wenn von CD installiert wird!?
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

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

AW: Das Programm wurde eventuell nicht richtig installiert.

  Alt 5. Jun 2012, 09:14
Ich frage mich zwar, warum du nicht einfach InnoSetup oder ähnliches nimmst, wo das ja alles funktioniert, aber sei es drum:

Vielleicht erkennt Windows, dass du ohne Deaktivierung der Registry-Umleitung auf diese zugreifst. (So landet unter 64-Bit alles unter Wow6432Node, das normalerweise direkt unter Software steht.) Setups sollten entsprechend behandeln.

Oder versuchst du in irgendeiner Weise auf das eigene Verzeichnis zuzugreifen?
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Das Programm wurde eventuell nicht richtig installiert.

  Alt 5. Jun 2012, 11:06
Hey jaenicke, genau so ist es, thanx.

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\ Windows\CurrentVersion\Uninstall\XXXX_Software

Soll Setup auf Win64 prüfen und dann den Pfad so vorgeben?

"Oder versuchst du in irgendeiner Weise auf das eigene Verzeichnis zuzugreifen?"

Was meinst du damit? Dahin wird halt kopiert, sonst nur gelesen.
C:\Program Files (x86)\XXX\
  Mit Zitat antworten Zitat
Benutzerbild von Daniel Schuhmann
Daniel Schuhmann

Registriert seit: 16. Jul 2005
Ort: München
391 Beiträge
 
Turbo Delphi für Win32
 
#4

AW: Das Programm wurde eventuell nicht richtig installiert.

  Alt 5. Jun 2012, 12:09
Umlaute/komischen Zeichensatz im Manifest?
Daniel Schuhmann
  Mit Zitat antworten Zitat
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Das Programm wurde eventuell nicht richtig installiert.

  Alt 5. Jun 2012, 15:38
Auch mit Umleitung ändert sich nichts, oder mach' ich da was falsch?

Umlaute/komischen Zeichensatz im Manifest habe ich nicht.

Könnte auch die Standardmeldung sein, wenn nach C:\Program Files (x86)\ installiert wird !?

Delphi-Quellcode:
function IsWow64: boolean;
type
  TIsWow64Process =
    function(Handle: Windows.THandle; var Res: Windows.BOOL): Windows.BOOL; stdcall;
var
  IsWow64Result: Windows.BOOL;
  IsWow64Process: TIsWow64Process;
begin
  Result:= False;
  if GetWInVersion = wvWin7 then
  begin
    IsWow64Process:=
      Windows.GetProcAddress(Windows.GetModuleHandle('kernel32'), 'IsWow64Process');
    if Assigned(IsWow64Process) then
    try
      IsWow64Process(Windows.GetCurrentProcess, IsWow64Result);
      Result:= IsWow64Result;
    except
      Result:= False;
    end;
  end;
end;

function GetRegUnInstallString: string;
var
  Substr: string;
begin
  if IsWow64 then
    Substr:= 'Wow6432Node\'
  else
    Substr:= '';
  Result:= 'SOFTWARE\' + Substr + 'Microsoft\Windows\CurrentVersion\Uninstall\' + progApp.Key;
end;
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.656 Beiträge
 
Delphi 12 Athens
 
#6

AW: Das Programm wurde eventuell nicht richtig installiert.

  Alt 5. Jun 2012, 15:43
Versuch es mal so: http://www.delphipraxis.net/86651-re...w6432node.html
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Das Programm wurde eventuell nicht richtig installiert.

  Alt 6. Jun 2012, 17:12
Registry.Create(KEY_ALL_ACCESS OR KEY_WOW64_64KEY) funktioniert bei mir nicht.
  Mit Zitat antworten Zitat
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Das Programm wurde eventuell nicht richtig installiert.

  Alt 8. Jun 2012, 09:39
Ich hab die Komponente überarbeitet und dabei auch solche Uralt Dinger wie MkDir z.B. ersetzt. Mit Code #9 geht es geht jetzt. Luckie, ich benutze folgende Verzeichnisse:

Delphi-Quellcode:
function GetShellFolderPath(const aFolder: integer): string;
var
  pIIL: PItemIDList;
  szPath: array[0..Max_Path] of char;
  aMalloc: IMalloc;
begin
  Result:= '';
  OleCheck(SHGetSpecialFolderLocation(0, aFolder, pIIL));
  SHGetPathFromIDList(pIIL, szPath);
  OleCheck(SHGetMalloc(aMalloc));
  aMalloc.Free(pIIL);
  Result:= szPath;
end;

function GetTempDir: string;
var
  tempFolder: array[0..Max_Path] of char;
begin
  GetTempPath(Max_Path - 1, @tempFolder);
  Result:= StrPas(tempFolder);
end;

function Vista: boolean;
begin
  Result := SysUtils.Win32MajorVersion >= 6;
end;

function GetProgramFilesVerz: string;
const
  CSIDL_PROGRAM_FILES = $0026;
var
  Reg: TRegistry;
  v, S, u: string;
begin
  if Vista then
    Result := IncludeTrailingPathDelimiter(GetShellFolderPath(CSIDL_PROGRAM_FILES))
  else
  begin
    v := 'C:\xxxx\';
    S := 'SOFTWARE\Microsoft\Windows\CurrentVersion';
    u := 'ProgramFilesDir';
    Reg := TRegistry.Create;
    try
      with Reg do
      begin
        RootKey := HKey_LOCAL_MACHINE;
        if KeyExists(s) then
        begin
          OpenKey(s, false);
          if ValueExists(u) then
            v := IncludeTrailingPathDelimiter(ReadString(u));
          closeKey;
        end;
      end;
    finally
      Reg.Free;
      Result := v;
    end;
  end;
end;
Delphi-Quellcode:
  VerzE:= GetProgramFilesVerz + 'xxxx\';

  VerzA:= IncludeTrailingPathDelimiter(GetShellFolderPath(CSIDL_APPDATA) + 'xxxx\';

  VerzT:= IncludeTrailingPathDelimiter(GetTempDir) + 'xxxx\';

  VerzP:= IncludeTrailingPathDelimiter(GetShellFolderPath(CSIDL_PERSONAL)) + 'xxxx\';

  if Vista then
    VerzB:= IncludeTrailingPathDelimiter(GetShellFolderPath(CSIDL_COMMON_APPDATA)) + 'xxxx\'
  else
    VerzB:= IncludeTrailingPathDelimiter(GetShellFolderPath(CSIDL_PERSONAL)) + 'xxxxBackUp\';
Kurze Abschlussfrage: In welches Verzeichnis schreibt Ihr denn die UnInstall.exe hin?
  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 17:13 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