Mehr

Warum wird das Kontextmenü nicht angezeigt?

Warum wird das Kontextmenü nicht angezeigt?


Ich versuche, ein Kontextmenü für arcmap desktop 10.2 zu erstellen und anzuzeigen. Ich habe die Schritte im Link von esri befolgt, der erklärt, dass ich OnContextMenu überschreiben muss. Ich bin mir nicht sicher ob ich das richtig mache und brauche eure Hilfe.

Ich habe den gleichen Code wie auf der Webseite erhalten und in mein Projekt eingefügt, aber nichts passiert, wenn ich mit der rechten Maustaste auf die Karte klicke. Ich bin mir sicher, dass ich etwas vermisse... muss ich das Kontextmenü irgendwo registrieren?

Ich bin ein Neuling, das ist aus meinen anderen Fragen offensichtlich, ich lese viel, aber es wird sehr verwirrend, also brauche ich jemanden, der die Dinge ein wenig vereinfacht.

Hier ist mein Verständnis von dem, was ich tun sollte, und korrigiere mich, wo ich falsch liege. Gemäß dem unten angegebenen Link gibt es zwei Möglichkeiten, ein Kontextmenü anzuzeigen. Entweder durch Implementieren von ITool.OnContextMenu, falls das Menü für ein bestimmtes Tool angezeigt werden soll, oder durch Implementieren von IDocumentEvents.OnContextMenu, wodurch in beiden Fällen das Ereignis OnContextMenu automatisch ausgelöst wird, wenn der Benutzer mit der rechten Maustaste auf die aktive Ansicht klickt.

Die Implementierung für das Ereignis ist auch in dem Link enthalten, den ich kopiert und in VStudio eingefügt habe… jetzt kommt der Teil, der mich verwirrt. Wie bringe ich das Ereignis zum Auslösen?. Wenn das Projekt arcmap startet, klicke ich mit der rechten Maustaste auf die aktive Ansicht, aber es wird kein Menü angezeigt. Muss ich das Menü mit Windows Forms selbst erstellen?

http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#//0001000004p9000000

Update, hier ist ein Teil des Codes, ich möchte in diesem Teil die Ereignisse OnMouseDown und OnContextMenu anhören

