Complete Guide to ICOM Type Libraries: Streamline Your Data Management
Complete Guide to ICOM Type Libraries: Streamline Your Data Management
Table of Contents
- Introduction
- Registration
- Using Advanced Installer
- GUI
- Working with Projects
- Installer Project
- Patch Project
- Merge Module Project
- Updates Configuration Project
- Windows Store App Project
- Modification Package Project
- Optional Package Project
- Windows Mobile CAB Projects
- Visual Studio Extension Project
- Software Installer Wizards - Advanced Installer
- Visual Studio integration
- Alternative to AdminStudio/Wise
- Replace Wise
- Migrating from Visual Studio Installer
- Keyboard Shortcuts
- Shell Integration
- Command Line
- Advanced Installer PowerShell Automation Interfaces
* IAdvancedInstaller
* IAdvinstProject
* IProductDetails
* IFolder
* ILaunchConditionsComponent
* IFilesComponent
* IIniFilesComponent
* IShortcut
* ITempFile
* IXmlFile
* IDirectoryMember
* IRegistryComponent
* IInstallParameters
* IBuildComponent
* ITextFileUpdatesComponent
* ITextUpdateFile
* ITextUpdateAppendOrCreate
* ITextUpdateReplace
* IFileAssociations
* IDefaultProgramFA
* IExtensionFA
* IProgIdFA
* IVerbFA
* IEnvironment
* IEnvironmentVariable
* IProductCode
* IUpgradeCode
* IMergeModulesComponent
* IMergeModule
* IDigitalSignature
* ICustomActionsComponent
* ITranslationsComponent
* IDriversComponent
* ISearch
* IServices
* IOrganizationComponent
* IComComponent
* IComClass
* IComClassActiveX
* IComClassAppId
* IComInterface
* IComPlus
* IComTypeLibrary
* IRemoveFilesComponent
* IRemoveFile
* IUpdatesProject
* IUpdaterComponent
* IPatchProject
* IPropertyComponent
* IProperty
* IPathVariable
* IMsixComponent
* IMsixDependencies
* IMsixDriverDependency
* IMsixDriverConstraint
* IMsixExternalDependency
* IMsixPackageDependency
- Features and Functionality
- Tutorials
- Samples
- How-tos
- FAQs
- Windows Installer
- Deployment Technologies
- IT Pro
- MSIX
- Video Tutorials
- Advanced Installer Blog
- Table of Contents
Disclaimer: This post includes affiliate links
If you click on a link and make a purchase, I may receive a commission at no extra cost to you.
IComTypeLibrary
Declaration
IComTypeLibrary: IDispatch
Overview
This interface is meant to allow you to specify the information that will be placed in the registry during the Type Library’s registration process.
Properties
String Guid - Gets the GUID of the type library.
IFile File - Gets the the type library file (.tlb).
String Language - Gets or sets the type library’s language.
String Version - Gets or sets the type library’s version.
IFolder Directory - Gets or sets the directory that contains the Help file for the type library.
UINT Cost - Gets or sets the cost, in bytes, associated with the type library properties.
String RegistryPath - Gets or sets the registry location where the Type Library is registered. For type libraries defined through MSI TypeLib table this location is read only.
Supported values: HKEY_CLASSES_ROOT\TypeLib, HKEY_CURRENT_USER\Software\Classes\TypeLib, HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib, HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\TypeLib.
Examples
$advinst = new-object -comObject “AdvancedInstaller”
$proj = $advinst.CreateProjectS(“architect”)
$clsid_id = "{4819544F-6FAF-4553-86C3-7B58F73BA4D0}"
$interface_GUID = "{E4C611D8-6DA8-48F7-8AD8-D6CB6D64293C}"
$typelib_GUID = "{37687F89-8603-4E42-A5F4-4FBAB011D5F3}"
add new class
$file = $proj.FilesComponent.AddFileS("appdir", "D:\MyApp.exe")
$new_class = $proj.ComComponent.NewClass("{222AD1AD-EB4D-4859-A11E-B5EC859CC0BB}",$file)
edit ActiveX
$new_class.ActiveX.IsActivXControl = $true
$new_class.ActiveX.IsProgrammable = $true
$new_class.ActiveX.IsInsertable = $true
$new_class.ActiveX.BitmapPath = "$($file.FullPath)"
$new_class.ActiveX.BitmapResourceId = 1
$new_class.ActiveX.Default = 4
$new_class.ActiveX.Content = 131473
$new_class.ActiveX.Thumbnail = 44456
$new_class.ActiveX.Icon = 778
$new_class.ActiveX.Docprint = 89
$new_class.ActiveX.Extensions = ".test,.aaa"
$new_class.ActiveX.AddDotNetCategory()
$new_class.ActiveX.AddSafeForInitializingCategory()
$new_class.ActiveX.AddSafeForScriptingCategory()
$new_class.ActiveX.AddCategory("{7DD95802-9882-11CF-9FA9-00AA006C42C4}")
edit AppId
$new_class.AppId.AppId = "{10000000-0000-0000-0000-000000000001}"
$new_class.AppId.RemoteServerToLaunch = "server name"
$new_class.AppId.LocalService = "service name"
$new_class.AppId.DllSurrogate = "aaa"
$new_class.AppId.ActivateAtStorage = $true
$new_class.AppId.RunAsInteractiveUser = $true
$new_class.ThreadingModel = "Both"
$progId = $proj.FileAssociations.NewProgId()
$new_class.ProgId = $progId
$new_class.VersionIndependentProgId = "Test.ProgId.1"
$new_class.Description = "new description for this class"
$new_class.Version = "1.2.3"
$new_class.TypeLibraryId = "{37687F89-8603-4E42-A5F4-4FBAB011D5F3}"
$new_class.IconPath = "$currentPath\resources\resources-powershell\sample.exe"
$new_class.DefaultInProcHandler = "2"
$new_class.Argument = "/test"
$new_class.HasRelativePath = $true
add new interface
$new_interface = $proj.ComComponent.NewInterface("{00000000-674B-41F9-9EC2-4925BF949F12}", "TestInterface")
$new_interface.NumberOfMethods = 3
$new_interface.BaseInterface = "{20000000-0000-0000-0000-000000000000}"
$new_interface.CLSID16 = "{16000000-0000-0000-0000-000000000000}"
$new_interface.CLSID32 = "{32000000-0000-0000-0000-000000000000}"
$new_interface.TypeLibId = "{50000000-0000-0000-0000-000000000000}"
$new_interface.TypeLibVersion = "2.5"
$new_interface.RegistryPath = "HKEY_CURRENT_USER\Software\Classes\Interface"
add new type librabry
$new_typelib = $proj.ComComponent.NewTypeLibrary($file)
$new_typelib.GUID = "{23487F89-8603-4E42-A5F4-4FBAB011D5F3}"
$new_typelib.Language = "bg"
$new_typelib.Version = "1.2"
$new_typelib.Description = "new description for typelib"
$new_typelib.Cost = 3
Copy
See also
Did you find this page useful?
Please give it a rating:
Thanks!
Report a problem on this page
Information is incorrect or missing
Information is unclear or confusing
Something else
Can you tell us what’s wrong?
Send message
Also read:
- [New] 2024 Approved Essentials of YouTube Mastery Free Online Course Series
- [New] 2024 Approved Streamtech Analysis Rethinking the Standard Choice
- [New] Discover Top 10 Flv-to-YouTube Conversion Tools for 2024
- [New] In 2024, Unleash Potential in Online Collaboration Using Snap Photography
- [New] Triple Caption Magic for Compelling IG Videographies for 2024
- [Updated] Artful Animation of Adventures Exploring the Top 8 Narrative Universities (Top 8)
- [Updated] Twitter Video Converter | Convert Twitter Video to Audio/MP4/WebM for 2024
- Effective Methods to Eliminate Ransomware From Your Windows Computer: A Step-by-Step Guide
- Essential Functions: Understanding Windows Server Capabilities
- How to Incorporate an Exe File Into Your Personalized Events Setup
- How to Quickly Solve Missing mscorwks.dll Errors on Your Computer – Best Practices
- Mastering Background Replacement in Images Using Advanced Photo Editors
- Mastering the Art of Screenshots on ASUS ZenPhone Devices (Zenfone 2, 4, 5 & 지)
- Scopri Gli 11 Migliori Siti Internet per La Vista Dei TV LCD Senza Costi: Un Confronto Esauriente
- Speedy Solutions: Top Tips for Accelerating Your Android Smartphone
- Step-by-Step Guide: Transferring Data From Huawei Nova 9 to Your Personal Computer
- Ultimate Guide to Choosing Apps That Blend Audio with Visuals: The Leading Selections
- Unlock the Secrets of Resetting a Forgotten Code on Your Apple Device
- WiFi and Ransomware: How Secure Are You, And What Might Shock You to Find Out!
- Title: Complete Guide to ICOM Type Libraries: Streamline Your Data Management
- Author: Kenneth
- Created at : 2024-10-07 03:14:16
- Updated at : 2024-10-11 00:36:28
- Link: https://fox-sys.techidaily.com/complete-guide-to-icom-type-libraries-streamline-your-data-management/
- License: This work is licensed under CC BY-NC-SA 4.0.