Developer Portal Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 
    SOLVED

    Correct way to add custom library to a project

    Correct way to add custom library to a project

    maj9bj
    Long-established Member

    I have the following situation:

    • There is a library for TwinCat which is not part of any existing repository.
    • The library does not need OES part (HMI, Types, Object).
    • I want to use this library only in TwinCAT.
    • If the project is opened by someone else without this library, he should do only OES export and the library will be deployed automatically on his system and shown in references.

    I programmed lot of objects and addons, so I know how to inlude library in OOD. Now I see only one option, and that is to create an AddOn without any functionality that will contain only my library.

    Is this the only option or is there another way to resolve this request?

    3 REPLIES 3

    Thorsten_Brach
    New Contributor

    You don't need to create a complete object or addon for this library  - only a library.osd file...

    Just add your library.osd file to the STD files of the PLC content via rigth mouse click "Add STD file..."

     

    2023-01-12_08h18_22.png

    maj9bj
    Long-established Member

    Thanks @Thorsten_Brach . I did not know about this possibility.
    What is your best practice? Put library and OSD file into separate folder in Std\Objects folder?

    I would create a separate folder in the STD or PrjExt...

    for Example :

    STD\PLC_Only\MyLib\

    PrjExt\PLC_Only\MyLib\

    I would not mix it with Objects or Peripherals to have a clear separation, because the object browser would not recognize these elements...


    If you want to have it in Objects or Peripheral section - then I would also create a OOD file, so that the object browser can take care about it.

    Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist