Hallo

Welkom, Gast. Alsjeblieft inloggen of registreren.

Recent

219 gasten, 0 leden

Welkom, Gast. Alsjeblieft inloggen of registreren.

29 maart 2024, 00:49:42

Login met gebruikersnaam, wachtwoord en sessielengte

Nieuws

Welkom op het vernieuwde NL Computer Forum!

Auteur Topic: Compilatie VB6 programma  (gelezen 14441 keer)

0 leden en 1 gast bekijken dit topic.

Offline NLCOMP

  • Forumheld
  • *****
  • Berichten: 14.666
    • NL Computer Forum
Compilatie VB6 programma
« Gepost op: 9 november 2009, 20:35:04 »
Bericht 1 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:jvdpeet01Datum:26-05-2008
 Aan:AllenMsgID:3877.1
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
Hallo,
Ik heb sinds kort een vreemd probleem. Ter bescherming tegen kopiëren en misbruik van de software heb ik enige tijd het programma Crypto++ 2007 SDK gebruikt. Omdat deze bescherming op een gegeven moment niet goed meer werkte,  heb ik als trial  een ander programma voor de bescherming gebruikt en heb ik alle sporen van Crypto++ 2007 SDK uit de toepassing verwijderd. Na installatie van de beschermde toepassing op een andere computer (als controle op de goede werking), werd na de installatie en bij het draaien van de toepassing het bericht weergegeven : "Cannot find cryp2007.dll" en het programma werd niet opgestart. Daarom heb ik nogmaals de toepassing nagelopen op sporen van Crypto++.SDK, maar deze niet kunnen vinden.
Hoe kan het dat de compilatie met VB 6.0 via Make elementen meeneemt die niet (meer) in het programma zitten. En is er een manier om uit te vinden wat de compilatie hier heeft gedaan.
Op de ontwikkelingscomputer heb ik de cryp2007.dll uit het applicatiepad en System32 verwijderd en op de ontwikkelingscomputer werkt het programma goed en zonder fouten en kan de dll (die er dus niet meer is) kennelijk wel vinden of zoekt er niet naar. Ook in het .vbp-bestand van het project zitten geen dingen die er niet horen. De installatie met InstallShield Express geeft 0 warnings en 0 errors en het logbestand heeft ook geen dingen die er niet mogen zijn.
Samenvattend: een vreemde puzzel. Hopelijk kan iemand mij een oplossing voor dit probleem geven.
 
 


Bericht 2 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:PeterDatum:26-05-2008
 Aan:jvdpeet01MsgID:3877.2
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
Hoi j,

Start VB6.
Klik op Project - References...
Staat daar iets aangevinkt mbt dat Crypto++ ? zoja, haal dat vinkje weg.
Klik op OK

Klik op Project - Components...
Staat daar iets aangevinkt mbt dat Crypto++ ? zoja, haal dat vinkje weg.
Klik op Toepassen

Ik neem aan dat je eerst het oude programma volledig verwijdert hebt en daarna het nieuwe, zonder de koppeling met crypto++, opnieuw netjes geinstalleerd is.
Post eens de logfile ST6UNST.LOG. Te vinden in de map waar je het programma geinstalleerd hebt.


Groeten, Peter.






Bericht 3 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:jvdpeet01Datum:26-05-2008
 Aan:PeterMsgID:3877.3
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
Hoi Peter,
Hartelijk dank voor je reactie. In References, noch in Components staat iets wat met Crypto++ te maken heeft. Het programma is gedownload van een internet site en staat op een aparte partitie. De relatie tussen mijn applicatie en Crypto++ wordt gelegd door een 3-tal  forms met VB-code uit Crypto++ te kopiëren en op te nemen in mijn applicatie. De bescherming is geregeld via de dll cryp2007.dll, die is gekopieerd naar het pad van mijn applicatie. Er is dus feitelijk geen relatie dus mijn applicatie en het beschermingsprogramma op de andere partitie.
Crypto 2007 is niet gedeïnstalleerd, omdat ik eerst wil ervaren of een ander beschermingsprogramma het beter doet alvorens ik het deïnstalleer.  Wel heb ik de cryp2007.dll uit het pad van mijn toepassing verwijderd en die in het programma Crypto++2007 laten staan. Er is dus nu geen enkele band tussen mijn applicatie en Crypto++2007. Ik begrijp daarom niet hoe de compilatie deze link wel kan leggen. VB weet niet waar Crypto++ 2007 staat en kan dus ook de link niet leggen en de dll meecompileren.


