Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Solid Edge
  Addin nicht in environment angezeigt

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SolidEdge
Autor Thema:  Addin nicht in environment angezeigt (1196 mal gelesen)
bschla
Mitglied



Sehen Sie sich das Profil von bschla an!   Senden Sie eine Private Message an bschla  Schreiben Sie einen Gästebucheintrag für bschla

Beiträge: 31
Registriert: 30.07.2015

Windows 8, Solid Edge ST7, Visual studio 2015, c++

erstellt am: 18. Sep. 2015 10:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo! Falls jemand meine Probleme in den letzten Wochen verfolgt hat.. Bin fast fertig mit meinem SEAddin!

Nur noch eine Sache, die Registry Keys schreibe ich mittels Installer manuell (CLSID\GUID\.. alle möglichen Keys wie in http://www.codeproject.com/Articles/839585/Solid-Edge-ST-AddIn-Architecture-Overview beschrieben.)

Das Addin ladet auf meinen PC in SE, erscheint auch in den installierten environments (win8/ST7)(erstmal part/assembly)

Probiere ich den Installer jedoch auf einen anderen PC (win7/ST7) erscheint das Addin zwar in den "Addins" jedoch nicht in den environments in der ribbonbar..

hat jemand ideen?

hier ist mein "raw_OnConnectToEnvironmet(..)

Code:

HRESULT hr = S_OK;
bool bEdgeSupportsMultipleMenus = EdgeVersionSupportsMultipleTabs(m_pCommands->GetApplicationPtr());

// Create the string info for a command (big button)
CString strBigButton;
CString CommandBar;

HINSTANCE hInstance;

long index = 0;
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
hInstance = AfxGetInstanceHandle();

LPCTSTR szCommandBigButton[1] = { _T("F375A38F_3DButtonCommand") };

UINT StringResourceIDBigButton[NUMBER_OF_COMMANDS] = { IDS_CMD_STRING3DBUTTON };

// Load the command with a big button's data.
strBigButton.LoadString(IDS_CMD_STRING);
CommandBar = szCommandBigButton[0] + strBigButton;

CommandBar.LoadString(IDS_COMMANDBAR_NAME);
}


CComSafeArray<BSTR> saBigButtonString;// For OLE automation, strings are passed as BSTRs in a safe array.
hr = saBigButtonString.Create();
RETURN_ON_FAILURE(hr)

CComSafeArray<long> saBigButtonCommandID;// For OLE automation, command IDs are passed in a safe array.
hr = saBigButtonCommandID.Create();
RETURN_ON_FAILURE(hr)

CComSafeArray<long> saBigButtonCommandStyle;// For OLE automation, command button styles are passed in a safe array.
hr = saBigButtonCommandStyle.Create();
RETURN_ON_FAILURE(hr)

saBigButtonString.Add(strBigButton.AllocSysString());
saBigButtonCommandID.Add(NUMBER_OF_COMMANDS);
saBigButtonCommandStyle.Add(seButtonIconAndCaptionBelow);// seButtonIconAndCaptionBelow is the way to get a big button.


_bstr_t bszCategoryName(strBigButton);