öffentliche Klasse PTCExternalComponent : BaseTool, ISchematicXmlGenerate, ISchematicXmlUpdate{ private Application _application; public void GenerateXmlData(string diagramName, string diagramClassName, ref-Objekt xmlSource, ref bool Cancel) { Cancel = false; try { var app = NEAutomation2.Application.Instance().IApplication; var nameofActivetool = app.CurrentTool.Command.Name; var activeTool = (ITool)app.CurrentTool; var toolIndex = app.CurrentTool.Index; //((IToolbarControlEvents).OnItemClick(ss); // activeTool.OnMouseDown(0, 0, 0, 0); var diagramGenerator = DiagramGenerationFactory.GetDiagramGenerator( diagramName, diagramClassName); if (diagramGenerator == null) { Logger.ShowMessageDialog ("Kein Diagrammgenerator für Diagrammtyp [" + diagramClassName + "]", true); } else { bool abgebrochen; var diagram = diagramGenerator.GenerateDiagram(out cancelled); var sxg = new SchematicXmlGenerator(diagram, false) ; // zum Debuggen if (diagram != null) xmlSource = sxg.GenerateDiagramXml(); } } catch (Exception e) { Logger.ShowMessageDialog( "Eine Ausnahme ist aufgetreten beim Versuch, ein Diagramm vom Typ " + diagramClassName + " zu generieren; Exception " + e.Message, true); ProgressTrackingUtility.HideProgressBar(); } } public override void OnMouseDown(int button, int shift, int i, int i1) { // mach hier Sachen } public override bool OnContextMenu(int x, int y) { //hier Sachen machen throw new NotImplementedException(); } object ISchematicXmlGenerate.Applica tionHook { get { return _application as AppRef; } set { _application = Wert als Anwendung; } } Rest des Codes…

Die Implementierung von BaseTool ist die alt Es gibt einige Dinge, die Sie tun müssen, damit ArcMap das Werkzeug "sieht". Ich würde dringend empfehlen Erstellen eines neuen Projekts, das als ArcGis-Add-In beginnt. Dies ist eine verfügbare Option, wenn Sie das ArcObjects SDK installiert haben. Dies erledigt den schwierigen Teil für Sie. Wenn Sie sich dafür entscheiden, ist es viel einfacher, da alles vorverdrahtet ist und Sie implementieren müssenISchematicXmlGenerate, ISchematicXmlUpdateaufESRI.ArcGIS.Desktop.AddIns.Tool.

Wenn Sie bei dem bleiben möchten, was Sie haben, kann ich Ihnen ein Beispiel für Funktionen aus einem meiner alten Tools namens . gebenEddie_Livesin demNamensraum HandiToolBar:

[Guid("e272d412-85b4-4c5c-bfcf-33dee1dd3003")] [ClassInterface(ClassInterfaceType.None)] [ProgId("HandiToolBar.Eddie_Lives")] öffentliche versiegelte Klasse Eddie_Lives : BaseTool { #region COM-Registrierungsfunktion(en) [ ComRegisterFunction()] [ComVisible(false)] static void RegisterFunction(Type registerType) { // Erforderlich für ArcGIS Component Category Registrar-Unterstützung ArcGISCategoryRegistration(registerType); } [ComUnregisterFunction()] [ComVisible(false)] static void UnregisterFunction(Type registerType) { // Erforderlich für ArcGIS Component Category Registrar-Unterstützung ArcGISCategoryUnregistration(registerType); } #region ArcGIS-Komponentenkategorie Vom Registrar generierter Code ///  /// Erforderliche Methode für die Registrierung der ArcGIS-Komponentenkategorie - /// Ändern Sie den Inhalt dieser Methode nicht mit dem Code-Editor. ///  privat statisch void ArcGISCategoryRegistration(Type registerType) { string regKey = string.Format("HKEY_CLASSES_ROOTCLSID{{{0}}}", registerType.GUID); MxCommands.Register(regKey); } ///  /// Erforderliche Methode zum Aufheben der Registrierung der ArcGIS-Komponentenkategorie - /// Ändern Sie den Inhalt dieser Methode nicht mit dem Code-Editor. ///  privat statisch void ArcGISCategoryUnregistration(Type registerType) { string regKey = string.Format("HKEY_CLASSES_ROOTCLSID{{{0}}}", registerType.GUID); MxCommands.Unregister(regKey); } #endregion #endregion

Natürlich müssen Sie Ihre eigene GUID generieren, da diese bereits vergeben ist.

Dann im Klasseninitialisierer:

public Eddie_Lives() { base.m_category = "meine Tools"; //lokalisierbarer Text base.m_caption = "Eddie, der Editor."; //lokalisierbarer Text base.m_message = "Öffnet das Eddie-Editor-Interface."; //lokalisierbarer Text base.m_toolTip = "Öffnet das Eddie-Editor-Interface."; //lokalisierbarer Text base.m_name = "Eddie Lives!"; //eindeutige ID, nicht lokalisierbar (z.B. "MyCategory_ArcMapTool") try { // // TODO: ggf. Ressourcennamen ändern // //string bitmapResourceName = GetType().Name + ".bmp"; base.m_bitmap = Properties.Resources.Eddie.ToBitmap(); //base.m_cursor = new System.Windows.Forms.Cursor(GetType(), GetType().Name + ".cur"); } catch (Exception ex) { System.Diagnostics.Trace.WriteLine(ex.Message, "Ungültige Bitmap"); } }

base ist eine Eigenschaft des BaseTools, das Sie implementieren.

Dann in der überschriebenen Klasse OnCreate:

public override void OnCreate(object Hook) { m_application = Hook als IApplication; //Deaktivieren, wenn es sich nicht um ArcMap handelt if (Hook ist IMxApplication) { base.m_enabled = true; // das Werkzeug aktivieren

Nachdem Sie durch all diese Reifen gesprungen sind, können Sie die kompilierte DLL hinzufügen (nachdem sie mit . registriert wurde)C:Programme (x86)Gemeinsame DateienArcGISinESRIRegAsm.exe) zu ArcMap und das Werkzeug wird im Dialogfeld "Anpassen" verfügbar sein. Platzieren Sie es auf einer Symbolleiste und Ihre Ereignisse sollten ausgelöst werden. Com-Typen werden durch Add-Ins ersetzt, was bedeutet, dass dieser Code vor Ihnen definitiv eine begrenzte Lebensdauer hat brauchen um ein Add-In zu erstellen, damit es funktioniert.


Wie entferne ich ein Element aus meinem Kontextmenü?

Ich habe ein Programm namens Aptana Studio 3 installiert. Es wurde meinem Kontextmenü ein Menüelement hinzugefügt (wenn ich mit der rechten Maustaste klicke, sehe ich eine Option "Aptana Studio"). Wie kann ich das manuell aus meinem Menü entfernen?

Ich habe hoch und tief gesucht und kann keine Möglichkeit finden, das Aptana-Zeug aus meinem Firefox zu entfernen. Vielleicht liegt es daran, dass ich Firefox 4 verwende. Was ich getan habe, ist, dass ich in

Ich habe dann nach Aptana gesucht und es sind 3 Artikel aufgelistet. Ich habe einen Screenshot angehängt.

Meine Frage ist jetzt, wie ich diese Elemente entfernen kann, da dies möglicherweise die Option aus meinem Menü entfernt.


Hängt davon ab, wie Sie einen Kontextwechsel definieren.

Im traditionellen Sinne bedeutet es, alle Register/CPU-Status zu speichern, den mmu-Status zu ändern und dann woanders hinzugehen, um den Anruf zu beantworten und nach Abschluss alles wieder herzustellen.

Es ist nicht erforderlich, alle Zustände für alle Operationen zu speichern. Zum Beispiel muss eine Mutex-Sperre überprüfen, ob kein anderer Thread/Prozess den Mutex verwendet, und ihn dann als markiert setzen.

In einem Einzelprozessor cpu können Sie dies tun, indem Sie sicherstellen, dass während des Mutex-Vorgangs keine Interrupts auftreten, und dann wissen Sie, dass Sie der einzige Punkt sind, der den Mutex an diesem Punkt berührt, indem Sie den Punkt passieren, an dem Interrupts deaktiviert werden. Der einzige Weg, wie ein anderer Thread sich mitten in der Sperroperation befinden könnte, besteht darin, Interrupts wieder zu aktivieren oder den Kontext zu wechseln, weil der Mutex bereits verwendet wurde. Beide Szenarien und wo im Code sie auftreten können, unterliegen der vollen Kontrolle des Kernel-Codes.

Abgesehen davon ist das Speichern des Kontexts nicht so teuer. Der teurere Teil sind alle Cache-Fehlschläge, die auftreten, wenn der Befehlsfluss in den kalten Speicher geht.


Es gibt verschiedene Orte, an denen ein Kontextmenü ausgelöst werden kann (wenn Sie mit der rechten Maustaste auf einen Ordner klicken, erhalten Sie andere Optionen als wenn Sie mit der rechten Maustaste auf eine Datei klicken). Die Typvariable steuert dieses Verhalten in der Bibliothek, und Sie können auf diese Tabelle verweisen, um den Typ zu bestimmen:

Name Ort Aktion
DATEIEN HKEY_CURRENT_USERSoftwareClasses*shell Öffnet in einer Datei
VERZEICHNIS HKEY_CURRENT_USERSoftwareClassesDirectoryshell Öffnet in einem Verzeichnis
DIRECTORY_BACKGROUND HKEY_CURRENT_USERSoftwareClassesDirectoryBackgroundshell Öffnet im Hintergrund des Verzeichnisses
ANTRIEB HKEY_CURRENT_USERSoftwareClassesLaufwerkShell Öffnet auf den Laufwerken (denken Sie an USBs)


1 Antwort 1

Sie können (einen Teil des) Kontexts, in dem Sie sich befinden, herausfinden, indem Sie:

Dies allein hilft Ihnen zu bestimmen, wo Sie sich befinden (kontextuell). Zu bestimmen, wo Sie sein müssen, ist eine andere Geschichte. Jeder Vorgang, den Sie in Blender ausführen, erfordert, dass Sie sich im richtigen Kontext befinden. Ich stelle mir den Kontext so vor, in welchem ​​Fenster (Kontext) findet die Operation statt, wenn Sie die Aktion durch Klicken mit der Maus ausführen? Möglicherweise müssen Sie sich auch auf die API oder andere Informationen beziehen, aber eine Sache, die mir geholfen hat, ist zu wissen, welche Kontexte existieren!

Und eine einfache Möglichkeit, das herauszufinden, ist:

Dies wirft einen nützlichen Fehler:

TypeError: bpy_struct: item.attr = val: enum "?" nicht gefunden in ('VIEW_3D', 'TIMELINE', 'GRAPH_EDITOR', 'DOPESHEET_EDITOR', 'NLA_EDITOR', 'IMAGE_EDITOR', 'SEQUENCE_EDITOR', 'CLIP_EDITOR', 'TEXT_EDITOR', 'NODE'LOGI ', 'OUTLINER', 'BENUTZER)

Nun, es gibt Ihre Kontexttypen . . .

Ich weiß nicht, ob das Ihre Frage erfolgreich beantwortet hat, da ich noch keine Plugins schreibe, aber es könnte etwas enthalten, das Ihnen hilft, das aktuelle Problem zu überwinden.


2 Antworten 2

Hier ist der Kontext der Ratschläge, die ich zuvor für dieses Zitat gegeben habe

Um zu vermeiden, dass ich Dinge bekomme, die ich nicht wollte, habe ich die KDE-Apps explizit installiert.

pacman -S plasma-workspace plasma-desktop systemsettings kwin kdelibs kdebase-kdialog kde-gtk-config systemd-kcm kdesu krename kate kwrite retext kdegraphics-okular xdg-utils plasma-nm drkonqi kdeplasma-addons kscreen ksshaskpass ksysguard user-kwallet-pa Firefox kompare kdiff3 gtk3 gimp gimp-ufraw xsane xsane-gimp gwenview qt5-imageformats kimageformats kcharselect kcolorchooser kdebase-keditbookmarks lib gnupg kdeutils-kgpg gnome-themes-standard xclip print-manager

Die explizite Installation von Paketen wie diese würde Ihr System mit veralteten Paketen zurücklassen, die Ihnen in Zukunft Probleme bereiten könnten. z.B. hier in deinem Fall

kdebase kdegraphics-okular kdebase-keditbookmarks kdeutils-kdf kdemultimedia-kmixkdebase-keditbookmarks kdeutils-kdf kdemultimedia-kmix kdebase-lib kdeutils-kgp

werden durch neuere Pakete ersetzt.

Um KDE richtig zu installieren, sollten Sie also entweder -Meta Pakete oder Gruppen. Ich empfehle dringend den -meta-Paketansatz, da Gruppen die Installation von Paketen nicht erzwingen können, wenn sie erweitert oder geändert werden.

Wenn Sie darauf bestehen, Ihr System zu optimieren, verwenden Sie die Gruppen und Sie müssen die Reinigung selbst durchführen, aber immer noch viel besser als die sehr niedrige Stufe, die Sie derzeit tun.


Daten allein sind nur Rauschen.

Am unteren Ende der Pyramide befinden sich alle Ihre Rohdaten – Unmengen von unverarbeiteten, computerfreundlichen Fakten, die in Datenbanken und Tabellenkalkulationen gespeichert sind. Es ist zwar eine potenzielle Goldmine, aber jede Mine enthält weit mehr Schlacke als Erz.

In einer Zeit, in der es nur zwei Tage dauert, um so viele Daten zu generieren, wie die Menschheit von den Anfängen der Zivilisation bis 2003 angehäuft hat, drohen viele Unternehmen unter dem Gewicht ihrer eigenen Daten zu ersticken und es fehlt ihnen an Mitarbeitern mit den fortgeschrittenen Datenanalysefähigkeiten, um mein es.

&ldquoDaten werden für die Entscheidungsfindung im Unternehmen immer wichtiger und werden auf Personen mit geringer oder keiner Ausbildung in der Datennutzung und -interpretation ausgeweitet&rdquo, sagt Unternehmensberater Barry Devlin.

Daten kommen heute in verschiedenen Formaten an, die dann in mehreren komplexen Systemen gespeichert oder auf verschiedene Abteilungen verteilt werden. Aus diesem Grund sagen drei von vier Unternehmen, dass sie datengesteuert sein wollen, aber weniger als 30 Prozent sind darin tatsächlich erfolgreich.

Rohdaten haben ohne Kontext einen begrenzten geschäftlichen Wert, da sie den Mitarbeitern nicht den Hintergrund liefern, den sie benötigen, um zu verstehen, was es ist, wann es passiert ist, wo es passiert ist, was sonst noch passiert ist und so weiter. Wenn Sie Ihre Mitarbeiter mit Rohdaten bewerfen, können sie ihr volles Potenzial ausschöpfen – Daten müssen für die Analyse verarbeitet werden, sonst bleiben sie weitgehend nutzlos.


Antworten Ƒ) 

Hallo AryaFathi
Grüße! Ich bin Vijay, ein unabhängiger Berater. Führen Sie zunächst die folgenden Schritte aus und lassen Sie es mich wissen (Sie müssen möglicherweise den letzten Punkt ausführen)

1. STRG+UMSCHALT+ESC um den Task-Manager zu starten
Suchen Sie Windows Explorer auf der Registerkarte Prozesse > Rechtsklick > Aufgabe beenden
Jetzt oben Datei > Neue Aufgabe ausführen > Explorer.exe einfügen und Enter

3. Lesen Sie unten die Microsoft-Hilfe
Beheben Sie den Datei-Explorer, wenn er nicht geöffnet oder gestartet wird – https://support.microsoft.com/en-us/help/408737.

4. Die Ursache für dieses Problem können Shell-Erweiterungen von Drittanbietern sein. Um die Tätererweiterung loszuwerden, können Sie ShellExView herunterladen. ShellExView ist eine kostenlose Drittanbieteranwendung, mit der Sie alle Shell-Erweiterungen auf Ihrem Computer verwalten, deaktivieren und aktivieren können

Starten Sie ShellExView, indem Sie mit der rechten Maustaste auf die Anwendung namens shexview klicken und auf Als Administrator ausführen klicken

Sie erhalten eine Liste aller auf Ihrem Computer installierten Shell-Erweiterungen, sobald das Programm mit der Kompilierung fertig ist. Wenn Sie die Liste sehen, klicken Sie auf Optionen > Nach Nebenstellentyp filtern > Kontextmenü.

In der neu zusammengestellten Liste sehen Sie Einträge, die rosa hinterlegt sind. Alle diese Einträge sind Shell-Erweiterungen, die von Drittanbieteranwendungen auf Ihrem Computer installiert werden.

Halten Sie die Strg-Taste gedrückt und klicken Sie auf jeden der „rosa Hintergrund“-Einträge, um sie auszuwählen.

Sobald alle Einträge mit „rosafarbenem Hintergrund“ ausgewählt wurden, klicken Sie mit der rechten Maustaste darauf und klicken Sie auf Ausgewählte Elemente deaktivieren, um sie alle zu deaktivieren.

Klicken Sie auf Optionen > Explorer neu starten. Versuchen Sie, mit der rechten Maustaste auf Ihren Desktop zu klicken, und der Datei-Explorer sollte nicht mehr abstürzen.

Sobald Sie das Problem behoben haben, müssen Sie als nächstes den Schuldigen identifizieren und ihn endgültig deaktivieren. Dazu müssen Sie:

Klicken Sie mit der rechten Maustaste auf eine der Shell-Erweiterungen mit „rosafarbenem Hintergrund“, die Sie deaktiviert haben, und klicken Sie auf Ausgewählte Elemente aktivieren, um sie zu aktivieren.

Klicken Sie auf Optionen > Explorer neu starten, klicken Sie mit der rechten Maustaste auf Ihren Desktop und prüfen Sie, ob Datei-Explorer

Wenn der Datei-Explorer nicht abstürzt, wiederholen Sie die Schritte 1 und 2 und aktivieren Sie jedes Mal eine andere Shell-Erweiterung eines Drittanbieters, bis der Datei-Explorer abstürzt und das Problem erneut auftritt.

Die Shell-Erweiterung eines Drittanbieters, die Sie kurz vor der Rückkehr des Problems aktiviert haben, ist der Schuldige. Sie können alle Shell-Erweiterungen "rosa Hintergrund" aktivieren, die Sie deaktiviert haben, mit Ausnahme dieser, da diese der Übeltäter ist. Lassen Sie diese Shell-Erweiterung für immer deaktiviert – es wird sogar empfohlen, die Drittanbieteranwendung zu deinstallieren, die diese Shell-Erweiterung auf Ihrem Computer installiert hat. (Quelle - https://appuals.com/file-explorer-crashing-afte. )

5. Wenn nichts funktioniert, würde ich Ihnen empfehlen, ein Windows 10-Reparatur-Upgrade durchzuführen. Das Reparatur-Upgrade behebt alle Windows-Fehler und behält alle Dateien, Anwendungen und Einstellungen bei. (Sie werden keine Daten verlieren, während eine Sicherung eine gute Idee ist) Nachfolgend finden Sie eine gute Anleitung zur Durchführung eines Reparatur-Upgrades

Lassen Sie es mich wissen, wenn Sie hierzu weitere Hilfe benötigen. Wir helfen Ihnen gerne weiter.

Haftungsausschluss – Dies ist eine Nicht-Microsoft-Website. Die Seite scheint genaue und sichere Informationen bereitzustellen. Achten Sie auf Anzeigen auf der Website, die möglicherweise Produkte bewerben, die häufig als PUP (potenziell unerwünschte Produkte) klassifiziert werden. Informieren Sie sich gründlich über alle auf der Website beworbenen Produkte, bevor Sie sich entscheiden, sie herunterzuladen und zu installieren.


Vorhersage sagt das einfach in Zukunft wird etwas passieren. Dies kann auf wissenschaftlichen Erkenntnissen, Erfahrungen oder etwas anderem beruhen.

Wissenschaftler haben das Erdbeben vor einem Jahrzehnt vorhergesagt.

Er sagte voraus, dass er den Test nicht bestehen würde, weil er die Hälfte der Fragen nicht beantwortete.

Die Wahrsagerin sagte voraus, dass er ein Wunder erleben würde.

Man könnte sagen, wie dieser Artikel es tut

Dieser Effekt wird als Gravitationslinseneffekt bezeichnet und ist einer der Vorhersagen der Allgemeinen Relativitätstheorie von Albert Einstein.

Es gibt keinen Humbug- oder New-Age-Geschmack, der an wissenschaftliche Vorhersagen knüpft. Sie mögen sich als falsch erweisen, unterliegen aber immer der wissenschaftlichen Methode.

Nicht nur kann Sie verwenden es, aber "Vorhersage" ist das übliche Wort, um eine Implikation einer Theorie zu beschreiben - in der Zukunft oder in der Vergangenheit.

Das Wort "vorhersagen" wird in der Wissenschaft routinemäßig verwendet, wenn auch mit einer etwas anderen Bedeutung als die herkömmliche Verwendung.

Wenn wir "vorhersagen" sagen, meinen wir normalerweise, dass Sie glauben, dass in Zukunft etwas passieren wird. Dies könnte auf einer Art begründeter Analyse beruhen: "Der bekannte Ökonom Dr. Jones prognostiziert, dass der Aktienmarkt bis August um 500 Punkte steigen wird". Oder es könnte übernatürlich sein: "Der Prophet Daniel sagte den Fall Babylons durch göttliche Offenbarung voraus."

Das Wort kann mit dieser Bedeutung in der Wissenschaft verwendet werden. "Der Geologe hat ein Erdbeben vorhergesagt."

Aber es kann auch verwendet werden, um zu bedeuten, dass etwas eine Implikation einer Theorie ist. "Eine Vorhersage von Einsteins Relativitätstheorie ist, dass jeder Versuch, die Lichtgeschwindigkeit im Vakuum zu messen, unabhängig von den relativen Bewegungen von Quelle und Beobachter immer zum gleichen Ergebnis führt."

Ich sage, dass dies etwas anders ist als die konventionelle Definition, weil der Wissenschaftler nicht unbedingt sagt, dass er die Vorhersage für wahr hält. Er sagt, WENN die Theorie wahr ist, DANN wird dieses Ergebnis eintreten. Im wirklichen Leben formulieren Wissenschaftler oft Theorien, in die sie wenig oder kein Vertrauen haben, nur um einen Standard zum Testen zu haben. Ein Wissenschaftler könnte zum Beispiel sagen, ich habe keine Ahnung, ob ein Magnetfeld diese chemische Reaktion beeinflusst. Lassen Sie uns also die Theorie formulieren, dass die Geschwindigkeit, mit der sich der Niederschlag bildet, von Magnetfeldern nicht beeinflusst wird. Wir könnten diese Theorie testen, indem wir usw.

Wissenschaftler sprechen routinemäßig über die "Vorhersagen einer Theorie", dh welche experimentellen Ergebnisse wir erwarten sollten, um zu sehen, ob eine Theorie wahr ist. Dies wird häufig als Test für die Gültigkeit einer Theorie verwendet: Wenn sich bei der Durchführung der Experimente die Vorhersagen als falsch erweisen, muss die Theorie modifiziert oder verworfen werden. Wenn sich die Vorhersagen als wahr herausstellen, kann die Theorie wahr sein. (Wir können nicht sagen, dass die Theorie als wahr bewiesen ist: Es kann sein, dass sie nur in einigen Fällen wahr zu sein scheint.) Wenn wir auf der Grundlage einer Theorie keine überprüfbaren Vorhersagen treffen können, wird diese Theorie als schwach bezeichnet. Es wird oft gesagt, dass das und das keine legitime wissenschaftliche Theorie ist, weil sie zu keinen überprüfbaren Vorhersagen führt.

Ich sage, dies unterscheidet sich von der herkömmlichen Definition. Jemand könnte antworten, dass die Menschen oft an Vorhersagen zweifeln, dass zum Beispiel viele Menschen an den Vorhersagen der Hellseher zweifeln. Der Unterschied besteht jedoch darin, dass beim herkömmlichen Gebrauch die Person, die die Vorhersage trifft, glaubt, dass sie wahr ist. (Oder behauptet zumindest zu glauben, dass es wahr ist. Selbst der schlimmste Scharlatan-Medium sagt nicht: "Ich glaube nicht wirklich, dass diese Vorhersage wahr ist. Es ist nur etwas, das ich zum Spaß erfunden habe.")


Wie der Kontext das IoT von intelligenten Geräten zu einer intelligenten Community bewegt

"Wenn eine gemeinsame Sprache entwickelt wird, damit Geräte und Anwendungen ohne menschliches Zutun miteinander kommunizieren können, werden sich die Möglichkeiten des IoT vervielfachen."

Angesichts der jüngsten Explosion von Nachrichten und Updates zum Internet der Dinge (IoT) und seinem noch nicht vollständig geklärten Potenzial, die Art und Weise, wie die Welt funktioniert, drastisch zu verändern, könnten die Menschen glauben, dass diese Technologie kaum auf dem Markt angekommen ist Technologielandschaft.

Sensoren und Monitore sind jedoch seit Jahrzehnten verfügbar und werden häufig eingesetzt, um effizientere Systeme in industriellen Lieferketten zu erreichen. Erst jetzt wird es aufgrund der Größe und Vernetzung der Geräte tatsächlich als "Internet der Dinge" bezeichnet.

Mit dieser Verschiebung werden also optimierte Standards und die Fähigkeit von Maschinen benötigt, Kontext aus einem kontinuierlichen Datenstrom abzuleiten. Da viele Interessengruppen jetzt Technologieplattformen entwickeln, um das IoT zu nutzen, stehen sie an einem Wendepunkt.

Enorme Daten

Laut der Analystenfirma IDC werden die weltweiten Ausgaben für das IoT im Jahr 2019 fast 1,3 Milliarden US-Dollar erreichen, gegenüber 698,6 Milliarden US-Dollar im Jahr 2015. Dieses Wachstum findet statt, weil die Schwellenwerte gesenkt wurden, da Geräte billiger, praktischer und leistungsfähiger werden.

Im Zeitalter von künstlicher Intelligenz, algorithmisch gesteuerter Softwareleistung und Big Data sind die Dinge intelligenter geworden. Durch die Kombination all dieser Faktoren wird eine enorme Datenmenge generiert, doch Unternehmen werden dadurch gebremst, dass sie nicht in der Lage sind, aus diesen Daten nützliche Erkenntnisse zu gewinnen.

Aber das IoT beweist in einigen Bereichen seine Stärke. Zu den ersten florierenden Gebieten gehörten Sensoren zur Bestimmung von Wettermustern und Verkehrssensoren zur Überwachung von Geschwindigkeit und Verkehrsdichte und zur Unterstützung der Reiseplanung.

Darüber hinaus werden in der Landwirtschaft und Lebensmittelindustrie häufig RFID-Tags (Radio Frequency Identification) für Nutztiere verwendet. Obwohl viele dieser Initiativen geografisch begrenzt sind, haben sie ein angemessenes Maß an Standardisierung erfahren und dies war ein wichtiger Faktor für den Fortschritt.

Gemeinschaften der Dinge

Der nächste Schritt besteht darin, diese isolierten Schemata zu Gemeinschaften von Dingen zusammenzufassen. Damit dies jedoch Realität wird, muss noch mehr daran gearbeitet werden, wie Communities und die darin enthaltenen Geräte interagieren und wie Informationen ausgetauscht werden.

Da nun neue breitere, standardisiertere Plattformen entstehen, werden Unternehmen schnell an einen Punkt gelangen, an dem umsetzbare Erkenntnisse aus den Informationsströmen gewonnen werden können, die ihnen das IoT liefert. Dies erfordert, dass Kontext aus Daten und Interaktionen abgeleitet wird.

Ein Beispiel dafür, warum Kontext so wichtig ist, ist die intelligente Kennzeichnung von Kleidung. Mit Smart Labels könnte ein Kleidungsstück Daten von seinem Etikett an eine Waschmaschine weitergeben, damit die Waschmaschine je nach Beschaffenheit die richtige Einstellung auswählen kann. Dies unterstreicht die Notwendigkeit, dass Geräte und Dinge in der Lage sind, Informationen &ndash oder Kontext &ndash untereinander auszutauschen.

Maschinelles Lernen

Damit sich das IoT verbreitet, müssen Maschinen und Geräte in der Lage sein, autonom Entscheidungen zu treffen. Dies hängt von ihrer Fähigkeit ab, Kontext durch maschinelles Lernen abzuleiten. Wenn dies erreicht ist, kann der Mensch aus der Gleichung herausgenommen werden, was den Wert und die Kosteneffizienz steigert.

In der Landwirtschaft können Sensoren beispielsweise bereits Kontext von an Tieren angebrachten RFID-Tags ableiten, um Besitzer zu warnen, wenn ein Tier die Weide verlassen hat, wodurch der Zeitaufwand für die Überwachung der Herden reduziert wird.

Wenn dies in der Fertigungs-, Energie- sowie Öl- und Gasindustrie weiter ausgereift ist, können Sensoren und andere Geräte, die Daten sammeln, Informationen korrelieren, um Lagerbestände besser zu verwalten und die vorbeugende Wartung teurer Geräte ohne Vor-Ort-Mitarbeiter zu ermöglichen.

Darüber hinaus würden Städte intelligenter werden und die derzeitigen isolierten Systeme ersetzen, die nicht effizient miteinander kommunizieren können und die integrierte Verwaltung von Diensten blockieren.

All dies hängt vom Kontext ab und ermöglicht es Maschinen und Geräten, die Bedeutung von Datenströmen aus unterschiedlichen Systemen abzuleiten. Wenn eine gemeinsame Sprache entwickelt wird, damit Geräte und Anwendungen ohne menschliches Zutun miteinander kommunizieren können, werden die Möglichkeiten des IoT vervielfacht.

Wenn dies geschieht, wird die Gesellschaft in der Lage sein, über das Konzept der intelligenten Verbrauchergeräte hinaus zur intelligenten Gemeinschaft zu gelangen.

Von Giri Fox, Director of Technical Services, Rackspace