Bericht 4 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:PeterDatum:26-05-2008
 Aan:jvdpeet01MsgID:3877.4
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
>>De bescherming is geregeld via de dll cryp2007.dll, die is gekopieerd naar het pad van mijn applicatie.<<
Het is mogelijk dat toch in de map %windir%\system32 gekeken wordt, de standaard map voor dll-bestanden. Als het bestand daar dan nog wel staat, loopt het op de ontwikkel-pc wel goed.

>>VB weet niet waar Crypto++ 2007 staat en kan dus ook de link niet leggen en de dll meecompileren.<<
Om dat uit te zoeken moeten we wat meer informatie krijgen.
In je projectmap staat een .PDM bestand. Post dat eens
Ik vroeg ook om het installatie logbestand ST6UNST.LOG wat tijdens de installatie van je programma gemaakt wordt. Post dat ook.


Peter



Bericht 5 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:Tony de Jonge (Sysop)Datum:27-05-2008
 Aan:jvdpeet01MsgID:3877.5
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
Hoi jvdpeet01,
>> VB weet niet waar Crypto++ 2007 staat  <<
Als die DLL een zogenoemde ActiveX DLL is die met regsvr32 is geregistreerd (en ik schat in dat die kans ongeveer 100% is) dan weet de compiler foutloos het geheel te vinden als er ook maar ergens het kleinste restje aanwezig is...
TdJ


Bericht 6 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:jvdpeet01Datum:27-05-2008
 Aan:Tony de Jonge (Sysop)MsgID:3877.6
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
Hallo Tony,
Bedankt voor je reactie. Ik had al in System32 van WINDOWS gezocht naar cryp2007.dll, maar kon hem daar en overal op de harde schijf niet vinden. Je vermelding van het register heeft mij daar naar deze dll laten zoeken en ik heb hem daar inderdaad gevonden en verwijderd. Hij stond op HKEY_Current_User[Software]\Microsoft\Search Assistant\ACMnu\5603. Ik had hem daar niet verwacht en dacht altijd dat als een dergelijke dll niet in het applicatiepad stond of in System32 dat het programma hem dan niet vond, maar dat doet het kennelijk wel. 
Hoe dan ook, je bericht heeft mij in de juiste richting laten zoeken. Nogmaals bedankt. Ik zal nog testen of het probleem van de compilatie nu opgelost is.
  


Bericht 7 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:jvdpeet01Datum:27-05-2008
 Aan:PeterMsgID:3877.7
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
Hoi Peter,
Het bestand cryp2007.dll staat niet in system32 en nergens op de harde schijf.
Bestand ST6UNST.LOG en het .PDM bestand heb ik niet. Ik gebruik namelijk InstallShieldExpress. Daarom post ik het logbestand daarvan.
Ik heb cryp2007 wel in het register gevonden, namelijk in HKEY_CURRENT_USER[Software]\Microsoft\SearchAssistent\ACMnu\5603 en verwijderd. Ik maak nu een nieuwe installatie en ga morgen testen of de foutmelding nu weg blijft. Dat laat ik je daarna weten.
 


Bericht 8 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:PeterDatum:27-05-2008
 Aan:jvdpeet01MsgID:3877.8
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
Hoi J,

>>Ik gebruik namelijk InstallShieldExpress. Daarom post ik het logbestand daarvan.<<
Ik zie geen bijlage. Volg deze procedure om een bijlage toe te voegen:
- klik op Opties onder het berichten invoerveld.
- klik op Bladeren en selecteer het bestand dat je als bijlage wil toevoegen.
- klik dan op Bijdragen

>>Ik heb cryp2007 wel in het register gevonden, namelijk in HKEY_CURRENT_USER[Software]\Microsoft\SearchAssistent\ACMnu\5603...<<
Dat kan maar dat zegt niets over de locatie of aanwezigheid van het bestand cryp2007.dll. Jij hebt namelijk naar dat bestand op de harde schijf gezocht en Windows heeft je zoekcriteria in het register opgeslagen.

Kun je eens een screenshot maken van de foutmelding die je krijgt. Post dat eens.


Peter



Bericht 9 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:jvdpeet01Datum:28-05-2008
 Aan:PeterMsgID:3877.9
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
Peter,
Nogmaals.J.v.d.Peet
Bijlagen :

5-26-2008_01-51-25.txt
57KB


Bericht 10 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:jvdpeet01Datum:28-05-2008
 Aan:PeterMsgID:3877.10
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
Hoi Peter,
Heb je de InstallShield log nu wel ontvangen?
Voor alle zekerheid heb ik de installatie ook nog een keer uitgevoerd met PDW. Ik krijg echter geen ST6UNST.log, daarom post ik nu maar de setup list. Hopelijk heb je daar ook iets aan.
Ook de installatie met PDW geeft de fout "File not found, cryp2007.dll". Een print screen van deze fout maken is wat moeilijk op dit moment. De installatie vond namelijk plaats op een andere PC. Het heeft denk ik ook niet zoveel zin: de foutmelding is zo te zien een normale foutmelding : een klein scherm met de naam van het programma en een gele driehoek  met een uitroepteken en de tekst "Run-time error 53 "File not found: cryp2007.dll".
Ik begrijp er helemaal niets van: hoe kan de compilatie een bestand meecompileren dat niet op de computer te vinden is? Niet op de harde schijf en niet in het register. Een nieuwe zoektocht in het register levert op dat er niets is gevonden. Wie het wet, mag het zeggen.
Is het mogelijk dat cryp2007.dll via een ander bestand door de compilatie gevonden is?
 
 
 
J.v.d.Peet
Bijlagen :

SETUP.LST
8KB


Bericht 11 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:jvdpeet01Datum:28-05-2008
 Aan:PeterMsgID:3877.11
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
Peter,
Het raadsel is opgelost. In het pad van de ontwikkelingsdirectory stond nog een bestand van crypto++2007. Ik wist dat wel, maar ging er van uit dat de compilatie uitgaat van het .vbp bestand. Daaruit was het betreffende bestand al eerder verwijderd. Kennelijk neemt de compilatie bestanden mee die niet in het project staan.  Dit is wel een vervelend trekje van VB. Immers, je experimenteert wel eens met bestandjes die je tijdelijk uitprobeert. Om die bij de hand te hebben laat je ze in het pad van de applicatie staan  om er verder mee te experimenteren. Je vraagt je af wat het .vbp bestand voor nut heeft als de compilatie toch het hele pad meeneemt.
Hoe dan ook, een goed leer voor de volgende keer: altijd in het applicatiepad alleen de bestanden uit het .vbp bestand.
Wederom hartelijk dank voor je hulp. Dat is het mooie van CompuServe, dat ze bekwame mederwerkers en/of klanten hebben die je zo nodig behulpzaam zijn.   
J.v.d.Peet


Bericht 12 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:jvdpeet01Datum:28-05-2008
 Aan:Tony de Jonge (Sysop)MsgID:3877.12
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
Hoi Tony,
Het raadsel is opgelost. In het pad van de ontwikkelingstoepassing stond nog een bestand dat uit het projectbestand van de applicatie verwijderd was en waarin een verwijzing naar cryp2007.dll stond. Kennelijk heeft Visual Basic de onhebbelijke gewoonte om behalve de in het projectbestand genoemde bestanden ook nog andere in het pad van de applicatie vorkomende bestanden bij de compilatie mee te nemen.
Door de betreffende bestanden te verwijderen raakte ik de foutmelding kwijt.
 J.v.d.Peet


Bericht 13 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:PeterDatum:28-05-2008
 Aan:jvdpeet01MsgID:3877.13
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
>>Het raadsel is opgelost. In het pad van de ontwikkelingsdirectory stond nog een bestand van crypto++2007.<<
Mooi.
Maar, wat bedoel je met "onwikkelingsdirectory", de map van dit project of de map van VB6? Als de map VB6 bedoelt wordt snap ik niet datt je daar handmatig wat bijzet. Moest dat volgens de instructies van Crypto++?

>>Dit is wel een vervelend trekje van VB.<<
Vreemde zaak. Onderdelen die niet aan een project gekoppeld zijn horen niet meegecompileerd te worden. Als je bijv. geen Database onderdelen gebruikt, worden ze ook niet meegenomen in de compilatieslag of tijdens het maken van een installatie-bestand.

>>Wederom hartelijk dank voor je hulp. Dat is het mooie van CompuServe, dat ze bekwame mederwerkers en/of klanten hebben die je zo nodig behulpzaam zijn.<<
Graag gedaan. Ikzelf ben niet in dienst bij Compuserve, heb alleen een lidmaatschap.


Peter



Bericht 14 van 14

NL Computer Forum ~ SQL & Programmeren
 Van:jvdpeet01Datum:29-05-2008
 Aan:PeterMsgID:3877.14
 Onderwerp:Compilatie VB6 programmaForum:ws-nlcomputer
Hoi Peter,
Met ontwikkelingsdirectory bedoel ik de directory waarin de projectbestanden staan.  Het is inderdaad vreemd, dat VB informatie meecompileert die niet in het projectbestand (het .vbp bestand) staat. Doel van een projectbestand zou toch (zoals de naam al zegt)  moeten zijn af te bakenen wat er in het project moet en mag zitten.
 J.v.d.Peet