// Now push the data into the safe arrays.
if (SUCCEEDED(hr))
{
ISEAddInEx2Ptr pAddInEx2 = m_pCommands->GetAddIn();
ISEAddInExPtr pAddInEx = m_pCommands->GetAddIn();
if (NULL != pAddInEx)
{
TCHAR ResourceFilename[MAX_PATH];

GetModuleFileName(hInstance, ResourceFilename, sizeof(ResourceFilename));

if (bEdgeSupportsMultipleMenus)
{
if (NULL != pAddInEx2)
{
bszCategoryName = CommandBar;
VERIFY_OK(pAddInEx2->SetAddInInfoEx2(ResourceFilename, EnvironmentCatid,
bszCategoryName, IDB_PNG1, IDB_PNG3, -1,
-1, 1, saBigButtonString.GetSafeArrayPtr(),
saBigButtonCommandID.GetSafeArrayPtr(), saBigButtonCommandStyle.GetSafeArrayPtr()));
}
else
{
VERIFY_OK(pAddInEx->SetAddInInfoEx(ResourceFilename, EnvironmentCatid,
bszCategoryName, IDB_PNG1, IDB_PNG3, -1,
-1, 1, saBigButtonString.GetSafeArrayPtr(),
saBigButtonCommandID.GetSafeArrayPtr()));
}
}
}
else
{
AfxMessageBox(_T("Unfortunately the Button is not supported in this Version of Solid Edge"));
}

if (VARIANT_TRUE == bFirstTime && pAddInEx2 == NULL)
{
_bstr_t bszCommandBarName1(CommandBar);

for (index = 0; index < NUMBER_OF_COMMANDS; ++index)
{

CommandBarButtonPtr pButton = m_pCommands->GetAddIn()->AddCommandBarButton(EnvironmentCatid, bszCommandBarName1, index);

if (pButton)
{
pButton->Style = seButtonIconAndCaptionBelow;
}
}

if (bEdgeSupportsMultipleMenus)
{
long CmdIndex = 5;
CommandBarButtonPtr pBigButton = m_pCommands->GetAddIn()->AddCommandBarButton(EnvironmentCatid, bszCommandBarName1, CmdIndex);

if (pBigButton)
{
pBigButton->Style = seButtonIconAndCaptionBelow;
}

}
}

// Useless for ST but no harm done as this add-in has been around since day one.
EnvironmentPtr pEnv = pEnvironment;
if (NULL != pEnv)
{
CommandBarsPtr pBars = pEnv->CommandBars;
if (NULL != pBars)
{
CommandBarPtr pBar = pBars->Item(bszCategoryName);
if (NULL != pBar)
{
// Wizard default is to position it in the top area of the Solid Edge frame.
pBar->Position = seBarTop;
}
}
}

_bstr_t CommandName = "3DButton";

// Notice that the command ID returned from the call is the real command ID behind the command inside Edge.
s_LocTestCmdId = m_pCommands->GetAddIn()->AddCommand(EnvironmentCatid, CommandName, (long)10);
}
else
{
hr = E_OUTOFMEMORY;
}

return hr;


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

ckunkel72
Mitglied
CAD Konstruktion Maschinenbau


Sehen Sie sich das Profil von ckunkel72 an!   Senden Sie eine Private Message an ckunkel72  Schreiben Sie einen Gästebucheintrag für ckunkel72

Beiträge: 183
Registriert: 20.02.2013

Windows 10 Pro x64
SolidEdge ST9 MP5
Visual Studio Community 2017

erstellt am: 18. Sep. 2015 12:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für bschla 10 Unities + Antwort hilfreich

Hallo bschla,

ich denke zu deiner Frage bekommst Du im Solid Edge Developer Forum mehr Rückmeldungen.

Gruß
Christian

------------------
Seit Januar 2013 vollständig verschoben und syncronisiert.

https://c-k-m.info

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bschla
Mitglied



Sehen Sie sich das Profil von bschla an!   Senden Sie eine Private Message an bschla  Schreiben Sie einen Gästebucheintrag für bschla

Beiträge: 31
Registriert: 30.07.2015

Windows 8, Solid Edge ST7, Visual studio 2015, c++

erstellt am: 18. Sep. 2015 17:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

mhh.. okay dann frag ich mal konkreter, vielleicht hilft das..

Welche Gründe könnte es geben dass SE zwar das Addin registriert und anzeigt in SE aber raw_onConnection()... nicht aufruft??

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Praktikum im Bereich Konstruktion & Simulation

Die RNA Digital Solutions GmbH ist ein Münchner Scale-up im Bereich Maschinenbau. Wir beschäftigen uns mit der digitalen Entwicklung automatisierter Zuführlösungen für 26 Zielbranchen. Zuführtechnik ist die Schlüsseltechnologie der heutigen Produktion, beispielsweise im Bereich Automotive für Tesla oder in der Elektronik für Siemens. Für die Entwicklung unserer Produktionsanlagen suchen wir Verstärkung in der Abteilung Konstruktion & Simulation....

Anzeige ansehenKonstruktion, Visualisierung
wolha
Moderator
CAD - Consultant


Sehen Sie sich das Profil von wolha an!   Senden Sie eine Private Message an wolha  Schreiben Sie einen Gästebucheintrag für wolha

Beiträge: 5563
Registriert: 30.01.2002

Win 10 Pro
Solid Edge 2023
CAMWorks
Primus PDM
FEMAP
Dynamic Designer
Teamcenter

erstellt am: 18. Sep. 2015 18:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für bschla 10 Unities + Antwort hilfreich

Hallo,


Du wirst profundere Antworten,  um nicht zu sagen,  überhaupt Antworten,  eher im internationalen Entwicklerforum bekommen.

Jason Newell ist hier sicher ein echte Profi!

Wie oben von Christian vorgeschlagen.

------------------
mfg

Wolfgang Hackl
CAD/CAM - Consult
http://www.cadcam-consult.com

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz