Link to home
Start Free TrialLog in
Avatar of kavmm
kavmm

asked on

how can i install components with .DCU file?

hello

how can i install components with .DCU file ( not with .PAS file )?
i select MyVCL.dcu in install comp. menu but it makes [fatal error] file not found 'myVcl.pas' and again i wrote this code:

unit MyVCLReg;

interface

uses classes, windows;

procedure Register;

implementation

  uses
    MyVCL;

procedure Register;
begin
 RegisterComponents('Samples', [TMyVCL]);
 // i know the Class Name from Readme.txt file
end;

end.
but it makes that error again!

what can i do? please help me!
thanks
kavmm
Avatar of PeterLarsen
PeterLarsen

listening
ASKER CERTIFIED SOLUTION
Avatar of inthe
inthe

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Well.

1. Open Install Component dialog and do all things what are needed
2. When you receive an error message, simply ignore it and close editor with opened binary file without saving
3. Compile and install package. If this DCU file was compiled by the same Delphi version you will have the component installed.

Best regards,
Alexey Zverev.
Perhaps the file MyVcl.dcu is not contained in Delphi Library Path. Verify this. {Sorry my English ...}
Avatar of kavmm

ASKER

Hello,

Dear sys_integra, I had checked, it was in Library path. I have not any problem with ur English;-)

Good coding

Dear inthe & alzv, I think u are right. It must be compiled in the same ver of Delphi, which I use. It is D5.becouse I could solve this for some other VCLs in .DCU form.

Anyway. MyVCL & TMyVCL just are examples. And I have this problem for some components that I collect them. I searched for some of them for example in www.torry.net ( that is a grate site ). But I did not find.

Are you sure I cannot do anything for this problem?

Best regards
kavmm

Hello,

I think Compiler ver is the point too.But I have a q from sys_integra :

ur member name is 'sys_integra'. Perhaps it is system integrator in complete form. is it related to Automation.

Best regards
hamed
Hi kavmm

As allready said: You can only use .dcu files compiled with the same version of Delphi as you use.
When that is said, there is no problem what so ever. Here's a step-by-step:

- Menu: "File"->"New"->"Package"
- Save package (naming it and providing a description)
- Select "Contains" node and press "Add"
- Click "Browse"
- Select "Files of type": "Delphi Compiled Unit (*.dcu)"
- Select .dcu file (component) you want to register
- Click "Open" then "OK" and finally "Install"

That's it! Hope it works for you!

- Martin
Avatar of kretzschmar
ten13, this did not solve the problem :-( i guess
Ten13,
do not propose answers using what others have said !

using the method you provide it will still ask for .pas file.

kavmm,

how do you know the dcu was compiled with same version of delphi as you use?
d5 enterprise ,d5 proffesional or d5 standard ?

any differences and it wont work,nothing you can do about it.

dear kavmm,

If u can find which ver for each .DCU file were Used. i think u can collect them in just one ver by using ActiveX.

for example u found that myvcl is compiled by D3.now if u have D3 and u need this vcl for d5(for example all of ur components are in d5 and u want use just this ver)u can go to D3 and do this:
1. add myvcl.dcu to a library( u can do it becouse it was compiled by this ver)
2. make a activex library
3. make a activex control and set class name to Tmyvcl
4. compile it. now u have a ocx file with Tmyvcl class
5. go to D5
6. go to import activex
7. import it

i could make an ocx file with a .DCU in D5 but my D3 have had some problems from when i install D5( i can not import any activex control to D3).therefor i cant test it .but i think it can work.

dear inthe
is it inportant witch type of D5 is uesd. for example i just have enterprise.is it possible i can not use a component with another type.

best regards
hamed
dear  kavmm

if activex solution can work good.then dont worry about the version. send us the .DCU file , everyone could find the compiled ver will make activex for u. i have D2,D3(proffesional),D5(enterprise).

best regards
hamed
Avatar of kavmm

ASKER

Ten13 ,I am agree with kretzschmar and inthe .But h_mohsenian , when I want to make the ActiveX Control the component is not in the combobox component list.
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:

Accept inthe's comment as answer

Please leave any comments here within the next seven days.
 
PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER!
 
Thank you,
Russell

EE Cleanup Volunteer