hi, ich hab selbst gesucht und bin fündig geworden, folgende function hat mir weitergeholfen:
mid(string,position,länge) in meinem fall länge=1...
ciao
trotzdem danke!
Hallo zusammen,
*warning* Neueinsteiger
ich benötige in einem PropertyGrid für eine bestimmte Property die Möglichkeit, sie in einem modalen Dialog zu editieren. Das funktioniert soweit auch ganz gut, ich sehe auch den Ellipsis-Button im PropertyGrid. Jedoch wird meine überschriebene Methode EditValue() nie aufgerufen, wenn ich auf den Ellipsis-Button klicke.
Habe ich irgendwas vergessen?:
______________
Ich habe eine neue Klasse erstellt, die von UITypeEditor abgeleitet ist.
Ich habe die Attribute EditorAttribute(__typeof(myClass), __typeof(UITypeEditor)) hinzugefügt.
Ich habe die Funktion GetEditStyle überschrieben, und den Wert UITypeEditorEditStyle::Modal zurückgeliefert (wenn ich einen Breakpoint setze kommt er hier auch rein, komischerweise öfter als erwartet)
Ich habe die Funktion Object* EditValue( System::IServiceProvider* provider, Object* value ) überschrieben. Jedoch wird sie leider nie aufgerufen
____________
Sprache ist C++. Was mich wundert ist, wenn ich auf den Ellipsis-Button klicke, wird die Funktion GetEditStyle() erneut aufgerufen, warum das? Ist das normal? Habe ich irgendwas in der abgeleiteten Klasse vergessen? Die richtige Funktionsdefinition für EditValue() sollte ich verwendet haben, habe sie direkt aus MSDN kopiert (s.o.).
Vielen Dank und Gruß!
Nils
steht ja eigentlich schon alles im Titel.
Also ich will in einem Listview das Markieren mit der rechten Maustaste verhindern.
Und somit auch das Zeichen des Auswahlrahmens.
Mit der Linken soll es aber weiterhin gehen.
Aber schon alle Events durchgesehen, finde aber irgendwie nicht das passende.
Hi Forum
wie kann ich in einem Projekt das JIT Debugging aktivieren? Da ich eine Fehlermeldung nach der Installation erhalte:
System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
und dann weiter:
************** JIT-Debuggen **************
Um das JIT-Debuggen (Just-In-Time) zu aktivieren, muss in der
Konfigurationsdatei der Anwendung oder des Computers
(machine.config) der jitDebugging-Wert im Abschnitt system.windows.forms festgelegt werden.
Die Anwendung muss mit aktiviertem Debuggen kompiliert werden.
und dann weiter unten:
zu Beispiel:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
also wo soll ich den das JIT Debugging aktivieren?
danke
gast
kein Problem. Die SDK, wo auch die Methode drin ist, ist halt nur in VB.Net geschrieben:
Public Function LoadPlugIns(ByVal PlugInPath As String, ByVal Sender As MsgSender, ByVal InterfaceName As String) As CPlugIns
Dim objects As CPlugIn
Dim plist As New CPlugIns
Dim path As String
Dim plugin As IPlugIn
Dim test As CirculiSDK.PlugIns.IPlugIn.PlugInProperties
Dim strdlls() As String
Dim strdlls2() As String
Dim intindex As Integer
Dim objDLL As [Assembly]
Dim objPlugin As Object
Dim objtype As Type
Dim types As Type
Dim objinterface As Type
Dim mnuitem As MenuItem
Dim dirs As String() = Directory.GetDirectories(PlugInPath)
Dim dir As String
Dim Mnuindex As Integer = -1
Dim file As File
For Each dir In dirs
path = dir & "\"
If file.Exists(LCase(path & "\CirculiSDK.dll")) Then
file.Delete(LCase(path & "\CirculiSDK.dll"))
End If
Next
For Each dir In dirs
path = dir & "\"
'Suchen
strdlls = Directory.GetFileSystemEntries(path, "*.dll")
Try
For intindex = 0 To strdlls.Length - 1
objDLL = [Assembly].LoadFrom(strdlls(intindex))
For Each objtype In objDLL.GetTypes
If objtype.IsPublic = True Then
If Not ((objtype.Attributes And TypeAttributes.Abstract) = TypeAttributes.Abstract) Then
objinterface = objtype.GetInterface(InterfaceName, True)
If Not (objinterface Is Nothing) Then
'Index für Menü setzen
plugin = CreateInstance(strdlls(intindex), objtype.FullName)
test = New CirculiSDK.PlugIns.IPlugIn.PlugInProperties
Dim sec As New CirculiSDK.SystemData.Security
test = plugin.Load(Sender, Nothing, sec.CreateKey2(strdlls(intindex)))
sec = Nothing
Mnuindex = -1
Select Case test.MenuItem.ToString
Case "MnuDatei"
Mnuindex = 1
Case "MnuBearbeiten"
Mnuindex = 2
Case "MnuAnsicht"
Mnuindex = 3
Case "MnuEinfügen"
Mnuindex = 4
Case "MnuFormat"
Mnuindex = 5
Case "MnuFenster"
Mnuindex = 6
Case "MnuExtras"
Mnuindex = 7
Case "MnuFragezeichen"
Mnuindex = 8
End Select
If Not test.PlugInName = "" Then
objects = New CPlugIn
With objects
.ClassName = objtype.FullName
.Description = test.Descripton
.ItemEnabled = test.ItemEnabled
.ItemVisible = test.ItemVisible
.License = test.License.ToString
If test.BackgroundPlugIn = True Then
.MnuIndex = -1
.MenuItem = ""
Else
.MenuItem = test.MenuItem.ToString
.MnuIndex = Mnuindex
End If
.MnuItemIndex = -1
.MnuSubIndex = -1
.Path = strdlls(intindex)
.PlugInName = test.PlugInName
.PlugInObject = plugin
.Receiver = test.Receiver
.Stabil = test.Stabil
.SubMenu = test.SubMenuName
.Version = test.Version
.VersionDate = test.DateOfVersion
.DLLName = objDLL.GetName.Name
End With
'PlugIn hinzufügen
plist.Add(objects)
'PlugInTypes hinzufügen
For Each types In objDLL.GetTypes
If types.IsPublic = True Then
Dim t As New CirculiSDK.PlugIns.CPlugInType
t.TypeName = types
objects.CPlugInTypes.Add(t)
t = Nothing
End If
Next
objects = Nothing
test = Nothing
End If
plugin = Nothing
End If
End If
End If
Next
Next
Catch ex As Exception
MSG("", "CirculiSDK.PlugIns.PlugInAdministration.LoadplugIns", ex.StackTrace, Replace(FindMessage("0034"), ":::PLUGIN:::", strdlls(intindex)))
End Try
Next
LoadPlugIns = plist
plist = Nothing
End Function
Dieser Thread wurde von Moderator/in CengizS aus dem Forum Java in das Forum C# und .NET verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?
Dieses Posting wurde automatisch erzeugt.
Hallo,
ich habe ein Programm geschrieben, das alle laufenden Prozesse überwacht und die Programme wieder beendet, die nicht in einer vorher festgelegten Liste stehen. Funktioniert soweit gut, nur ich mache das Ganze mit einem 10sec-Timer.
Es muss doch aber gehen, dass ich bei jedem Programmaufruf ein Event bekomme, mit der Liste prüfe und ggf. beende... Nur leider habe ich keine Ahnung, wie ich das anstellen soll. Ich denke mal, dass ich DLLs wie kernel32.dll oder ntdll.dll o.Ä. einbinden muss, hab aber mit dem Dependency Walker nix gutes gefunden.
Danke im voraus
Hi,
ich habe zwei Files (EXE, DLL) die ich beide mit einem Strong Name signiert habe. Die beiden Files sollen auf einem File-Server liegen und von dort aus ausgeführt werden. Wenn ich jetzt die Files nicht im .NET Framework auf dem Clienten registriere gibt es eine Security exception.
Gibt es eine möglichkeit die registrierung im Framework zu automatiesieren? Nicht über eine Batch file sondern über ein .NET Programm oder Installwizard?
MFG
oli
diese adresse wird als parameter bei einer anderen funktion benutzt (quasi ein CALLBACK)
Das Problem hat sich inzwischen gelöst. ich habe das ganze zeug in eine separate "unmanaged" cpp-datei ausgelagert.
Hi,
ich habe das Problem schon in einigen Newsgroups geschildert - bisher jedoch ohne Erfolg. Dieses Forum ist quasi meine letzte Hoffnung.
Auf einigen Rechnern werden bestimmte Cursor nicht dargestellt (z.B. Hand). Der Maus-Cursor verschwindet einfach. Mein Kollege rechts neben mir hat einen Baugleichen Rechner mit gleicher Windows-, Framework- und Grafik-Treiber-Version. Bei ihm verwschwindet der Cursor bei mir nicht.
Das passiert auch bei einigen anderen Rechnern. Bisher konnte ich aber kein Muster erkennen.
Hat jemand vielleicht eine Idee?
Man könnte vermuten dEUs und ich sind eine Person nach diesen Worten:
Ah, ok. Vielen Dank.
Bin noch etwas neu in der C#-Programmierung und dachte, man muss immer mit = new Type() arbeiten.
gilt exakt für mich
Vielleicht nochmal extra für dich:
wenig Popularität wenig Bücher wenig Selektion wenig bis keine guten Bücher
Du kannst selbstverständlich anderer Meinung sein, aber wenn du diese darstellen willst, dann bitte anders.
ich habe nicht behauptet, das es ein Problem oder Falsch ist die dlls zu importieren. Ich habe nur gesagt dass ich das nicht machen würde. Was du machst ist mir ja egal.
Hi
da bin ich wieder !!!
Es hat sich erledigt, ich habe eine Deutsche wersion des Frameworks installiert und in den Projekteigenschaften das unter Tool->Options-> in den Optionen die Eigenschaften Debugging bei Common Language Runtime, Native und Script markiert, System neu gestartet und dann funktioniert es auf einmal!!
Keine Ahnung warum !!!
Gruß
Mirsad